当前位置:首页 > (最新版)单片机遥控车的毕业课程设计
3. 图中连接了两路电机,P2 和P5 是一一对应关系,如果只驱动一路电机可以连接对应的12 或者34 引脚。
4. 八个续流二极管是为了消除电机转动时的尖峰电压保护电机而设计,简化电路时可以不加。
5. 6脚和11 脚为两路电机通道的使能开关,高电平使能,所以可以直接接高电平,也可以交由单片机控制。
6. 由于工作时L298 的功耗较大,可以适当加装散热片。
4 软件实施
4.1 相关知识简介
本次设计主要用到Keil uVision3和ISIS 7 Professional这两个软件。 KeilSoftware公司推出的uVision3是一款可用于多种8051MCU的集成开发环境(IDE),该IDE同时也是PK51及其它开发套件的一个重要组件。除增加了源代码、功能导航器、模板编辑以及改进的搜索功能外,uVision3还提供了一个配置向导功能,加速了启动代码和配置文件的生成。此外其内置的仿真器可模拟目标MCU,包括指令集、片上外围设备及外部信号等。uVision3提供逻辑分析器,可监控基于MCUIO引脚和外设状态变化下的程序变量。
ISIS 7 Professional是一个可以实现元件仿真的软件,在单片机实物未成之前可以检查错误,并且观察结果。 4.1.1 程序总体的设计
对于简单的智能小车程序设计来说,直接的定义然后实现向前、向后、左转右转等功能。具体是设计各有不同如简单的while语句轮流判断就可以实现类似的功能,本次设计在这个基础之上还加了液晶显示屏,在小车运行的时候可以显示:“Intelligent car love you”代码如下:
#include \延时函数 {
uint x,y;
for(x=n;x>0;x--)
for(y=110;y>0;y--); }
void lcd_wcom(uchar com) 1602写命令函数 {
RS=0; 选择指令寄存器 RW=0; 选择写 P2=com; 把命令字送入
delay(5); 延时一小会儿,让1602准备接收数据 EN=1; 使能线电平变化,命令送入1602的8位数据口 EN=0; }
void lcd_wdat(uchar dat) 1602写数据函数 {
RS=1; 选择数据寄存器 RW=0; 选择写 P2=dat; 把要显示的数据送入
delay(5); 延时一小会儿,让1602准备接收数据 EN=1; 使能线电平变化,数据送入1602的8位数据口 EN=0; }
void lcd_init() 1602初始化函数 {
lcd_wcom(0x38); 8位数据,双列,5*7字形 lcd_wcom(0x0c); 开启显示屏,关光标,光标不闪烁
lcd_wcom(0x06); 显示地址递增,即写一个数据后,显示位置右移一位 lcd_wcom(0x01); 清屏 } main () {
uchar n,m=0;
lcd_init(); 液晶初始化
lcd_wcom(0x80); 显示地址设为80H(即00H,)上排第一位 for(m=0;m<16;m++) 将table[]中的数据依次写入1602显示
{
lcd_wdat(table[m]); delay(200);
}
lcd_wcom(0x80+0x44); 重新设定显示地址为0xc4,即下排第5位 for(n=0;n<8;n++) 将table1[]中的数据依次写入1602显示 { }
while(D0==1)前 { IN1=1; IN2=0; IN3=1; IN4=0; }
while(D1==1)后 { IN1=0; IN2=1; IN3=0; IN4=1;
lcd_wdat(table1[n]); delay(20);
}
while(D2==1)左 { IN1=0; IN2=1; IN3=1; IN4=0; }
while(D3==1)右 }
{ IN1=1; IN2=0; IN3=0; IN4=1; } IN1=0; IN2=0; IN3=0; IN4=0;
4.2 系统实施中的关键技术
液晶显示屏、发射器、接收器的使用、驱动和STC-TSP-15xx-V6.67C.exe软件对89C52芯片的烧写等等。
4.3 系统测试
4.3.1 测试的目标
软件测试是系统质量保证的主要活动之一。测试虽然不是质量保证的“安全网”。但它是不可缺少的,而且是重要的环节。因为,在系统开发的过程中,
共分享92篇相关文档