DAC任意波形(V1.0).lua
(1.2 KB, 下载次数: 7)
代码如下:
--F01=波形发生1次,GenWave(1, 10) beep()
--F02=波形发生100次,GenWave(100,10) beep()
print("DAC任意波形发生器V1.0")
dac_on() --开启DAC电源
dac_volt(0) --设置DAC输出电压
beep()
--调节数组数据,数据和电压关系 255代表3300mv 0代表0v
function AdustTable()
for i = 1, #Talbe1, 1 do
Talbe1 = Talbe1 * 3300 / 255
end
end
--产生波形,n次数,us间隔
function GenWave(n, us)
local i
local j
local vout
local str
str = string.format("产生波形 %d 次, 样本间隔 %d us, 样本数 %d", n, us, #Talbe1)
print(str)
AdustTable() --对数组进行预处理
print(" - 开始输出")
for j = 1, n, 1 do
for i = 1, #Talbe1, 1 do
dac_volt(Talbe1)
delayus(us) --延迟us
end
end
print(" - 输出结束")
end
--波形数组
Talbe1 =
{
106,
106,
106,
106,
106,
106,
106,
106,
106,
106,
106,
106,
106,
106,
106,
106,
106,
106,
106,
106,
106,
106,
106,
106,
106,
154,
180,
175,
204,
220,
215,
250,
153,
50,
70,
90,
106,
112,
143,
75,
88,
99,
125,
135,
55 ,
203,
55 ,
89 ,
56 ,
76 ,
99 ,
12 ,
108,
80 ,
60 ,
70 ,
44 ,
55 ,
12 ,
11 ,
10 ,
80 ,
106,
106,
106,
106,
}
|