久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1843|回復: 10
收起左側

求助大佬,怎么利用一個按鈕來控制led點一下長亮點一下長滅

[復制鏈接]
ID:1137686 發表于 2024-11-26 14:24 | 顯示全部樓層 |閱讀模式
我的這個程序有問題嗎?

屏幕截圖 2024-11-26 142338.png
回復

使用道具 舉報

ID:276663 發表于 2024-11-26 21:14 | 顯示全部樓層
  1. int main(void)
  2. {
  3.         u8 flag;

  4.         while(1)
  5.         {
  6.                 if(key==0)
  7.                 {
  8.                         if(flag)
  9.                         {
  10.                                 led=0;//滅
  11.                                 flag=0;
  12.                         }else
  13.                         {
  14.                                 led=1;//亮
  15.                                 flag=1;
  16.                         }
  17.                         while(key==0);
  18.                 }
  19.         }
  20. }
復制代碼
回復

使用道具 舉報

ID:498757 發表于 2024-11-26 21:44 | 顯示全部樓層
第100行 寫錯了吧 ,這個邏輯有有點問題,  按鍵可以用中斷
回復

使用道具 舉報

ID:1137686 發表于 2024-11-26 21:47 | 顯示全部樓層
tianxiazone 發表于 2024-11-26 21:44
第100行 寫錯了吧 ,這個邏輯有有點問題,  按鍵可以用中斷

就是我這個按鍵接的地,所以按下去讀取的應該是0,所以用的reset,這個中斷是什么意思啊,請教一下,我們老師上可就講了這幾個函數》
回復

使用道具 舉報

ID:161164 發表于 2024-11-26 23:21 | 顯示全部樓層
有問題
沒消抖
沒松手檢測
回復

使用道具 舉報

ID:23640 發表于 2024-11-27 09:44 | 顯示全部樓層
判斷按鍵里面加個延時再判斷一次就實現你的功能了,你目前的程序因為沒有延時,單片機跑太快按鍵可能會亂變燈
回復

使用道具 舉報

ID:583948 發表于 2024-11-28 10:17 | 顯示全部樓層
本帖最后由 zpwgf 于 2024-11-28 10:21 編輯

HAL_GPIO_TogglePin使用這個函數就方便撒。比如:
if(HAL_GPIO_ReadPin(GPIOA,GPIO_PIN_11) == 0)
    {
        HAL_Delay(10);
        if(HAL_GPIO_ReadPin(GPIOA,GPIO_PIN_11) == 0)
        {
            HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_10);
        }
    }
沒錯的話應該這樣也可以。當然,這樣不松手的話理論上會一直來回跳
回復

使用道具 舉報

ID:1091344 發表于 2024-11-28 11:21 | 顯示全部樓層
按按鍵的時間和HAL_Delay(150),最好延時時間大于按鍵時間,讓按一次只進入一次A11接地判定,還有A10一般做串口用,點燈有點大材小用了
回復

使用道具 舉報

ID:1091344 發表于 2024-11-28 11:25 | 顯示全部樓層
在第一個if里面加延時,保證按一次按鍵只執行第一個一次if
回復

使用道具 舉報

ID:1137686 發表于 2024-11-28 15:33 | 顯示全部樓層
會飛的魚KKK 發表于 2024-11-28 11:21
按按鍵的時間和HAL_Delay(150),最好延時時間大于按鍵時間,讓按一次只進入一次A11接地判定,還有A10一般做 ...

哈哈哈,小白一個,老師上課都沒講什么直接就讓我們寫了
回復

使用道具 舉報

ID:916493 發表于 2024-12-13 13:32 | 顯示全部樓層
發表于 2024-11-28 15:33
哈哈哈,小白一個,
  1. u8 flag1 = 0;
  2. void key1_control (void)
  3. {
  4.         if (GPIO_ReadInputDataBit (GPIOA, GPIO_Pin_0) != 0)
  5.         {
  6.                 delay_ms (10);
  7.                 if (GPIO_ReadInputDataBit (GPIOA, GPIO_Pin_0) != 0)
  8.                 {
  9.                         while (GPIO_ReadInputDataBit (GPIOA, GPIO_Pin_0) != 0) {}
  10.                         flag1++;
  11.                 }
  12.         }
  13.         if (flag1 % 2 == 1)
  14.                 GPIO_ResetBits (GPIOE, GPIO_Pin_2 | GPIO_Pin_3) ;
  15.         else
  16.                 GPIO_SetBits (GPIOE, GPIO_Pin_2 | GPIO_Pin_3);
  17. }
復制代碼
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲综合视频 | 狠狠操狠狠干 | 久久精品国产一区 | 在线日韩欧美 | 久久精品一级 | 98久久| 国产精品久久久久久久久久软件 | 日本在线视频一区二区 | 中文字幕在线精品 | 最新国产福利在线 | 亚洲视频www | 国产高清美女一级a毛片久久w | 国产网站在线 | 亚洲精品一区二区三区蜜桃久 | 国产精品久久久久久久久久久久 | 精精国产xxxx视频在线播放 | 日韩国产精品一区二区三区 | 中文字幕一区二区在线观看 | www.v888av.com | 日韩免费视频一区二区 | 国产午夜精品一区二区三区嫩草 | 精品三级在线观看 | 国产精品一区二区不卡 | 亚洲欧美日韩精品久久亚洲区 | 免费午夜电影 | 国产精品久久久久久久久图文区 | 亚洲成人一区 | 欧美久久久久久 | 羞羞在线观看视频 | 精品中文字幕一区二区三区 | 人人叉 | 日韩成人一区二区 | 九九热re | 久久激情网 | 日韩在线免费 | 蜜桃av鲁一鲁一鲁一鲁 | 国产日韩精品久久 | 久久久久久久久久久91 | 懂色av色香蕉一区二区蜜桃 | 欧美色性 | 亚洲人成网站777色婷婷 |