模拟智能小车单片机课程设计报告.doc
《模拟智能小车单片机课程设计报告.doc》由会员分享,可在线阅读,更多相关《模拟智能小车单片机课程设计报告.doc(21页珍藏版)》请在沃文网上搜索。
1、摘要:本课程设计采用共阳数码管显示系统,以AT89S52单片机为核心,由键盘、数码显示、LED灯等电路模块组成。本设计利用按键来模拟红外壁障信号;利用LED灯来模拟小车电机;实现小车壁障、左右转弯、倒退、PWM调速等功能。关键字: AT89S52单片机 模拟小车 PWM 目 录1. 系统设计41.1设计要求41.2 实现方案41.2.1设计思路41.2.2设计方案41.2.3系统结构框图42.1电源电路52.1.1电路原理图52.2最小系统模块52.3模拟传感器、电机模块62.3.1 电路原理图62.3.2 工作原理62.4显示模块72.4.1 电路原理图72.4.2 工作原理及参数选择73.
2、 软件设计73.1 软件功能及算法73.2 软件流程图84. 系统测试95. 结论97. 参考文献98. 附录9附录(一) 原器件明细表9附录(二) 原理图10附录(三) PCB图10附录(四) 主程序清单101. 系统设计1.1设计要求利用单片机设计模拟小车,设计任务如下: (含工作电源)1、 采用发光二极管代替电机,用光的强度表示电机快慢;2、 利用PWM来控制电机,用数码管显示两个电机的占空比和正反转; 3、 具有按键控制电机速度功能;4、 用复位按键来模拟壁障传感器。1.2 实现方案1.2.1设计思路本设计需要实现模拟小车,通过按键来模拟外部传感器,通过系统以AT89S52为核心,主要
3、有显示模块、指示灯模块、按键模块和单片机软件控制模块构成。1.2.2设计方案根据设计的要求,分四部分进行设计:第一部分:电源电路;第二部分:由AT89S52芯片及晶振等构成最小系统电路;第三部分:由按键构成模拟传感器电路、电机电路;第四部分:显示电路。1.2.3系统结构框图AT89S52单片机在模拟传感器键、切换键和调整键的控制下,由P0口输出段码数据,通过P2.42.7进行位选通,有数码管显示信息;由P2.02.3输出脉冲,发光二极管亮度不一。系统框图: 图一 系统框图 2. 单元电路设计2.1电源电路2.1.1电路原理图2.1.2工作原理:220V交流电,通过变压器T变压后输出9V交流电,
4、经D1-D4桥式整流、C5电解电容滤波、三端稳压集成电路7805稳压后输出5V直流电,供给控制电路工作。2.2最小系统模块如图三所示,单片机(AT89S52)9脚为复位输入端。上电及按键复位,只要RST引脚上有大于二个机器周期以上的高电平,单片机(AT89S52)即复位。所以电阻R13选470,R14选4K7,C4选104即可;单片机(AT89S52)的XTAL1脚、XTAL2脚接一个由12M晶振和10pf组成的振荡电路。为单片机提供相应的时序。图二 最小系统原理图2.3模拟传感器、电机模块图三 模拟传感器2.3.1 电路原理图图四 模拟电机 2.3.2 工作原理及参数选择 模拟传感器:如图三
5、,按键从单片机(AT89S521)的P1.01.2口接入,当按键被按下时,相应的输入口就会输入低电平0。视为壁障传感器的有效信号。 模拟电机:如图四,四个发光二极管代表左右两副电机的正反转,通过P2.0P2.3口输出的PWM来控制其速度(灯的亮度);参数选择:由于发光管的正常发光的压降约为1.8V,电流约为3mA,故限流电阻选1K。2.4显示模块 2.4.1 电路原理图图五 数码显示原理图2.4.2 工作原理及参数选择如图四所示,由单片机(AT89S52的引脚P0口输出PWM占空比、电机正反转指示等数据信息,通过位选信号P2.42.7就可在相应的数码管进行显示和闪烁。当位选信号P2.42.7为
6、低电平时,P0口送出数据也为低电平就点亮数码管,电流灌进单片机。由于使用灌电流的方式驱动数码管,故选用PNP型三极管9012;数码管能正常工作的段电流为3mA-10 mA,压降为1.7V,三极管发射极和集电极的压降为0.3V,因此限流电阻的压降为3.0V,所以选用限流电阻的阻值R=470欧。3. 软件设计3.1 软件功能及算法主程序主要起到一个导向和决策功能,控制程序的走向。本系统在主程序中运用模块化结构,所有控制量集中处理,提高了处理效率,并在RAM建立各控制量的映射,方便各功能模块的编程及修改。运用散转结构,可实现无扰动重入。本设计主要有以下几个模块:PWM设置模块、小车正常模拟行走模块。
7、操作说明:上电复位后进入PWM设置模块;按esw2左右脉冲宽度加5,按esw3左右脉冲宽度减5;按esw1进入小车正常模拟行走模块,在这模块中按sw2表示左传感器有信号,按sw3表示右传感器有信号;再按esw1进入上个模块;按RET键单片机复位单片机内部资源分配:#ifndef _vardfn_H_#define _vardfn_H_#include #define uchar unsigned char#define uint unsigned int/*=*/=按键定义=uchar bdata Key;/电平变量uchar bdata Ekey;/键沿变量uchar data Keycnt
8、;/键去抖sbit esw1=Ekey0;/独立按键1sbit esw2=Ekey1;/独立按键2sbit esw3=Ekey2;/独立按键3sbit sw2=Key1;sbit sw3=Key2;/=4位数码管显示定义=uchar data Dsw;/uchar data Dsb0, Dsb1, Dsb2, Dsb3;/=端口定义=sbit cs0=P24;/ 数码管位选通位sbit cs1=P25;sbit cs2=P26;sbit cs3=P27;#define key_port P1 /#define disp_port P0/#define pwm_port P2/P2.0.3sbi
9、t pwm1=pwm_port0;sbit pwm2=pwm_port1;sbit pwm3=pwm_port2;sbit pwm4=pwm_port3;/=标志位定义=uchar bdata flag;/标志缓冲sbit szk=flag0;/闪烁总空位sbit fls=flag1;/闪烁控制位sbit M1_fwd=flag2;/电机1正传标志位sbit M2_fwd=flag3;/电机2正传标志位/*=全局变量=*/uchar data Sta;/定义模块转换寄存器uint data Num;/显示缓冲uchar data M1_LT,M1_cnt;/电机低电平时间,和脉冲计数器ucha
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模拟 智能 小车 单片机 课程设计 报告
