蓝牙串口通信遥控小车_第1页
蓝牙串口通信遥控小车_第2页
蓝牙串口通信遥控小车_第3页
蓝牙串口通信遥控小车_第4页
蓝牙串口通信遥控小车_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

蓝牙串口通信遥控小车 目录目录 1 系统方案论证及方案选择 2 本系统软硬件设计 2 1 单元硬件电路设计 2 2 软件部分设计 参考文献 附录 1 原器件清单 附录 2 电路原理图及印制板图 附录 3 程序 1 系统方案论证及方案选择系统方案论证及方案选择 1 总体设计方案总体设计方案 题目要求设计一个蓝牙串口遥控小车 通过对电机转速的控制 调节速 度的大小 改变小车角度 并能实现转弯和旋转 设计主要由主控单片机 STC12C5A60S2 驱动直流电机 使车轮工作 带动小车的转动 2 基本工作原理基本工作原理 3 STC89C52RC 有定时器有定时器 T0 T1 T2 在自动控制领域经常把在自动控制领域经常把 T1 作为串口通信了作为串口通信了 T0 作作 PWM 调速用因此有必要把调速用因此有必要把 T2 定时器拿出来作定时器作为声音频谱程序 下面介绍定时器拿出来作定时器作为声音频谱程序 下面介绍 T2 的的 用法用法 STC89C52RC 有定时器有定时器 T2 void main void T2 定时器赋预装载值 溢出定时器赋预装载值 溢出 16 次就是次就是 1 秒 秒 RCAP2H 65536 5000 256 RCAP2L 65536 5000 256 ET2 1 允许允许 T2 定时器中断定时器中断 EA 1 打开总中断打开总中断 TR2 1 启动启动 T2 定时器定时器 while 1 死死 循环 等待循环 等待 T2 定时器的溢出中断定时器的溢出中断 void Timer2 Server void interrupt 5 static uint Timer2 Server Count 定义静态变量 用来计数定义静态变量 用来计数 T2 定时器的溢出次数 进入定时器的溢出次数 进入 本函数的次数 本函数的次数 TF2 0 T2 定时器发生溢出中断时 需要用户自己清除溢出标记 定时器发生溢出中断时 需要用户自己清除溢出标记 而而 51 的其他定时器是自动清除的的其他定时器是自动清除的 Timer2 Server Count if Timer2 Server Count 16 T2 定时器的预装载值为定时器的预装载值为 0 x0BDC 溢出 溢出 16 次就是次就是 1 秒钟 秒钟 Timer2 Server Count 0 P1 7 P1 7 LED11 反转显示 反转显示 void Timer2 Server void interrupt 5 static uint Timer2 Server Count 定义静态变量 用来计数定义静态变量 用来计数 T2 定时器的溢出次数 进入定时器的溢出次数 进入 本函数的次数 本函数的次数 TF2 0 T2 定时器发生溢出中断时 需要用户自己清除溢出标记 定时器发生溢出中断时 需要用户自己清除溢出标记 而而 51 的其他定时器是自动清除的的其他定时器是自动清除的 Timer2 Server Count if Timer2 Server Count 16 T2 定时器的预装载值为定时器的预装载值为 0 x0BDC 溢出 溢出 16 次就是次就是 1 秒钟 秒钟 Timer2 Server Count 0 P1 7 P1 7 LED11 反转显示 反转显示 2 本系统软硬件设计本系统软硬件设计 系统主要由单片机产生 PWM 信号 通过电机驱动轮胎的旋转 对其的转 速进行控制 使车子行驶前进 根据题目要求 我们的设计分硬件 软件两部 分 2 1 单元硬件电路设计单元硬件电路设计 2 1 1 51 单片机最小系统的制作方案设计单片机最小系统的制作方案设计 2 1 2 小车小车 51 系统系统 驱动 马达 驱动 马达 电池的接线电池的接线 2 1 3 蓝牙与单片机和马达的接线蓝牙与单片机和马达的接线 附录附录 1 主要元器件清单主要元器件清单 序号序号名称名称规格规格数量数量 1 1 锂电池 配套充电器18650 7 4V 2200mAh 锂电池 锂电充电器 1 1 2 2 L298N 直流电机驱动板 带 5V 3A 输出 L298N 驱动芯片双 H 桥直流电机驱动芯片 驱动部分峰值电流 2A 带 5V 3A 输出 1 1 3 3 ZK 1 小车底盘 1 个 5mm 加厚底盘 2 个直流减速电机 2 个优质橡胶 轮胎 万向轮 电机导线 螺丝螺母 铜柱 码盘等 1 1 4 4 51 蓝牙串口模块蓝牙串口模块带电源转换电路支持 5V 供电 1 1 5 5 2 54mm 杜邦线40P 彩色杜邦线 双头 1P 对 1P 长 20CM 一排 40 根 1 1 6 6 瓷片电容22P 插件 2 2 7 7 单排针40P 1 根 1 1 8 8 轻触开关 6 6 61 1 9 9 电解电容 10uf 35V1 1 1010 电阻470 欧 5 色环直插 1 1 1111 电阻10K 5 色环直插 1 1 1212 电路板PCB 覆铜板板或者 5x7 万用版 1 1 1313 超声波测距模块 HC SR041 1 1414 超声波测距模块支架支架需要配套的螺丝螺母 1 1 1515 晶振 11 0592M1 1 1616 40P IC 座插件 DIP40 1 1 1717 单片机学习板 1 1 附录附录 2 电路原理图及印制电路板图电路原理图及印制电路板图 1 2 3 4 5 超声波串口模块 附录附录 3 程序程序 1 主程序主程序 include define uchar unsigned char define uint unsigned int uint ma mb mc PWM 6000 sbit out1 P1 2 motoA1 sbit out2 P1 3 motoA2 sbit out3 P1 4 motoB1 sbit out4 P1 5 motoB2 bit PWMIO void delay uint t 延时程序 1 uchar j while t for j 1 j 0 j void init TMOD 0 x21 设置定时器 1 为工作方式 2 设置定时器 0 为工作方 式 1 TH1 0 xfd TL1 0 xfd TH0 65536 20000 256 20ms 定时器 T0 中断一次 TL0 65536 20000 256 SCON 0 x50 TR1 1 EA 1 ES 1 ET0 1 TR0 1 void you 右急弯 out1 1 out2 0 out3 0 out4 1 delay 100 void zuo 左急弯 out1 0 右轮正转 out2 1 out3 1 左轮反转 out4 0 delay 100 void qian 前进 out1 0 out2 1 out3 0 out4 1 delay 100 void hou 后退 out1 1 out2 0 out3 1 out4 0 delay 200 void leftup 左前 out1 0 右轮正转 out2 1 out3 0 左轮 PWMIO 输出调慢 out4 PWMIO void rightup 右前 out1 0 右轮 PWMIO 输出调慢 out2 PWMIO out3 0 左轮正转 out4 1 void leftdown 左后 out1 1 右轮后退 out2 0 out3 PWMIO out4 0 void rightdown 右后 out1 PWMIO out2 0 out3 1 左轮后退 out4 0 void ting 停止 out2 0 out4 0 out3 0 out1 0 void main init while 1 if RI RI 0 ma SBUF switch ma case a qian break 前 case b hou break 后退 case c zuo break 左急弯 case d you break 右急弯 case e leftup break 左前 case f rightup break 右前 case g leftdown break 左后 case h rightdown break 右后 case s ting break 停 void TT0 interrupt 1 TH0 65536 20000 PWM 256 20ms 定时器 T0 中断一次 进行 PWM 切换实现 5ms 高电平 15ms 低电平的 PWM 脉冲 TL0 65536 20000 PWM 256 PWM 20000 PWM PWMIO PWMIO void ser interrupt 4 2 子程序子程序 include define uchar unsigned char define uint unsigned int uint ma mb mc PWM 6000 sbit out1 P1 2 motoA1 sbit out2 P1 3 motoA2 sbit out3 P1 4 motoB1 sbit out4 P1 5 motoB2 bit PWMIO PWMA 3 10 30 50 PWMB 3 10 30 50 void delay uint t 延时程序 1 uchar j while t for j 1 j 0 j void init TMOD 0 x21 设置定时器 1 为工作方式 2 设置定时器 0 为工作方 式 1 TH1 0 xfd TL1 0 xfd TH0 65536 20000 256 20ms 定时器 T0 中断一次 TL0 65536 20000 256 SCON 0 x50 TR1 1 EA 1 ES 1 ET0 1 TR0 1 void you 右急弯 out1 1 out2 0 out3 0 out4 1 delay 100 void zuo 左急弯 out1 0 右轮正转 out2 1 out3 1 左轮反转 out4 0 delay 100 void qian 前进 out1 0 out2 PWMIO1 out3 0 out4 PWMIO2 delay 100 void hou 后退 out1 1 out2 0 out3 1 out4 0 delay 200 void leftup 左前 PWM1 PWMA 1 PWM2 PWMA 0 out1 0 右轮正转 out2 PWMIO1 out3 0 左轮 PWMIO 输出调慢 out4 PWMIO2 void rightup 右前 out1 0 右轮 PWMIO 输出调慢 out2 PWMIO out3 0 左轮正转 out4 1 void leftdown 左后 out1 1 右轮后退 out2 0 out3 PWMIO out4 0 void rightdown 右后 out1 PWMIO out2 0 out3 1 左轮后退 out4 0 void ting 停止 out2 0 out4 0 out3 0 out1 0 void 3dang 右后 i PWM1 PWMA i PMW2 PWMB i if i 3 i 0 void main init while 1 if RI RI 0 ma SBUF switch ma 下面程序需要自行另外修改 添加前 后退 左转圈 右转圈 左前 弯 PWM 右前弯 PWM 左自旋 右自旋 PWM 换档位 双闪灯 鸣笛 播放音乐 显示运行时间 显示光强 超声波测距并避障等功能 case a qian break 前 case b hou break 后退 case c zuo break 左急弯 case d you break 右急弯 case e leftup break 左前 case f rightup break 右前 case g leftdown break 左后 case h rightdown break 右后 case s ting break 停 case x 3dang break 停 void TT0 interrupt 1 TH0 65536 400 256 TL0 65536 400 256 t if t PWM1 PWMIO1 1 if t PWM2 PWMIO2 1 if t 50 t 0 PWMIO1 0 PWMIO2 0 void ser interrupt 4 3 串口通信的初始化 4 利用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论