• 售前

  • 售后

热门帖子
入门百科

基于stm32f103浅显暗码锁(二)

[复制链接]
Gemini迷妹 显示全部楼层 发表于 2022-1-15 23:00:44 |阅读模式 打印 上一主题 下一主题
开头

  过了这么久,总算有了一段时间能暂缓脚步,能抽出一些时间来完成一些专业本事提拔的变乱了,盼望这一次可以或许一战成硕。接下来,我做的一个小项目是基于stm32f103的浅近暗码锁(二),这一次我用TFTLCD触摸屏来试试,只有在做的时间才华发现本身的本事有多弱,有多浮躁,想起唐叔那句话,渐渐来,才更快。

文章目次




二、演示

  
三、TFTLCD先容

  电阻触摸屏的重要部分是一块与表现器外貌非常共同的电阻薄膜屏,这是一种多层的复合薄膜,它以一层玻璃或硬塑料平板作为下层,外貌涂有一层透明氧化金属(透明的导电电阻)导电层,上面再盖有一层外外貌硬化处置惩罚、光滑防擦的塑料层、它的表里貌也涂有一层涂层、在他们之间有很多微小的(小于 1/1000 英寸)的透明隔离点把两层导电层隔开绝缘。 当手指触摸屏幕时,两层导电层在触摸点位置就有了打仗,电阻发生厘革,在 X 和 Y 两个方向上产生信号,然后送触摸屏控制器。控制器侦测到这一打仗并盘算出(X,Y)的位置,再根据得到的位置模仿鼠标的方式运作。这就是电阻技能触摸屏的最根本的原理。
  电容式触摸屏重要分为两种:
    1、 外貌电容式电容触摸屏。
    2、 投射式电容触摸屏。
  正点原子的4.3寸TFTLCD触摸屏是电容触摸屏,ALIENTEK 所选择的电容触摸屏,也是接纳的是投射式电容屏(交互电容范例)。ATK—4.3寸 TFTLCD模块,分辨率:480*800 驱动IC:NT35510(ID5510) 电容触摸屏 16位并口驱动

留意其参数:

四、部分步伐

1.主步伐

代码如下(示例):
  1. int main(void)
  2. {                             
  3.         delay_init();                     //延时函数初始化          
  4.   NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
  5.         uart_init(115200);                 //串口初始化为115200
  6.          
  7.         LED_Init();                             //LED端口初始化
  8.         LCD_Init();       
  9.         KEY_Init();                
  10.         tp_dev.init();
  11.         delay_ms(1500);
  12.         Load_Drow_Dialog();
  13.         KEY_LED();         
  14.         ctp_test();        //电容屏测试
  15. }
复制代码
2.构建捏造键盘

代码如下(示例):
  1. void KEY_LED()
  2. {
  3.         POINT_COLOR=BLUE;
  4.         LCD_DrawRectangle(90,550,400,600);  //画一个矩形
  5.         //在矩形里面分割成小格,1,2,3,4,5....
  6.         LCD_ShowNum(100,100,1,1,32);
  7.         LCD_ShowNum(200,100,2,1,32);
  8.         LCD_ShowNum(300,100,3,1,32);
  9.         LCD_ShowChar(400,100,'@',32,1);
  10.         LCD_ShowNum(100,200,4,1,32);
  11.         LCD_ShowNum(200,200,5,1,32);
  12.         LCD_ShowNum(300,200,6,1,32);
  13.         LCD_ShowChar(400,200,'#',32,1);
  14.         LCD_ShowNum(100,300,7,1,32);
  15.         LCD_ShowNum(200,300,8,1,32);
  16.         LCD_ShowNum(300,300,9,1,32);
  17.         LCD_ShowChar(400,300,'*',32,1);
  18.         LCD_ShowNum(100,400,0,1,32);
  19.         LCD_ShowChar(200,400,'.',32,1);
  20.         LCD_ShowString(300,400,200,24,32,"OK");
  21.         LCD_ShowString(400,400,200,24,32,"NO");
  22.         //行线
  23.         LCD_DrawLine(0,75,480,75);
  24.         LCD_DrawLine(0,175,480,175);
  25.         LCD_DrawLine(0,275,480,275);
  26.         LCD_DrawLine(0,375,480,375);
  27.         LCD_DrawLine(0,475,480,475);
  28.         //列线
  29.         LCD_DrawLine(50,75,50,475);
  30.         LCD_DrawLine(150,75,150,475);
  31.         LCD_DrawLine(250,75,250,475);
  32.         LCD_DrawLine(350,75,350,475);
  33.        
  34. }
复制代码
  画的是一个捏造键盘,只不外画的有那么一点点丑,各人改的时间可以优化一下,让它在屏幕中对称,重要是背面我有点懒了。
2.对键盘扫描

[code]//键盘按键处置惩罚                                        if(n50&&tp_dev.x[t]75&&tp_dev.y[t]50&&tp_dev.x[t]75&&tp_dev.y[t]150&&tp_dev.x[t]75&&tp_dev.y[t]150&&tp_dev.x[t]75&&tp_dev.y[t]250&&tp_dev.x[t]75&&tp_dev.y[t]250&&tp_dev.x[t]75&&tp_dev.y[t]350&&tp_dev.x[t]75&&tp_dev.y[t]350&&tp_dev.x[t]75&&tp_dev.y[t]50&&tp_dev.x[t]175&&tp_dev.y[t]50&&tp_dev.x[t]175&&tp_dev.y[t]150&&tp_dev.x[t]175&&tp_dev.y[t]150&&tp_dev.x[t]175&&tp_dev.y[t]250&&tp_dev.x[t]175&&tp_dev.y[t]250&&tp_dev.x[t]175&&tp_dev.y[t]350&&tp_dev.x[t]175&&tp_dev.y[t]350&&tp_dev.x[t]175&&tp_dev.y[t]50&&tp_dev.x[t]275&&tp_dev.y[t]50&&tp_dev.x[t]275&&tp_dev.y[t]160&&tp_dev.x[t]275&&tp_dev.y[t]160&&tp_dev.x[t]275&&tp_dev.y[t]260&&tp_dev.x[t]275&&tp_dev.y[t]260&&tp_dev.x[t]275&&tp_dev.y[t]50&&tp_dev.x[t]375&&tp_dev.y[t]50&&tp_dev.x[t]375&&tp_dev.y[t]150&&tp_dev.x[t]375&&tp_dev.y[t]150&&tp_dev.x[t]375&&tp_dev.y[t]250&&tp_dev.x[t]375&&tp_dev.y[t]250&&tp_dev.x[t]375&&tp_dev.y[t]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作