智能车制作

 找回密码
 注册

扫一扫,访问微社区

123
返回列表 发新帖
楼主: f123456
打印 上一主题 下一主题

蓝牙与电机控制会有冲突吗

  [复制链接]

4

主题

91

帖子

0

精华

高级会员

Rank: 4

积分
805
威望
416
贡献
239
兑换币
265
注册时间
2014-2-24
在线时间
75 小时
21#
 楼主| 发表于 2014-5-4 18:41:07 | 只看该作者
Still 发表于 2014-5-4 17:21
加大发送速率应该有效,相对控制周期来说,来说串口速度是比较慢的,再不行 就得巧妙利用中断了,比如在中断 ...

多谢,领教了
回复 支持 反对

使用道具 举报

0

主题

20

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
273
威望
166
贡献
63
兑换币
50
注册时间
2012-4-28
在线时间
22 小时
毕业学校
伊高
22#
发表于 2014-5-9 18:56:16 | 只看该作者
蓝牙一条发送周期太长,影响系统执行周期。可以多加几条蓝牙发送指令对比不加发送指令,观察效果。
回复 支持 反对

使用道具 举报

4

主题

91

帖子

0

精华

高级会员

Rank: 4

积分
805
威望
416
贡献
239
兑换币
265
注册时间
2014-2-24
在线时间
75 小时
23#
 楼主| 发表于 2014-5-10 15:09:26 | 只看该作者
瑾瑜 发表于 2014-5-9 18:56
蓝牙一条发送周期太长,影响系统执行周期。可以多加几条蓝牙发送指令对比不加发送指令,观察效果。

好的,谢谢
回复 支持 反对

使用道具 举报

6

主题

308

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1467

活跃会员奖章优秀会员奖章

威望
701
贡献
410
兑换币
428
注册时间
2014-1-6
在线时间
178 小时
24#
发表于 2014-5-10 15:18:46 | 只看该作者
看下你的管脚有没有复用错了
回复 支持 反对

使用道具 举报

7

主题

96

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1344
威望
681
贡献
405
兑换币
431
注册时间
2013-10-12
在线时间
129 小时
25#
发表于 2014-5-10 16:30:47 | 只看该作者
额,你改一下那个串口波特率试试,可能是你的串口发送数据时间太长导致控制周期出问题。。
回复 支持 反对

使用道具 举报

12

主题

222

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3757
威望
1885
贡献
1062
兑换币
1229
注册时间
2013-12-14
在线时间
405 小时
26#
发表于 2014-5-16 20:22:28 | 只看该作者
f123456 发表于 2014-4-27 17:45
肯定是占周期了,不知道怎么解决

问下楼主怎么解决的啊,我最近也遇到了这个问题了--
回复 支持 反对

使用道具 举报

4

主题

91

帖子

0

精华

高级会员

Rank: 4

积分
805
威望
416
贡献
239
兑换币
265
注册时间
2014-2-24
在线时间
75 小时
27#
 楼主| 发表于 2014-5-16 21:29:39 | 只看该作者
▲_important゜ 发表于 2014-5-16 20:22
问下楼主怎么解决的啊,我最近也遇到了这个问题了--

改周期,一个周期里别发送太多了
回复 支持 反对

使用道具 举报

12

主题

222

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3757
威望
1885
贡献
1062
兑换币
1229
注册时间
2013-12-14
在线时间
405 小时
28#
发表于 2014-5-17 10:04:38 | 只看该作者
f123456 发表于 2014-5-16 21:29
改周期,一个周期里别发送太多了

一个5ms内就发送一个浮点变量也不多吧
回复 支持 反对

使用道具 举报

4

主题

91

帖子

0

精华

高级会员

Rank: 4

积分
805
威望
416
贡献
239
兑换币
265
注册时间
2014-2-24
在线时间
75 小时
29#
 楼主| 发表于 2014-5-17 13:04:51 | 只看该作者
▲_important゜ 发表于 2014-5-17 10:04
一个5ms内就发送一个浮点变量也不多吧

后来效果不是很好,不用了
回复 支持 反对

使用道具 举报

2

主题

8

帖子

0

精华

注册会员

Rank: 2

