查看: 207|回复: 0

2.7寸电子纸显示屏配合触摸屏使用例程

[复制链接]

该用户从未签到

发表于 2021-11-24 11:42 | 显示全部楼层 |阅读模式
本帖最后由 gooddisplay 于 2021-11-24 12:06 编辑

1.效果展示:
2.开发环境及所需配件
开发软件:Keil uVision5
开发平台:大连佳显DESPI-M02电子纸开发板
大连佳显DESPI-C02电子纸转接板
大连佳显DESPI-C03触摸屏转接板
产品资料链接:https://www.good-display.cn/product/219.html
电子纸型号:GDEW027W3
产品资料链接:https://www.good-display.cn/product/233.html
3.电子纸开发板及转接板介绍
电子纸开发板选用DESPI-M02,此开发板的MCUSTM32F103VET6,也可选用其他开发板,移植程序即可。

DESPI-C02的作用是为电子纸提供驱动电压,为主控板提供电子纸通讯接口,驱动电子纸必须要有升压电路。
C02.jpg
                        DESPI-C02

触摸屏需连接6Pin FPC连接器,这里我使用了DESPI-C03,它具有6Pin连接器,可将触摸屏引脚全部引出,方便与主控板进行连接。

4.接线示意图
接线图.jpg
5.程序示例
5.1 主函数
  1. int main(void)
  2. {         
  3.         delay_init();                     //延时函数初始化
  4.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级
  5.         uart_init(115200);              //串口初始化为115200
  6.        TIM3_Int_Init(999,7199);   //电子纸显示中断
  7.         LED_Init();                               //初始化与LED连接的硬件接口
  8.         EPD_IO_Init();      //初始化与电子纸连接的硬件接口
  9.         EPD_display_init();                   //电子纸初始化
  10.         full_display(pic_display_SmartHome);   //显示主界面 SmartHome
  11.         deep_sleep();                       //进入深度睡眠
  12.         FT6336_Init();                       //初始化FT6236引脚
  13.         EXTIX_Init();                        //外部中断初始化函数
  14.         LED0=0;                                   //亮LED灯
  15.          
  16.         while(1)
  17.         {        
  18.                 if((TPR_Structure.TouchSta &TP_COORD_UD)&&(touch_flag==0))                //触摸有按下
  19.                 {                        
  20.                         TPR_Structure.TouchSta=0;             //清标记
  21.                         FT6336_Scan();                                 //读取触摸坐标
  22.                         switch(touch_count)
  23.                         {
  24.                              case 1:                        
  25.                                         if((TPR_Structure.x[0]!=0)&&(TPR_Structure.y[0]!=0)&&(TPR_Structure.x[0]<176)&&(TPR_Structure.y[0]<264)){        
  26.                                              touch_flag=1;                //触摸按下标志位
  27.                                              if(touch_flag==1) {
  28.                                                 EPD_IO_Init();        //电子纸IO初始化
  29.                                                 TIM3_On();            //TIM3开启,显示电子纸画面
  30.                                                 touch_flag=0;        //清触摸按下标志位
  31.                                                 }                                            
  32.                                             }
  33.                                 break;                                            
  34.                                         }        
  35.                         }                        
  36.         }         
  37. }
复制代码

完整程序请使用下方链接下载
链接:https://pan.baidu.com/s/18DqhEDtZrOiLxwyWZZSi3A
提取码:b7xe

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热门推荐

esp8266  Node mcu多用 含土壤温湿度和DHT11和四路继电器
esp8266 Node mcu多用 含
原来有空气湿度 和四路继电器 现在新加了土壤湿度的在这个里面 这个是为什么?
ArduinoBox
ArduinoBox
这个软件具体是做什么用的? 可以导入程序进行模拟吗?
按键个数上限
按键个数上限
使用ESP32 arduino 蓝牙开发时,设置了许多按键,前12个没有问题,之后的都不会响应如
ESP32 S2 的 SPI
ESP32 S2 的 SPI
ESP32 S2的Arduino环境对于 SPI 的定义是有问题的。 打开ESP32-S2技术参考手册 (“es
啃萝卜可不可以用于arduino UNO R3 开发板
啃萝卜可不可以用于arduin
啃萝卜可不可以用于arduino UNO R3 开发板
Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   
快速回复 返回顶部 返回列表