单片机蓝牙控制小车.docVIP

  • 17
  • 0
  • 约1.36万字
  • 约 27页
  • 2020-07-28 发布于福建
  • 举报
课 题: 基于单片机的蓝牙控制小车 专 业: 班 级: 学 号: 姓 名: 指导教师: 设计日期: 成 绩: 重庆大学城市科技学院 电气信息学院 课程设计目录 PAGE I 目录 TOC \o 1-3 \h \z \u 1.设计目的作用 2 2.设计要求 2 3.设计的具体实现 2 3.1设计原理 2 3.2系统设计 12 3.3系统实现 13 4.总结 19 参考文献 20 附录 21 附录1 21 附录2 22 课程设计正文 PAGE 24 C51蓝牙控制小车设计报告 1设计目的与意义 目的与意义:提高学生动手能力,培养学生的思维,巩固理论知识,让我们能对单片机更加深入的了解,加深同学们对单片机的认识,通过自己动手让小车跑起来还能让同学们更加有积极性,参与感,成就感。让学生们亲自体验这门课程的神奇性。 因为无线技术的广泛使用,使蓝牙技术的发展成为了趋势之一,蓝牙可以发送和接受语音和数据,满足了大多数人的需求,它也融合了其他相关产品的特点,也是这样技术变得更多样性。实现了无线控制小车,摆脱了有线控制的不方便,更加智能。 2设计要求 SPP 蓝牙串口调试助手 》聊天窗口--》 1、在Bluetooth_Car项目中添加超声波躲避障碍功能 (在小车前进的过程中,实时检测障碍物,一旦检测的距离,接近设定的值,触发蜂鸣器,报警系统工作,小车停止前进); 2、在Bluetooth_Car项目中的串口中断服务函数中,添加小车前进的8个方向 ,前后左右,左前,右前,左后,右后; 3、利用外部中断,强制停止小车运行(无论小车现在处于什么状态),蜂鸣器报警1s后,可再运行; 4、用手机的蓝牙串口调试助手来远程操作小车。 3.设计的具体实现 3.1设计原理 芯片常识: STM8、C52 、STM32 、ARM C52:主要做末端的控制 11.0592MHZ STM32:主要做工业控制领域——智能设备 168M ARM:主要做消费市场——手机 ==============单片机小车========== 了解原理图和数据手册 一、软件建立工程 建立工程时芯片选择--》Atmel--AT89C52 设置芯片频率,选择生成16进制可执行文件。 =============中断======== 单片机获取外部数据的方式: 1.程序控制方式 a.无条件发送方式 单片机认为外部设备一直都是准备好的,直接就拿数据使用。 b.条件判断方式 在满足一定条件才获取数据。 2.中断方式 由外部控制的,当有中断请求产生的时候,就可以在中断里面去实现获取数据。 3.DMA直接存储控制器 当需要从外界获取数据的时候,DMA可以向CPU申请获取数据,由DMA直接获取数据。使用DMA可以绕过CPU处理数据,降低CPU的使用率。 中断:当CPU正常运行的时候,突然收到一个中断请求(任务),完成中断任务之后立即返回原来的程序继续执行。中断源:中断来源,发送中断的源头 中断请求:中断发出的请求,申请执行任务 中断响应:CPU响应中断请求,暂停正在执行的任务,转而执行中断任务 8个中断源: INT0 外部中断0 INT1 外部中断1 INT2 外部中断2 INT3 外部中断3 T0 定时器0 T1 定时器1 T2 定时器2 Uart 串口中断 中断有优先级: 分为4级,从0~3,数字越大优先级越高,高优先级的中断可以打断低优先级的中断。 中断的查询次序: 在中断优先级相同的情况下,并且两个中断同时产生的时候,会优先执行查询次序级别高的中断.查询次序不能打断中断. 中断服务函数: void INT1_func(void) interrupt 2 { if() } 小车两轮驱动: 单片机的IO口不能直接驱动电机运行,必须使用驱动模块才可以。 电机转动原理: 电机的两条线一根接电源正极,一根接负极就可以转动,当电极的方向改变,转动的方向也会改变。 BIA = 1; BIB = 0; 控制右轮电机,如果想让轮子转动,只需要设置以上两个引脚,一个为1,一个为0. P0.0 左轮 1 P0.1 左轮 0 P0.2 右轮 1 P0.3 右轮 0 如果轮子想要动起来,需要接电源线。 思考: 封装函数:前进、后退、停止、左前转、右前转、左后转、右后转 =============定时器============== 定时器就是定时,定时产生中断或者是计数。 工作方式: 定

文档评论(0)

1亿VIP精品文档

相关文档