1、电子系统设计基于51单片机的循迹测雷小车电子系统设计课程设计报告基于51单片机的智能循迹测雷小车班级:组员1:组员2:组员3:任课老师:高嵩2013年6月20日目录目录 摘要 1系统方案论证与比较 1.1 电机驱动模块 1.2 7806和7808供电模块 1.3 单片机最小系统模块 1.4 传感器模块 2详细软硬件分析 2.1 整体框图 2.3 核心电路原理图 2.4 软件设计 3系统调试 3.1 硬件调试 3.2 软件调试 3.3 软硬联调 4.结论 参考文献 附录:源程序 基于51单片机的智能循迹测雷小车摘要:本系统以ATMEL公司的89C51单片机为控制核心,采用7805和7808电源模
2、块,采用LM298驱动电路控制直流电机转动,利用5个光电传感器对路面进行检测,制成了传感器控制电机转动的系统,满足题目设计要求,并可通过外部中断0对金属传感器进行检测,从而达到检测到“雷”时停车并报警的作用关键词:金属传感器;光电传感器;STC89C51;LM298;7805等 Based on 51 single-chip smart car tracking mine detectionAbstract: This system ATMEL Corporation 89C51 microcontroller core, using 7805 and 7808 power supply mo
3、dule, driving circuit using LM298 DC motor rotation control, the use of five photoelectric sensors to detect the road surface, made of a sensor control motor rotation system, designed to meet the subject requirements and through external interrupt 0 on the metal sensor to detect, so as to achieve de
4、tection Ray stop and alarm when the role ofKeywords: metal sensor; photoelectric sensor; STC89C51; LM298; 7805, etc.1系统方案设计本系统主要由LM298组成的电机驱动模块、7805和7808供电模块、红外检测模块、以STC89C51单片机为控制核心的控制模块组成,下面分别论述这几个模块的选择。1.1 电机驱动模块本系统最初设想采用ULN2003(图1)进行驱动,当时ULN2003驱动效果太差,电机无法达到所需的转速,所以我们采用了效果更好的LM298驱动电路,图1L298N是SG
5、S公司的产品,内部包含4通道逻辑驱动电路。是一种二相和四相电机的专用驱动器,即内含二个H桥的高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,可驱动46V、2A以下的电机。可以通过LM298的逻辑功能(图2)表来很好的控制电机的转动图2LM298电机驱动模块的电路图如下:1.2 7805和7808供电模块7805三端稳压集成电路,顾名思义,三端IC是指这种稳压用的集成电路,只有三条引脚输出,分别是输入端、接地端和输出端。用78系列三端稳压IC来组成稳压电源所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路,使用起来可靠、方便,而且价格便宜。在实际应用中,应在三端集成稳压电路上安
6、装足够大的散热器。下图为具体电路图。7808与7805类似,这里不作过多解释。1.3 单片机最小系统单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统。对51系列单片机来说,最小系统一般应该包括:单片机、晶振电路、复位电路。对于单片机最小系统而言,晶振的大小决定了其处理速度,所以我们采用了11.0592M的晶振。具体电路图如下:1.4 传感器模块利用红外对管进行信号的采集,经电压比较后可直接送入单片机I/O口,另外一个为金属传感器,用法较为简单,只需接+8v左右电压即可工作,无需外围电路。2详细软硬件分析2.1 整体框图2.2 软件设计2.2.1 功能分析单片机主
7、要实现以下几个方面的功能:(1)传感器信号的采集及数据处理;(2)控制电机驱动;(3)中断信号采集与处理;2.2.2 软件设计对各主要功能块的软件设计如下:(1)传感器信号及数据处理。采用单片机P0口,对接收到的信号进行处理(2)根据采集到的信号对电机进行控制。根据测得的电压值,处理后发给LM298进行控制 2.2.3 软件设计流程图图11 程序流程框图3系统调试系统调试分为硬件调试、软件调试及软硬联调3.1 硬件调试硬件根据理论值进行元器件的选择、绘制电路图、焊接电路、调试。由于精度和干扰的影响,往往得到的结果和理论分析值又有一定的偏差,所以硬件调试难度很大。3.2 软件调试本系统的软件程序
8、完全由C51编写,C语言效率高,但同时也存在一些缺点,比如控制电机转速比较困难,需要用到PWM波,故省去了这一控制。在调试过程中采取的是自上至下的调试方法,单独调试好每一个模块,然后在联结成一个完整的系统调试。3.3 软硬联调由于本系统的软硬件联系很紧密,一般是一个接收和一个发送就能直接和硬件相联进行工作,因此在软硬件通调的情况下,系统的软硬件联调的难度不大。4.结论 通过本次电子设计设计课程设计,深刻体会到了理论联系实践的重要性,体会到了调试电路的复杂性,对自己的综合能力有了较大提升。参考文献1 余小平,奚大顺.电子系统设计.第一版.北京:北京航空航天大学出版社,2007.32 童诗白,华成
9、英.模拟电子技术基础.第四版.北京:高等教育出版社,2006.53 谭浩强.C程序设计.第三版.北京:清华大学出版社,2008.11附录:源程序核心控制程序:#include#define uchar unsigned char#define uint unsigned intsbit in1 = P00; /循迹模块的信号输入管脚配置sbit in2 = P01;sbit in3 = P02;sbit in4 = P03;sbit in5 = P04;sbit out1=P20;sbit out2=P21;sbit out3=P22;sbit out4=P23;uchar x=0;sbit
10、P06=P06;uchar Count;sbit Speak =P05; /蜂鸣器器控制脚void Delay_xMs(uint x) uint i,j; for(i=0; ix; i+) for(j=0; j0;i-) for(j=a;j0;j-) void delay_500ms(uchar a) unsigned char i,j,k,l; for(i=15;i0;i-) for(j=200;j0;j-) for(k=150;k0;k-); for(l=a;l0;l-); void play(uchar i) while(i) Speak=0; delay(200); Speak=1;
11、delay(200); i-; void extern0() interrupt 0 /x=1; EA=0; dengdai(); Speak=0;/ delay_500ms(100);/ Play_Song(0); play(6) ;/ Speak=Speak; qianjin(); delay(200); EA=1; void xunji() if(in1=0&in2=1&in3=1&in4=1&in5=1) while(!in1) zuozhuan2(); if(in1=1&in2=0&in3=1&in4=1&in5=1) while(!in2) zuozhuan2(); if(in1=1&in2=1&in3=0&in4=1&in5=1) while(!in3) qianjin(); if(in1=1&in2=1&in3=1&in4=0&in5=1) while(!in4) youzhuan2(); if(in1=1&in2=1&in3=1&in4=1&in5=0) while(!in5) youzhuan2(); void main() delay_500ms(5); EA=1; EX0=1; IT0=0; qianjin(); while(1) xunji();
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1