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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機按鍵識別程序與proteus仿真

[復制鏈接]
跳轉到指定樓層
樓主
一個最簡單的單片機應用 按鍵識別的proteus仿真,原理圖如下:

單片機源程序:
  1. /********************************************************************
  2.                             51黑電子論壇
  3. *********************************************************************/
  4. #include<reg52.h>                 //庫文件
  5. #define uchar unsigned char//宏定義無符號字符型
  6. #define uint unsigned int  //宏定義無符號整型
  7. /********************************************************************
  8.                             初始定義
  9. *********************************************************************/
  10. uchar count;   //按鍵計數,每按一下,count 加1
  11. uchar a,b;           //定義字符型變量
  12. uchar temp;    //定義字符型變量
  13. sbit BY1=P2^1; //定義按鍵的輸入端(為單片機P2口的P2.1按鍵)
  14. /********************************************************************
  15.                             延時函數
  16. *********************************************************************/
  17. void delay10ms(void) //延時程序
  18. {
  19. uchar i,j;
  20. for(i=20;i>0;i--)
  21. for(j=248;j>0;j--);
  22. }
  23. /********************************************************************
  24.                            按鍵判斷函數
  25. *********************************************************************/
  26. void key() //按鍵判斷程序
  27. {
  28.         if(BY1==0) //判斷是否按下鍵盤
  29.         {
  30.                 delay10ms(); //延時,軟件去干擾
  31.                 if(BY1==0) //確認按鍵按下
  32.                 {
  33.                         count++; //按鍵計數加1
  34.                         if(count==8) //計8次重新計數
  35.                         {
  36.                                 count=0;//將count 清零
  37.                         }
  38.                 }
  39.         while(BY1==0);//按鍵鎖定,每按一次count 只加1.
  40.         }
  41. }
  42. /********************************************************************
  43.                             主函數
  44. *********************************************************************/
  45. void main()
  46. {
  47.         temp=0xfe; //定義為11111110
  48.         while(1)
  49.         {
  50.                 key(); //調用按鍵判斷函數
  51.                 a=temp<<count;//左移count位
  52.                 b=temp>>(8-count);//右移8-count位
  53.                 P0=a|b;        //求值
  54.         }
  55. }
  56.         
  57. /********************************************************************
  58.                               結束
  59. *********************************************************************/
復制代碼


所有資料下載:
按鍵識別.rar (56.31 KB, 下載次數: 14)


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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 伊人久久综合 | a级大片免费观看 | 少妇一级淫片aaaaaaaaa | 亚洲日韩中文字幕一区 | 在线观看视频一区 | 黄色操视频 | 欧美国产免费 | 91性高湖久久久久久久久_久久99 | 欧美一级做a爰片免费视频 国产美女特级嫩嫩嫩bbb片 | 日韩在线| 国产精品久久久久久久久久久久冷 | 久久一区视频 | 亚洲欧美一区二区三区在线 | av免费网址| 亚洲视频一区在线 | 久久高清亚洲 | 五月精品视频 | 国产韩国精品一区二区三区 | 免费在线观看毛片 | 一区二区三区四区av | 黄免费看| 国产黄视频在线播放 | 国产精品一卡二卡三卡 | 国产成人综合一区二区三区 | 精品乱码一区二区 | 欧美一级视频 | 特黄色一级毛片 | 在线免费观看a级片 | 精品国产一区二区久久 | 国产一区精品在线 | 午夜极品| 日韩精品区| 日本超碰在线 | 欧美日产国产成人免费图片 | 日韩国产中文字幕 | www.亚洲 | 久久国产精品无码网站 | 欧美精品久久久久 | 久久久久成人精品 | 四虎永久免费地址 | 亚洲一区二区三区 |