积分
85
威望
57
贡献
18
兑换币
22
注册时间
2013-8-28
在线时间
5 小时
30#
发表于 2015-4-18 11:57:58 | 只看该作者
能请教一个问题吗?自己想用手机通过蓝牙模块控制直流电机的运作,但是两部分单独测试的时候可以运作,但是将两部分程序和在一起就不能实现控制,求帮忙看一下程序哪个地方出现错误
  1. //蓝牙模块外加流水灯效果
  2. #include <reg52.h>                                                                                                          
  3. #include <intrins.h>
  4. #define uchar unsigned char
  5. #define uint  unsigned int

  6. uchar tmp;
  7. uchar i,j;
  8. uint ldutycycle=0  ; //左边电机的占空比
  9. uint t=0;                //定时器中断计数器

  10. sbit flin1=P3^4;//前轮驱动
  11. sbit flin2=P3^5;
  12. sbit fena=P1^1;
  13. sbit Turn_key=P1^4;

  14. void driveinit();
  15. void init();                                   //串口初始化
  16. void send(unsigned char a);        //单字节发送函数
  17. void ctrl();                                 //接收处理函数
  18. void delay(unsigned int i);  //声明延时函数

  19. void main()
  20. {
  21.         init();
  22.         driveinit();
  23.      while(1)
  24.      {         
  25.        if(RI==1)  // 是否有数据到来
  26.        {
  27.           RI = 0;
  28.           tmp = SBUF;  // 暂存接收到的数据
  29.                   ctrl();
  30.                 }      
  31.       }
  32. }

  33. void driveinit()          //电机驱动初始化
  34.                   {
  35.                      flin1=0;
  36.                      flin2=1;
  37.                   }
  38. void timer0() interrupt 3                  //定时中断+pwm
  39. {  
  40.         if(t<ldutycycle)
  41.         {
  42.                 fena=1;                          //假设的ena控制左边,enb控制右边
  43.          }
  44.         else
  45.         {
  46.                 fena=0;
  47.         }
  48.         t++;
  49.         if(t>100)
  50.         t=0;
  51.         TH0=(65536-1000)/256;
  52.         TL0=(65536-1000)%256; //周期5ms        ,给初值
  53. }
  54.                
  55. void goforward()                  //前进
  56. {       
  57.         flin1=1;
  58.         flin2=0;
  59.         ldutycycle=30;                  
  60. }
  61. void goback()                          //后退
  62. {
  63.         flin1=0;
  64.         flin2=1;
  65.         ldutycycle=30;
  66. }
  67. void delay(unsigned int i)
  68. {
  69.     unsigned char j;
  70.     for(i; i > 0; i--)
  71.         for(j = 255; j > 0; j--);

  72. }
  73. void init()        //串口初始化
  74. {

  75.                   ES=0;       
  76.                   TMOD=0x21;                                                          //关中断
  77.                   SCON = 0x50;
  78.                   TH0=(65536-1000)/256;
  79.                   TL0=(65536-1000)%256; //周期1ms
  80.                   TH1=TL1=0xFD;
  81.                   PCON &= 0x7f;         //波特率不倍增
  82.                   EA=1;                                        //总中断
  83.                   ET0=1;                                //开定时中断
  84.                   TR0=1;                                //启动定时器
  85.                   TI=0;                                        //发送标志位置0
  86.                   RI=0;                                        //接收标志位置0
  87.                   ES=1;
  88.                   P2=0x55;
  89. }   
  90. void send(unsigned char a)        //单字节数据发送
  91. {                                                        //注意:若单片机TXD(P3.1)无上拉能力,必须在P3.1端接上拉电阻。本次测试需要接上拉电阻
  92.         TI=0;       
  93.         SBUF=a;
  94.         while(TI==0);
  95.         TI=0;
  96. }

  97. void ctrl()                            //接收处理函数
  98. {
  99.                                     switch(tmp)
  100.                                   {
  101.                                            case '1':
  102.                                            goforward();
  103.                                            break();
  104.                                         default:                   //其他,灯全灭
  105.                                                   goback();
  106.                                                   send(tmp);
  107.                                   }
  108. }
复制代码
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-11-6 13:52 , Processed in 0.107121 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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