点亮墨水屏
我这里用的是大连佳显的GDEY29Z94,资料戳我
瞅瞅官方例程
官方使用的是epd1in54_GDEH0154D27和epd1in54_GDEH0154D67,同样是大连佳显的,所以我可以省去很多驱动,最主要的就是发送命令和发送数据,如下
local function sendCommand(data)
--log.info("epd1in45.sendCommand",data)
setDC(0)
spi.send(spi.SPI_1,string.char(data))
end
local function sendData(data)
--log.info("epd1in45.sendData",data)
setDC(1)
spi.send(spi.SPI_1,string.char(data))
end
其他的硬件驱动也是已经好的
--电压域
pmd.ldoset(15,pmd.LDO_VLCD)
log.info("spi.setup",spi.setup(spi.SPI_1,0,0,8,13000000,0,0))
local function getBusyFnc(msg)
log.info("Gpio.getBusyFnc",msg)
if msg==cpu.INT_GPIO_POSEDGE then--上升沿中断
--不动作
else--下降沿中断
sys.publish("BUSY_DOWN")
end
end
--初始化三个控制引脚
local getBusy = pins.setup(7,getBusyFnc)
local setRST = pins.setup(12,1)
local setDC = pins.setup(18,1)
-- Display resolution
local EPD_WIDTH = 200
local EPD_HEIGHT = 200
local function wait()
while getBusy() == 1 do -- 0: idle, 1: busy
sys.waitUntil("BUSY_DOWN",5000)
end
end
setDC(1)