AirFONTS_1000.lua 1.4 KB

123456789101112131415161718192021222324252627282930313233343536
  1. local AirFONTS_1000 = {}
  2. --初始化AirFONTS_1000的SPI配置
  3. --AirFONTS_1000通过SPI接口(SCK CS MOSI MISO)和主控相连
  4. --主控设备为SPI主设备,AirFONTS_1000为SPI从设备
  5. --spi_id:number类型;
  6. -- 表示主设备的SPI ID;
  7. -- 取值范围:主控产品上有效的SPI ID值,例如Air8101上的取值范围为0和1;
  8. -- 如果没有传入此参数或者传入了nil,则使用默认值0;
  9. --spi_cs:number类型;
  10. -- 表示cs引脚的GPIO ID;
  11. -- 取值范围:主控产品上有效的GPIO ID值,例如Air8101上的取值范围为0到9,12,14到55;
  12. -- 如果没有传入此参数或者传入了nil,则使用默认值8;
  13. --返回值:成功返回true,失败返回false
  14. function AirFONTS_1000.init(spi_id, spi_cs)
  15. --创建一个SPI设备对象
  16. AirFONTS_1000.spi_gtfont = spi.deviceSetup(spi_id or 0, spi_cs or 8, 0, 0, 8, 20*1000*1000, spi.MSB, 1, 0)
  17. log.error("AirFONTS_1000.init", "spi.deviceSetup", type(AirFONTS_1000.spi_gtfont))
  18. --检查SPI设备对象是否创建成功
  19. if type(AirFONTS_1000.spi_gtfont) ~= "userdata" then
  20. log.error("AirFONTS_1000.init", "spi.deviceSetup error", type(AirFONTS_1000.spi_gtfont))
  21. return false
  22. end
  23. --初始化矢量字库
  24. if not gtfont.init(AirFONTS_1000.spi_gtfont) then
  25. log.error("AirFONTS_1000.init", "gtfont.init error")
  26. return false
  27. end
  28. return true
  29. end
  30. return AirFONTS_1000