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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1872|回復: 1
打印 上一主題 下一主題
收起左側

stm32f103單片機固件庫編程按鍵檢測源碼

[復制鏈接]
跳轉到指定樓層
樓主
ID:392277 發表于 2018-10-25 22:03 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
使用stm32f103的GPIO端口檢查按鍵源碼

源程序如下:
  1. #include "stm32f10x.h" //頭文件
  2. #include "bsp_led.h"
  3. #include "bsp_key.h"

  4. #define    KEY1   KEY_Scan(KEY1_GPIO_PORT,KEY1_GPIO_PIN)
  5. #define    KEY2   KEY_Scan(KEY2_GPIO_PORT,KEY2_GPIO_PIN)
  6. char a;
  7. char b;

  8. void delay(uint32_t count)
  9. {
  10. for(;count!=0;count--);
  11.    

  12. }
  13.         
  14. void Output_Auto(void)
  15. {


  16.                 LED_R(ON);
  17.         //        LED_G(ON);
  18.         //        LED_B(ON);
  19.                 delay(0x8FFFFF);
  20.                 LED_R(OFF);
  21.                 LED_G(OFF);
  22.                 LED_B(OFF);

  23.         //        LED_R(ON);
  24.                 LED_G(ON);
  25.         //        LED_B(ON);
  26.                 delay(0x8FFFFF);
  27.         //        LED_R(OFF);
  28.                 LED_G(OFF);
  29.                 LED_B(OFF);
  30.         
  31.         //        LED_R(ON);
  32.         //        LED_G(ON);
  33.                 LED_B(ON);
  34.                 delay(0x8FFFFF);
  35.         //        LED_R(OFF);
  36.                 LED_G(OFF);
  37.                 LED_B(OFF);
  38.         
  39.                 LED_R(ON);
  40.                 LED_G(ON);
  41.         //        LED_B(ON);
  42.                 delay(0x8FFFFF);
  43.                 LED_R(OFF);
  44.                 LED_G(OFF);
  45.         //        LED_B(OFF);
  46.         
  47.                 LED_R(ON);
  48.         //        LED_G(ON);
  49.                 LED_B(ON);
  50.                 delay(0x8FFFFF);
  51.                 LED_R(OFF);
  52.         //        LED_G(OFF);
  53.                 LED_B(OFF);
  54.         
  55.         //        LED_R(ON);
  56.                 LED_G(ON);
  57.                 LED_B(ON);
  58.                 delay(0x8FFFFF);
  59.         //        LED_R(OFF);
  60.                 LED_G(OFF);
  61.                 LED_B(OFF);
  62.         
  63.                 LED_R(ON);
  64.                 LED_G(ON);
  65.                 LED_B(ON);
  66.                 delay(0x8FFFFF);
  67.                 LED_R(OFF);
  68.                 LED_G(OFF);
  69.                 LED_B(OFF);
  70.         
  71.                                 
  72.                 LED_R(OFF);
  73.                 LED_G(OFF);
  74.                 LED_B(OFF);
  75.                 delay(0x8FFFFF);

  76.         LED_R(ON);
  77.                 LED_G(ON);
  78.                 //LED_B(ON);
  79.                 delay(0xCFFFD);
  80.                 LED_R(OFF);
  81.                 //LED_B();
  82.                 delay(0xCFFFD);



  83. }
  84. void Output_R(void)
  85. {

  86.     LED_R(ON);
  87.                 LED_G(OFF);
  88.                 LED_B(OFF);
  89. }
  90. void Output_G(void)
  91. {

  92.     LED_R(OFF);
  93.                 LED_G(ON);
  94.                 LED_B(OFF);
  95. }
  96. void Output_B(void)
  97. {

  98.     LED_R(OFF);
  99.                 LED_G(OFF);
  100.                 LED_B(ON);
  101. }
  102. void Output_R_G(void)
  103. {
  104.   LED_R(ON);
  105.         LED_G(ON);
  106.         LED_B(OFF);

  107. }

  108. void Output_R_B(void)
  109. {
  110.   LED_R(ON);
  111.         LED_G(OFF);
  112.         LED_B(ON);

  113. }
  114. void Output_G_B(void)
  115. {
  116.   LED_R(OFF);
  117.         LED_G(ON);
  118.         LED_B(ON);

  119. }
  120. void Output_All(void)
  121. {
  122.         LED_R(ON);
  123.         LED_G(ON);
  124.         LED_B(ON);

  125. }
  126. void Output_Null(void)
  127. {
  128.   LED_R(OFF);
  129.         LED_G(OFF);
  130.         LED_B(OFF);

  131. }
  132. int main(void)
  133. {
  134.         a=0;
  135.         b=0;
  136.         LED_GPIO_Config();
  137.         KEY_GPIO_Config();
  138.         LED_R(OFF);
  139.         LED_G(OFF);
  140.         LED_B(OFF);
  141.         while(1)
  142.                 {
  143.              if(KEY1 == KEY_ON)
  144.                             {
  145.                                                 delay(0x1FFF);
  146.                                                 //a=1;
  147.                                                 if(KEY1 == KEY_ON && b == 0)
  148.               {
  149.                      Output_R();
  150.                                                                       b =1;
  151.                                                         }
  152.                                     else if(KEY1 == KEY_ON && b == 1)
  153.                                                      {
  154.                                                                         
  155.                     Output_G();
  156.                                                                        b =2;
  157.                                                                     }
  158.             else if(KEY1 == KEY_ON && b == 2)
  159.                  {
  160.                                                                         
  161.                             Output_B();
  162.                                                                              b = 3;
  163.                                                              }
  164.             else if(KEY1 == KEY_ON && b == 3)
  165.                  {
  166.                                                                         
  167.                             Output_R_G();
  168.                                                                              b = 4;
  169.                                                              }
  170.             else if(KEY1 == KEY_ON && b == 4)
  171.                  {
  172.                                                                         
  173.                             Output_R_B();
  174.                                                                              b = 5;
  175.                                                              }
  176.             else if(KEY1 == KEY_ON && b == 5)
  177.                  {
  178.                                                                         
  179.                             Output_G_B();
  180.                                                                              b = 6;        
  181.                                                              }               
  182.             else if(KEY1 == KEY_ON && b == 6)
  183.                  {
  184.                                                                         
  185.                             Output_All();
  186.                                                                             b = 7;
  187.                                                              }                                                                 
  188.                                                 else if(KEY1 == KEY_ON && b == 7)
  189.                  {
  190.                                                                         
  191.                             Output_Null();
  192.                                                                              b = 0;
  193.                                                              }                                       
  194.                                    // else a=0;
  195.                                                                                          }
  196.                           if(KEY2==KEY_ON)
  197.                             {   
  198.                                                 delay(0x0FFF);
  199.                               if(KEY2==KEY_ON)
  200.                                  {  
  201.                                                                  Output_Auto();
  202.                        }
  203.                                                          else Output_Null();
  204.                                                                                  }
  205.                                        
  206.         
  207.                 }
  208.    
  209.      

  210.         

  211. }
