2009-03-21 19:59:49 +00:00
|
|
|
if pd.board() == "ET-STM32" then
|
|
|
|
adcchannels = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}
|
|
|
|
adcsmoothing = {4, 4, 4, 4, 16, 16, 16, 16, 32, 32, 32, 32, 64, 128, 64, 128}
|
|
|
|
numiter = 50
|
|
|
|
else
|
|
|
|
adcchannels = {0,1,2,3}
|
|
|
|
adcsmoothing = {4, 16, 64, 128}
|
|
|
|
numiter = 200
|
|
|
|
end
|
2009-01-21 23:41:04 +00:00
|
|
|
|
2009-02-16 23:01:32 +00:00
|
|
|
for i, v in ipairs(adcchannels) do
|
2009-02-24 07:58:10 +00:00
|
|
|
adc.setblocking(v,1)
|
2009-03-05 07:06:59 +00:00
|
|
|
adc.setclock(v,0)
|
2009-02-16 23:01:32 +00:00
|
|
|
adc.setsmoothing(v,adcsmoothing[i])
|
|
|
|
end
|
2009-01-27 20:49:45 +00:00
|
|
|
|
2009-02-16 23:01:32 +00:00
|
|
|
term.clrscr()
|
2009-02-16 07:37:28 +00:00
|
|
|
|
2009-02-16 23:01:32 +00:00
|
|
|
term.gotoxy(1,1)
|
|
|
|
term.putstr("ADC Status:")
|
|
|
|
term.gotoxy(1,3)
|
|
|
|
term.putstr(" CH SLEN RES")
|
|
|
|
term.gotoxy(1,#adcchannels+6)
|
|
|
|
term.putstr("Press ESC to exit.")
|
2009-01-21 23:41:04 +00:00
|
|
|
|
2009-02-16 23:01:32 +00:00
|
|
|
local adcvals = {}
|
2009-02-20 21:41:30 +00:00
|
|
|
local key, stime, etime, dtime
|
|
|
|
local sample = adc.sample
|
2009-04-22 15:36:50 +00:00
|
|
|
local insertsamples = adc.insertsamples
|
2009-02-20 21:41:30 +00:00
|
|
|
local tread = tmr.read
|
2009-03-25 16:17:19 +00:00
|
|
|
local tstart = tmr.start
|
2009-02-20 21:41:30 +00:00
|
|
|
local i, v
|
|
|
|
|
2009-02-16 23:01:32 +00:00
|
|
|
while true do
|
2009-03-25 16:17:19 +00:00
|
|
|
stime = tstart(0)
|
2009-03-21 19:59:49 +00:00
|
|
|
for j=1,numiter do
|
|
|
|
sample(adcchannels, 1)
|
|
|
|
for i, v in ipairs(adcchannels) do
|
2009-04-22 15:36:50 +00:00
|
|
|
insertsamples(v,adcvals,i,1)
|
2009-03-21 19:59:49 +00:00
|
|
|
end
|
2009-02-16 23:01:32 +00:00
|
|
|
end
|
2009-02-20 21:41:30 +00:00
|
|
|
etime = tread(0)
|
2009-03-21 19:59:49 +00:00
|
|
|
dtime = tmr.diff(0,etime,stime)/numiter
|
2009-01-27 20:49:45 +00:00
|
|
|
|
2009-03-21 19:59:49 +00:00
|
|
|
term.gotoxy(1,4)
|
|
|
|
for i, v in ipairs(adcchannels) do
|
2009-03-25 16:17:19 +00:00
|
|
|
term.putstr(string.format("ADC%02d (%03d): %04d\n", v, adcsmoothing[i],adcvals[i]))
|
2009-03-21 19:59:49 +00:00
|
|
|
term.gotoxy(1,i+4)
|
2009-01-27 20:49:45 +00:00
|
|
|
end
|
2009-03-21 19:59:49 +00:00
|
|
|
term.putstr(string.format("Tcyc: %06d (us)\n",dtime))
|
|
|
|
|
|
|
|
key = term.getch( term.NOWAIT )
|
2009-02-16 23:01:32 +00:00
|
|
|
if key == term.KC_ESC then break end
|
|
|
|
end
|
|
|
|
|
|
|
|
term.clrscr()
|
|
|
|
term.gotoxy( 1 , 1 )
|