找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1547|回复: 0
打印 上一主题 下一主题
收起左侧

蓝牙控制51单片机智能小车源代码

[复制链接]
跳转到指定楼层
楼主
ID:493513 发表于 2019-3-18 20:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
蓝牙控制51智能小车源代码

单片机源程序如下:
  1. #include<reg52.h>
  2. #define uint unsigned int
  3. #define uchar unsigned char
  4. sbit IN1=P1^0;         //控制电机的8个端口
  5. sbit IN2=P1^1;
  6. sbit IN3=P1^2;
  7. sbit IN4=P1^3;
  8. sbit IN5=P1^4;         
  9. sbit IN6=P1^5;
  10. sbit IN7=P1^6;
  11. sbit IN8=P1^7;

  12. sbit fm=P2^5;        //蜂鸣器

  13. uchar a=0;

  14. void delay_ms(uint z)         //延时函数
  15. {
  16.         int i,j;
  17.         for(i=z;i>0;i--)
  18.                 for(j=110;j>0;j--);
  19. }  

  20. void init()                 //初始化函数
  21. {
  22.         TMOD=0x20;          //设置T1为工作方式2
  23.         TH1=0xfd;          //波特率9600,装初值
  24.         TL1=0xfd;
  25.         TR1=1;                  //定时器1开
  26.         REN=1;                  //允许串行接收
  27.         SM0=0;                  //选择工作方式
  28.         SM1=1;
  29.         EA=1;                 //开总中断
  30.         ES=1;                 //开串口中断
  31. }

  32. void go()          //前进函数
  33. {
  34.         IN1=1;        IN2=0;
  35.         IN3=1;        IN4=0;
  36.        
  37.         IN5=1;        IN6=0;
  38.         IN7=1;        IN8=0;
  39. }
  40. void back()                //后退函数
  41. {
  42.         IN1=0;        IN2=1;
  43.         IN3=0;        IN4=1;
  44.        
  45.         IN5=0;        IN6=1;
  46.         IN7=0;        IN8=1;
  47. }
  48. void stop()                //停止函数
  49. {
  50.         IN1=0;        IN2=0;
  51.         IN3=0;        IN4=0;       
  52.        
  53.         IN5=0;        IN6=0;
  54.         IN7=0;        IN8=0;       
  55. }
  56. void left()                //左转函数
  57. {
  58.         IN1=1;        IN2=0;
  59.         IN3=0;        IN4=1;
  60.        
  61.         IN5=1;        IN6=0;
  62.         IN7=0;        IN8=1;
  63. }
  64. void right()         //右转函数
  65. {
  66.         IN1=0;        IN2=1;
  67.         IN3=1;        IN4=0;
  68.        
  69.         IN5=0;        IN6=1;
  70.         IN7=1;        IN8=0;
  71. }


  72. void main()
  73. {
  74.         init();
  75.         while(1)
  76.         {
  77.                 switch(a)
  78.                 {
  79.                         case 0x1f:        delay_ms(50); go();        break;
  80.                         case 0x2f:        delay_ms(50); back();        break;
  81.                         case 0x3f:        delay_ms(50); right();        break;
  82.                         case 0x4f:        delay_ms(50); left();break;
  83.                         case 0x8f:        fm=0;break;
  84.                         default:        {fm=1;stop();} break;
  85.                 }
  86.         }
  87. }

  88. void chuan() interrupt 4        //串口服务函数
  89. {
  90.         RI=0;                //软件清零
  91.         a=SBUF;                //读取SBUF数据
  92. }
复制代码

所有资料51hei提供下载:
lanya.zip (886 Bytes, 下载次数: 10)



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表