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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

藍牙小車單片機源程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:276753 發表于 2018-1-16 21:28 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
  1. #include <REGX51.H>
  2. #define godata 0x31;
  3. #define backdata 0x32;
  4. #define rightdata 0x33;
  5. #define leftdata 0x34;
  6. //#define P0=0;

  7. sbit PWM0=P1^0;                /*IN1*/
  8. sbit PWM1=P1^1;                /*IN2*/
  9. sbit PWM2=P1^2;                   /*IN3*/
  10. sbit PWM3=P1^3;                   /*IN4*/

  11. sbit P_0=P0^0;                /*LED1*/
  12. sbit P_1=P0^1;                /*LED*/
  13. sbit P_2=P0^2;                   /*LED*/
  14. sbit P_3=P0^3;                   /*LED*/
  15. sbit P_4=P0^4;                   /*LED*/
  16. sbit P_5=P0^5;                   /*LED*/

  17. unsigned char receive ,receivedata;
  18. unsigned char go,back,right,left,stop,LED;
  19. //串口波特率的定時發生器,用的是定時器1 方式2,波特率是9600
  20. void init()
  21. {
  22.     TMOD=0x20;                /* 定時器工作在方式2*/
  23.         TL1=0XFD;                /*9600波特率 */
  24.         TH1=0XFD;                  /*啟動T1*/
  25.         SCON=0X50;                /*串行方式1,允許接收*/
  26.         PCON=0X00;
  27.         TR1=1;                        /*啟動T1*/
  28.         EA=1;                          /*開總中斷*/
  29.         ES=1;                        /*允許串行中斷*/


  30. }


  31. void signal() interrupt 4        /*串口接收中斷函數*/
  32. {

  33.          
  34.              RI=0;
  35.                 receivedata=SBUF;
  36.             receive=1;


  37. }
  38. //控制信號的接收處理
  39. void signalfuntion()
  40. {
  41.         if(receive==1)
  42.         {
  43.                 receive=0;
  44.                 go=0;
  45.                 back=0;
  46.                 right=0;
  47.                 left=0;
  48.                 stop=0;
  49.                 LED=0;

  50.                         switch(receivedata)
  51.                         {
  52.                                         case 0x01:go=1;                        //前進
  53.                                                         break;
  54.                                         case 0x02:back=1;                //后退
  55.                                                                 break;
  56.                                         case 0x03:right=1;         //右轉
  57.                                                                 break;
  58.                                         case 0x04:left=1;          //左轉
  59.                                                                 break;
  60.                                         case 0x05:stop=1;        //停
  61.                                         case 0x06:LED=1;
  62.                                 //        default:stop=1;
  63.                                         default:break;
  64.                        
  65.                         }

  66.         }
  67.         else
  68.         {
  69.                   go=0;
  70.                 back=0;
  71.                 right=0;
  72.                 left=0;
  73.                    stop=0;
  74.         }

  75. }
  76.         //電機控制輸出
  77. void Motorcontrol()
  78. {              

  79.      if(go==1)
  80.                  {
  81.                          PWM0=1;
  82.                         PWM1=0;
  83.                         PWM2=1;
  84.                         PWM3=0;


  85.                  }
  86.                  else if(back==1)
  87.                  {
  88.                          PWM0=0;
  89.                         PWM1=1;
  90.                         PWM2=0;
  91.                         PWM3=1;

  92.                  }

  93.                  else if(right==1)
  94.                  {   
  95.                                          PWM0=1;
  96.                                         PWM1=0;
  97.                                         PWM2=1;
  98.                                         PWM3=1;
  99.                   
  100.                  }
  101.                  else if(left==1)
  102.                  {
  103.                  
  104.                                  PWM0=1;
  105.                                 PWM1=1;
  106.                                 PWM2=1;
  107.                                 PWM3=0;
  108.                  
  109.                  }
  110.                    else if(stop==1)
  111.                  {
  112.                            PWM0=1;
  113.                         PWM1=1;
  114.                         PWM2=1;
  115.                         PWM3=1;
  116.                  
  117.                  }
  118.                  
  119.           }


  120. void main()
  121. {
  122.         init();         //初始化


  123.   while(1)
  124.         {  
  125.          
  126.                
  127.              signalfuntion()        ;
  128.                 Motorcontrol();
  129.          }

  130. }

復制代碼


評分

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

查看全部評分

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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久蜜桃av一区二区天堂 | 亚洲午夜精品视频 | 黄色大片免费观看 | 伊人伊人 | 久久精品无码一区二区三区 | 久久婷婷av | 日韩在线精品视频 | av毛片| 精品国产乱码久久久久久蜜柚 | 日韩免费福利视频 | 亚洲成人av | 91麻豆精品一区二区三区 | 午夜天堂精品久久久久 | 婷婷福利视频导航 | 亚洲婷婷六月天 | 国产亚洲一区二区精品 | 成人性视频免费网站 | 日韩精品一区二区三区免费视频 | 日韩在线三级 | 天天干狠狠操 | 国产乱码精品一区二区三区中文 | 欧美精品一区二区三区在线 | 成人免费共享视频 | 欧一区 | 成人欧美一区二区三区黑人孕妇 | 四虎成人av | 特黄小视频 | 超碰在线97国产 | 人成在线 | 欧美日韩久久精品 | 超碰免费在线观看 | 国产精品九九九 | 精品一区二区观看 | 国产在线视频在线观看 | 精品在线一区二区 | 国产精品久久久乱弄 | 一区二区三区欧美在线 | 欧美日韩中文在线 | av一区二区三区四区 | 日韩中文字幕免费在线 | 国产日本精品视频 |