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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6002|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

我調(diào)的小車前進后退左轉(zhuǎn)右轉(zhuǎn)的簡單代碼 新手開始做小車,請多多指教

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:123772 發(fā)表于 2016-5-29 01:35 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
這是我調(diào)的小車前進后退左轉(zhuǎn)右轉(zhuǎn)的簡單代碼。

  1. #include"reg52.h"

  2. #define key_vaule1 1
  3. #define key_vaule2 2
  4. #define key_vaule3 3
  5. #define key_vaule4 4

  6. sbit key1=P3^2;
  7. sbit key2=P3^4;
  8. sbit key3=P3^6;
  9. sbit key4=P3^7;

  10. sbit IA1=P0^0;
  11. sbit IB1=P0^1;
  12. sbit IA2=P0^2;
  13. sbit IB2=P0^3;

  14. int ms_10=0;
  15. int keypress = 0;

  16. //按鍵抬起的任務(wù)執(zhí)行函數(shù)
  17. void HandleKeyPress()
  18. {
  19.         switch(keypress)
  20.         {
  21.                 case key_vaule1:
  22.                         IA1=1;IB1=0;
  23.                         IA2=1;IB2=0;
  24.                         break;
  25.                 case key_vaule2:
  26.                         IA1=0;IB1=1;
  27.                         IA2=0;IB2=1;
  28.                         break;
  29.                 case key_vaule3:
  30.                         IA1=1;IB1=0;
  31.                         IA2=0;IB2=0;
  32.                         break;
  33.                 case key_vaule4:
  34.                         IA1=0;IB1=0;
  35.                         IA2=1;IB2=0;
  36.                         break;
  37.         }
  38. }

  39. void keyScan()
  40. {
  41.         static unsigned char state=0;
  42.         unsigned char temp;

  43.     if(key1==0) temp=key_vaule1;
  44.     else if (key2==0) temp=key_vaule2;
  45.     else if (key3==0) temp=key_vaule3;
  46.     else if (key4==0) temp=key_vaule4;
  47.     else temp=0;

  48.     switch (state)
  49.     {
  50.                 case 0: if(temp!=0) state=1;break;  //檢測是否有低電平出現(xiàn)
  51.                 case 1: state=2;  break; //延時10ms
  52.                           //case 2:按鍵已經(jīng)被按下,此時把temp的數(shù)值付給keypress就可以知道是那個按鍵被按下
  53.                 case 2: if(temp!=0) {state=3;keypress=temp;HandleKeyPress();} else state=0; break;
  54.                 case 3: if(temp==0) {state=0;IA1=0;IB1=0;IA2=0;IB2=0;} break;       
  55.     }
  56. }

  57. void main()
  58. {
  59.         TMOD = 0x01;
  60.         TH0 = (65536-1000)/256;
  61.         TL0 = (65536-1000)%256;
  62.         EA = 1;
  63.         ET0 = 1;
  64.         TR0 = 1;
  65.        
  66.         while(1)
  67.         {
  68.                 if(ms_10>10)
  69.                 {
  70.                         ms_10 = 0;
  71.                         keyScan();
  72.                 }
  73.         }
  74. }

  75. void timer0() interrupt 1
  76. {
  77.         TH0 = (65536-1000)/256;
  78.         TL0 = (65536-1000)%256;       
  79.           ms_10++;
  80. }
復(fù)制代碼


新建 Microsoft Word 文檔.doc

30.5 KB, 下載次數(shù): 8, 下載積分: 黑幣 -5

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發(fā)
ID:638391 發(fā)表于 2019-11-10 13:18 | 只看該作者
樓主  這里的按鍵是什么模塊啊
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 超碰在线影院 | 欧美日韩国产综合在线 | 亚洲九九| 欧美日韩久久精品 | 国产天堂| 欧美激情久久久 | 亚洲国产精品一区二区三区 | 亚洲第1页 | 国产精品99久久久久久久久 | 亚洲欧美在线免费观看 | 三级视频国产 | 亚洲交性 | 久久av一区二区三区 | 国产高清免费 | 欧美又大粗又爽又黄大片视频 | 99精品国产一区二区三区 | 性xxxxx | 欧美一区二区视频 | 亚洲精品久久久蜜桃网站 | 色在线免费视频 | 日韩欧美一区在线 | 91精品国产一二三 | 国产在线观看网站 | 欧美国产精品一区二区三区 | 国产在线精品一区二区三区 | 日韩成人在线播放 | 国产精品一区在线观看 | 奇米影视77 | 欧美一区二区三区一在线观看 | 国产aⅴ精品 | 成人精品久久久 | 亚洲九九精品 | 中文字幕亚洲一区二区三区 | 在线视频一区二区三区 | 欧美一区二区三区四区视频 | 日韩欧美专区 | 99精品一区二区三区 | 久久久涩| 亚洲自拍偷拍免费视频 | 九九av| 久久一热 |