查看: 4368|回复: 0

Tiny ML微型机器学习开发板 + 5方向按键LCD显示状态

[复制链接]
  • TA的每日心情
    开心
    4 天前
  • 签到天数: 1058 天

    连续签到: 1 天

    [LV.10]以坛为家III

    发表于 2021-7-19 17:12:39 | 显示全部楼层 |阅读模式
    分享到:
    本帖最后由 TLLED 于 2021-7-19 17:12 编辑

        测试面板上的5方向按键,TFT-LCD显示按键状态。


        一、按键电路图

            5方向按键的电路图
             001.png
        二、程序
       
        程序源码:
    1. #include"TFT_eSPI.h"
    2. #include"Free_Fonts.h"  
    3. int key_status=1;

    4. TFT_eSPI tft;

    5. void setup() {
    6.   //串口
    7.   Serial.begin(115200);
    8.   //按键
    9.   pinMode(WIO_5S_UP, INPUT_PULLUP);
    10.   pinMode(WIO_5S_DOWN, INPUT_PULLUP);
    11.   pinMode(WIO_5S_LEFT, INPUT_PULLUP);
    12.   pinMode(WIO_5S_RIGHT, INPUT_PULLUP);
    13.   pinMode(WIO_5S_PRESS, INPUT_PULLUP);
    14.   //TFT
    15.   tft.begin();
    16.   tft.setRotation(3);
    17.   tft.fillScreen(TFT_BLACK);  
    18.   tft.setFreeFont(&FreeSansBoldOblique12pt7b);  
    19. }
    20. void loop() {
    21.   // put your main code here, to run repeatedly:
    22.    if (digitalRead(WIO_5S_UP) == LOW) {
    23.     Serial.println("5 Way Up");
    24.     tft.drawString("WIO_5S_UP KEYUP        ",10,80);
    25.     key_status=1;
    26.    }
    27.    else if (digitalRead(WIO_5S_DOWN) == LOW) {
    28.     Serial.println("5 Way Down");
    29.     tft.drawString("WIO_5S_DOWN KEYUP        ",10,80);
    30.     key_status=1;
    31.    }
    32.    else if (digitalRead(WIO_5S_LEFT) == LOW) {
    33.     Serial.println("5 Way Left");
    34.     tft.drawString("WIO_5S_LEFT KEYUP        ",10,80);
    35.     key_status=1;
    36.    }
    37.    else if (digitalRead(WIO_5S_RIGHT) == LOW) {
    38.     Serial.println("5 Way Right");
    39.     tft.drawString("WIO_5S_RIGHT KEYUP        ",10,80);
    40.     key_status=1;
    41.    }
    42.    else if (digitalRead(WIO_5S_PRESS) == LOW) {
    43.     Serial.println("5 Way Press");
    44.     tft.drawString("WIO_5S_PRESS KEYUP        ",10,80);
    45.     key_status=1;
    46.    }
    47.    else{
    48.     if(key_status==1)
    49.     {
    50.       key_status=0;
    51.       tft.drawString("WIO_5S_UP NO KEYUP        ",10,80);
    52.     }
    53.    }
    54.    delay(200);
    55. }
    复制代码

        三、程序运行


        3.1、串口输出按键状态
        100.png


        3.2、显示屏显示按键状态
       








    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-5-2 20:39 , Processed in 0.120889 second(s), 16 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.