復制代碼

所有資料51hei提供下載:
13-GPIO輸入-按鍵檢測.rar (283.18 KB, 下載次數: 8)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:1 發表于 2018-10-25 23:17 | 只看該作者
補全原理圖或者詳細說明一下電路連接即可獲得100+黑幣
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲www啪成人一区二区 | 亚洲国产精品视频一区 | 欧美国产亚洲一区二区 | 欧美精品一区二区三区四区五区 | 久产久精国产品 | 免费高潮视频95在线观看网站 | 亚州春色 | 成人免费在线观看 | 亚洲综合在线视频 | 久久久久av| 国产日韩欧美在线播放 | 婷婷成人在线 | 久久精品 | 久久精品16 | 奇色影视 | 中国美女一级黄色片 | 毛片大全 | 国产精品欧美一区二区三区不卡 | 凹凸日日摸日日碰夜夜 | 亚洲黄色一级毛片 | 国产一区二区三区在线看 | www.99热.com | 国产一区二区三区四区hd | 欧产日产国产精品v | a在线观看免费 | 成人免费视频网站在线看 | 欧美一区二区三区在线视频 | 久久久国产精品一区 | 亚洲综合一区二区三区 | 天天激情综合 | 欧美性另类| 夜夜夜夜夜夜曰天天天 | 97精品久久 | 九九免费观看视频 | 亚洲精品免费视频 | 精品久久久久久久久久久久久久久久久 | 久久精品久久久 | 亚洲a视频| 久草视频在线播放 | 日韩在线看片 | 久久一|