Просмотр исходного кода

update:elink demo 添加Air8101示例

PeakRacing 2 месяцев назад
Родитель
Сommit
2a4e48df4c
1 измененных файлов с 43 добавлено и 32 удалено
  1. 43 32
      olddemo/eink/main.lua

+ 43 - 32
olddemo/eink/main.lua

@@ -57,54 +57,65 @@ function eink_pin()
         return 0,1,10,8,22
     elseif string.find(rtos_bsp,"EC718") then
         return 0,10,14,8,15
+    elseif string.find(rtos_bsp,"Air8101") then
+        return 0,1,0,21,20
     else
         log.info("main", "bsp not support")
         return
     end
 end
 
-sys.taskInit(function()
-    local spi_id,pin_reset,pin_dc,pin_cs,pin_busy,mode = eink_pin() 
-    if spi_id then
-        eink.model(eink.MODEL_1in54)
-        spi.setup(spi_id,nil,0,0,8,20*1000*1000)
-        eink.setup(mode, spi_id,pin_busy,pin_reset,pin_dc,pin_cs)
-        eink.setWin(200, 200, 0)
-        --稍微等一会,免得墨水屏没初始化完成
-        sys.wait(100)
-        log.info("e-paper 1.54", "Testing Go")
-        eink.clear()
-        --画几条线一个圆
-        eink.circle(50, 100, 40)
-        eink.line(100, 20, 105, 180)
-        eink.line(100, 100, 180, 20)
-        eink.line(100, 100, 180, 180)
-        eink.show()
-        log.info("e-paper 1.54", "Testing End")
-    end
-end)
-
--- 2022.12.02后编译的固件推荐使用以下方法
--- local sysplus = require("sysplus")
 -- sys.taskInit(function()
 --     local spi_id,pin_reset,pin_dc,pin_cs,pin_busy,mode = eink_pin() 
 --     if spi_id then
---         eink.async(1)
+--         eink.model(eink.MODEL_1in54)
+--         -- spi.setup(spi_id,nil,0,0,8,20*1000*1000,spi.MSB,1,0)
+--         -- eink.setup(mode, spi_id,pin_busy,pin_reset,pin_dc,pin_cs)
+
 --         spi_eink = spi.deviceSetup(spi_id,pin_cs,0,0,8,20*1000*1000,spi.MSB,1,0)
---         eink.init(eink.MODEL_1in54,
---                 {port = "device",pin_dc = pin_dc, pin_busy = pin_busy,pin_rst = pin_reset},
---                 spi_eink)
+--         eink.setup(mode, spi_id,pin_busy,pin_reset,pin_dc,pin_cs,spi_eink)
+
 --         eink.setWin(200, 200, 0)
+--         -- --稍微等一会,免得墨水屏没初始化完成
 --         sys.wait(100)
-    
 --         log.info("e-paper 1.54", "Testing Go")
---         eink.clear().wait()
---         eink.print(30, 20, "LuatOS-AIR780E",0x00)
-    
---         eink.show().wait()
+--         eink.clear()
+--         --画几条线一个圆
+--         eink.circle(50, 100, 40)
+--         eink.line(100, 20, 105, 180)
+--         eink.line(100, 100, 180, 20)
+--         eink.line(100, 100, 180, 180)
+--         eink.show()
 --         log.info("e-paper 1.54", "Testing End")
 --     end
 -- end)
 
+-- 2022.12.02后编译的固件推荐使用以下方法
+local sysplus = require("sysplus")
+sys.taskInit(function()
+    local spi_id,pin_reset,pin_dc,pin_cs,pin_busy,mode = eink_pin() 
+    if spi_id then
+        eink.async(1)
+        -- spi.setup(spi_id,nil,0,0,8,20*1000*1000,spi.MSB,1,0)
+        -- eink.init(eink.MODEL_1in54,
+        --         {port = spi_id,pin_dc = pin_dc, pin_cs = pin_cs, pin_busy = pin_busy,pin_rst = pin_reset})
+
+        spi_eink = spi.deviceSetup(spi_id,pin_cs,0,0,8,20*1000*1000,spi.MSB,1,0)
+        eink.init(eink.MODEL_1in54,
+                {port = "device",pin_dc = pin_dc, pin_busy = pin_busy,pin_rst = pin_reset},
+                spi_eink)
+        eink.setWin(200, 200, 0)
+        sys.wait(100)
+    
+        log.info("e-paper 1.54", "Testing Go")
+        eink.clear().wait()
+        
+        eink.print(30, 20, "LuatOS-AIR780E",0x00)
+    
+        eink.show().wait()
+        log.info("e-paper 1.54", "Testing End")
+    end
+end)
+
 
 sys.run()