找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5405|回复: 10
收起左侧

数据包格式蓝牙控制智能小车程序 自测好用

[复制链接]
ID:79544 发表于 2015-8-18 10:59 | 显示全部楼层 |阅读模式
  1. /*******************************************************
  2.         蓝牙控制智能小车程序,IO口可自定义
  3.         标准格式
  4.         单片机:STC12C5608AD
  5.         晶振:11,0592M
  6.         整理:苏义江
  7.         时间:2015-8-10
  8. ********************************************************/
  9. #include<reg52.h>
  10. #define uchar unsigned char
  11. #define uint unsigned int
  12. sbit dir1        =P1^2;//左电机端口方向控制
  13. sbit dir2        =P1^3;//左电机端口方向控制
  14. sbit pwm1        =P1^4;//PWM输出
  15. sbit dir3        =P1^5;//右电机端口方向控制
  16. sbit dir4        =P1^6;//右电机端口方向控制
  17. int buffer[3];
  18. int rec_flag=0;
  19. /*-------------------------------------------------------------*/
  20. //串口初始化
  21. void UART_Init(void)
  22. {
  23.         TMOD = 0x21;
  24.         PCON = 0x00;
  25.         SCON = 0x50;
  26.         TH1 = 0xFd; //设置波特率 9600
  27.         TL1 = 0xFd;
  28.         TR1 = 1; //启动定时器1       
  29.         ES = 1; //开串口中断
  30.         EA = 1; //开总中断
  31. //        IT0=0;
  32. //        EX0=1;

  33. }

  34. /*-------------------------------------------------------------*/
  35. //主函数
  36. void qianjin()
  37. {
  38.         dir1=0;//方向
  39.         dir2=1;//方向
  40.         pwm1=10;//PWM占空比
  41.         dir3=0;//方向
  42.         dir4=1;//方向
  43.         pwm1=10;//PWM
  44. }
  45. void houtui()
  46. {
  47.         dir1=1;//方向
  48.         dir2=0;
  49.         pwm1=10;//PWM占空比
  50.         dir3=1;
  51.         dir4=0;
  52.         pwm1=10;//PWM
  53. }
  54. void zuozhuan()
  55. {
  56.         dir1=1;
  57.         dir2=0;
  58.         pwm1=10;
  59.         dir3=0;
  60.         dir4=1;
  61.         pwm1=10;
  62. }
  63. void youzhuan()
  64. {
  65.         dir1=0;
  66.         dir2=1;
  67.         pwm1=10;
  68.         dir3=1;
  69.         dir4=0;
  70.         pwm1=10;
  71. }
  72. void stop()//停止子函数
  73. {
  74.         dir1=0;
  75.         dir2=0;
  76.         pwm1=0;
  77.         dir3=0;
  78.         dir4=0;
  79.        
  80. }
  81. void main(void)
  82. {
  83.         UART_Init(); //初始化串口
  84.         while(1)
  85.         {
  86.                 ;
  87.         }
  88. }

  89. void Communication_Decode(void)
  90. {
  91.         if(buffer[0]==0x00)
  92.         {
  93.                 switch(buffer[1])
  94.                 {
  95.                         case 0x01:qianjin(); return;
  96.                         case 0x02:houtui(); return;
  97.                         case 0x03:zuozhuan(); return;
  98.                         case 0x04:youzhuan(); return;
  99.                         case 0x00:stop(); return;
  100.                         default: return;
  101.                 }
  102.         }
  103.         else
  104.         {
  105.                 return;
  106.         }
  107. }

  108. /*-------------------------------------------------------------*/
  109. //串口接收中断函数
  110. void INT_UartRcv(void) interrupt 4
  111. {
  112.         static int i;
  113.        
  114.        
  115.         if(RI==1)
  116.         {
  117.                 RI = 0;
  118.                 if(rec_flag==0)
  119.                 {
  120.        
  121.                         if(SBUF==0xff)
  122.                         {
  123.                                 rec_flag=1;
  124.                                 i=0;
  125.                         }
  126.                 }
  127.                 else
  128.                 {
  129.                         if(SBUF==0xff)
  130.                         {
  131.                                 rec_flag=0;
  132.                                 if(i==3)
  133.                                 {
  134.                                         Communication_Decode();
  135.                                 }
  136.                                 i=0;
  137.                         }
  138.                         else
  139.                         {
  140.                                 buffer[i]=SBUF;
  141.                                 i++;
  142.                         }
  143.                 }
  144.         }
  145.         else
  146.         {
  147.                 TI = 0;
  148.         }
  149. }
复制代码


回复

使用道具 举报

ID:54731 发表于 2015-8-18 17:45 | 显示全部楼层
请问楼主:蓝牙APP有吗?那你能共享吗?还有蓝牙模块是哪一款?
回复

使用道具 举报

ID:79544 发表于 2015-8-20 17:14 | 显示全部楼层
很多我不会发啊,蓝牙模块用HC-06从机的就行。
回复

使用道具 举报

ID:79544 发表于 2015-8-20 21:33 | 显示全部楼层
南天白云 发表于 2015-8-18 17:45
请问楼主:蓝牙APP有吗?那你能共享吗?还有蓝牙模块是哪一款?

上位机APK传了,你试试看
回复

使用道具 举报

ID:54731 发表于 2015-8-23 10:06 | 显示全部楼层
请问楼主,你资料传到哪里?我给你邮箱号码:xiedeyong2008@126.com,谢谢
回复

使用道具 举报

ID:79544 发表于 2015-8-30 21:52 | 显示全部楼层
南天白云 发表于 2015-8-23 10:06
请问楼主,你资料传到哪里?我给你邮箱号码:,谢谢

不会发啊,我传到论坛里啦,你好好找找。
回复

使用道具 举报

ID:92134 发表于 2015-10-16 18:51 | 显示全部楼层
歇歇分享
回复

使用道具 举报

ID:162969 发表于 2017-1-26 16:18 | 显示全部楼层
腾飞的龙 发表于 2015-8-20 17:14
很多我不会发啊,蓝牙模块用HC-06从机的就行。

什么叫从机???
回复

使用道具 举报

ID:162969 发表于 2017-1-26 16:20 | 显示全部楼层
占空比是哪上面的???怎么还有引脚可以插》???/
回复

使用道具 举报

ID:162969 发表于 2017-1-26 16:21 | 显示全部楼层
你这是几轮驱动???
回复

使用道具 举报

ID:163526 发表于 2017-2-5 17:02 来自手机 | 显示全部楼层
江哥,会写蓝牙智能小车的软件?
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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