Air系列模块驱动lcd显示
特别说明:只适用于有spi接口的模块,推荐使用Air202和Air800
1.硬件连线:选择标准SPI协议,对应的LCD与模块之间连线为:
Air模块 LCD
GND——————- 地(GND)
SPI_CS————– 片选(CS)
SPI_CLK————- 时钟(SCL)
SPI_DO—————数据(SDA)
SPI_DI—————- 数据/命令选择(DC)
VDDIO————— 电源(VCC)
UART1_CTS——– 复位(RES)
注意:Air202早期的开发板,UART1的CTS和RTS的丝印反了,如果连接UART1_CTS屏幕不显示,则将RST连接到UART1_RTS
2.将ui demo添加到IDE中,在lcd.lua中选择对应的lcd芯片,将其他不用的注释掉。
--[[
模块名称:lcd
模块功能:lcd适配接口
模块最后修改时间:2017.08.17
]]--根据自己的lcd类型以及使用的spi引脚,打开下面的其中一个文件进行测试
--mono表示黑白屏,color表示彩屏
--standard_spi表示使用标准的SPI引脚,lcd_spi表示使用LCD专用的SPI引脚
require"mono_standard_spi_ssd1306"
--require"mono_standard_spi_st7567"
--require"color_standard_spi_st7735"
--require"mono_lcd_spi_ssd1306"
--require"mono_lcd_spi_st7567"
--require"color_lcd_spi_st7735"
--require"color_lcd_spi_gc9106"
module(...,package.seeall)--LCD分辨率的宽度和高度(单位是像素)
WIDTH,HEIGHT,BPP = disp.getlcdinfo()
--1个ASCII字符宽度为8像素,高度为16像素;汉字宽度和高度都为16像素
CHAR_WIDTH = 8--[[
函数名:getxpos
功能 :计算字符串居中显示的X坐标
参数 :str:string类型,要显示的字符串
返回值:X坐标
]]
function getxpos(str)return (WIDTH-string.len(str)*CHAR_WIDTH)/2
end
3.如果修改为自己想显示的内容,则可修改logo.lua文件。
--[[
模块名称:logo
模块功能:显示开机欢迎语和logo图片
模块最后修改时间:2017.08.08
]]module(...,package.seeall)require"uiwin"
require"prompt"
require"idle"--清空LCD显示缓冲区
disp.clear()
if lcd.WIDTH==128 and lcd.HEIGHT==128 then
--显示logo图片
disp.putimage("/ldata/logo_"..(lcd.BPP==1 and "mono.bmp" or "color.png"),lcd.BPP==1 and 41 or 0,lcd.BPP==1 and 18 or 0)
else
--从坐标16,0位置开始显示"欢迎使用Luat"
disp.puttext("欢迎使用Luat",16,0)
--显示logo图片
disp.putimage("/ldata/logo_"..(lcd.BPP==1 and "mono.bmp" or "color.png"),lcd.BPP==1 and 41 or 1,lcd.BPP==1 and 18 or 33)
end
--刷新LCD显示缓冲区到LCD屏幕上
disp.update()--5秒后,打开提示框窗口,提示"3秒后进入待机界面"
--提示框窗口关闭后,自动进入待机界面
sys.timer_start(prompt.open,5000,"3秒后","进入待机界面",nil,idle.open)
4.默认ui demo显示效果如下。
- 完整代码见下链接
- Air200
- Air202-Air800-Air201
- disp api
Air系列模块驱动lcd显示相关推荐
- Air系列模块Lua版本nvm功能汇总
Air系列模块Lua版本nvm功能汇总 nvm 参数存储 nvm功能模块实现原理 一.概述 nvm是利用文件实现的一种非易失性参数存储管理模块,掉电后参数不会丢失,典型的应用场景为:小数据量的简单键值 ...
- USB摄像头驱动--LCD显示摄像头图像(附Makefile分析)
对于一个应用程序,最重要的是明白目的是什么:将摄像头的数据解析出来,按一帧一个图片的方式将数据传到LCD的Framebuffer中去(如果LCD没有自动将Framebuffer中的数据刷到LCD上还需 ...
- 域格 ASR CAT1 系列 模块驱动安装及升级
一.驱动安装 1.下载口驱动安装 模块开机后首先进入下载模式,若升级工具打开,则开始下载,若未打开则模块进 入正常开机模式. 若模块第一次在电脑上运行,则开机后下载端口驱动未安装,如下图: 下载端口的 ...
- 痞子衡嵌入式:记录i.MXRT1060驱动LCD屏显示横向渐变色有亮点问题解决全过程(提问篇)...
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是i.MXRT1060上LCD横向渐变色显示出亮点问题的分析解决经验. 痞子衡前段时间在支持一个i.MXRT1060客户项目时遇到了LCD ...
- bmp文件头_「正点原子FPGA连载」第十九章SD卡读BMP图片LCD显示
1)摘自[正点原子]领航者 ZYNQ 之嵌入式开发指南 2)实验平台:正点原子领航者ZYNQ开发板 3)平台购买地址:https://item.taobao.com/item.htm?&id= ...
- 【正点原子FPGA连载】 第二十四章 RTC实时时钟LCD显示实验-摘自【正点原子】领航者ZYNQ之FPGA开发指南_V2.0
1)实验平台:正点原子领航者ZYNQ开发板 2)平台购买地址:https://item.taobao.com/item.htm?&id=606160108761 3)全套实验源码+手册+视频下 ...
- 【正点原子FPGA连载】第三十二章RTC实时时钟LCD显示实验 -摘自【正点原子】新起点之FPGA开发指南_V2.1
1)实验平台:正点原子新起点V2开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=609758951113 2)全套实验源码+手册+视频下载地址:ht ...
- 8、STM32 FSMC驱动LCD(ILI93xx)
本文使用FSMC驱动LCD显示,关于建议先看之前的7.STM32 FSMC驱动SRAM一文 硬件连接: 一.CubeMx配置FSMC驱动LCD ILI93xx 此章只为快速使用LCD,不涉及原理.指令 ...
- 痞子衡嵌入式:记录i.MXRT1060驱动LCD屏显示横向渐变色有亮点问题解决全过程(解答篇)...
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是i.MXRT1060上LCD横向渐变色显示出亮点问题的分析解决经验. 接上篇<一个关于LCD屏显示出异常亮点的故事(上)>咱 ...
最新文章
- 调用链系列四:调用链上下文传递
- 【windows】Qt打开资源管理器并选中指定文件
- python实现二分查找算法_两种方法实现Python二分查找算法
- 图形化c语言编程,「分享」C语言如何编写图形界面
- echart 高度 不用 不撑满_注意厨房台面高度及细节 装出省心舒服 装出事半功倍...
- Linux Linux常用命令二
- CTO视点 | 思科打造业界首个基于意图的开放性网络平台,释放无限机遇
- 【机器学习】端到端机器学习实践
- matlab freqz m,freqz(freqz和freqs区别)
- 2021 App上架到 各应用商店(应用宝,华为,vivo,小米,AppStore)
- 商业化广告--体系学习-- 11 -- 业务实战篇 --流量优化:如何兼顾广告收入和用户体验?
- Mysql的问题 Row size too large
- 阿里云账号快速实名认证新手教程(秒通过)
- PS快速选择照片背景
- winxp右键进入dos
- Linux挂载与软连接
- 学报格式和论文格式一样吗_学报论文发表格式有什么要求
- Unity中GPUInstance详解
- The accumulated size of entities is 50,000,001 that exceeded the 50,000,000 limit set by FEATUR
- 我是如何从汇编语言脑残粉转变的