1,LCD初始化
2,触摸屏芯片初始化
在操作触摸屏之前,需要初始化LCD模组背面的触摸MCU(XPT2046)。返回值为1,表示初始化成功;返回值为0,表示初始化失败。
While循环
3,检测KEY_UP按键状态
当KEY_UP按下,输入高电平,就执行屏幕校准,校准完比后执行清屏和显示Clear Green按钮。
4,检测触摸屏是否按下
校准完成后,用户需要通过轮询查找的方式来快速判断触摸屏上是否产生了有效的按压动作。如果如下函数的返回值>0,说明按下有效。
5,读取压点坐标
一旦检测到一次有效的按下事件,就来读取被按点的位置从标,该返回值为模块的绝对物理坐标,以分辨率为单位。
6,判断按下的区域(是否在Clear Screen按钮上)
按点是否落在Clear Screen按钮区域上:
为真,清屏
为假,调用LCD画点函数且加粗显示画点
清屏
完成整个程序
三,编译下载
硬件实现效果:
1,上电,按下KEY_UP按键,提示校准屏幕
XPT2046不是一个电阻触摸屏吗,触摸屏分两部分,一部分是显示,一部分是触摸,两个是独立的,组合在一起。
XPT2046是通过AD来读取数据,确定是哪个坐标按下的,单片机读取到的坐标数据,去控制显示。
还没有评论,来说两句吧...