13 lines
371 B
Lua
13 lines
371 B
Lua
|
RK27XX.adc = {}
|
||
|
|
||
|
function RK27XX.adc.init()
|
||
|
-- setup ADC clock divider to reach max 1MHz
|
||
|
HW.SCU.DIVCON1.write(bit32.replace(HW.SCU.DIVCON1.read(), 49, 10, 8))
|
||
|
end
|
||
|
|
||
|
function RK27XX.adc.read(channel)
|
||
|
HW.ADC.CTRL.write(bit32.bor(bit32.lshift(1,4), bit32.lshift(1,3), bit32.band(channel,3)))
|
||
|
-- udelay(20)
|
||
|
return bit32.band(HW.ADC.DATA.read(), 0x3ff)
|
||
|
end
|