山东大学威海分校机电与信息工程学院课程设计课程名称单片机原理与应用课题名称数字转速表的设计专业班级学号姓名任课教师2010年月日-2-山东大学威海分校机电与信息工程学院课程设计任务书课程名称单片机原理与应用课题数字转速表的设计专业班级学生姓名学号指导老师审批任务书下达日期2010年月日任务完成日期2010年月日-3-设计内容与设计要求设计内容:本课题要求以MCS-51系列单片机为核心,设计一个智能化的数字转速表对脉冲转速信号进行检测,能将所测量的转速在LED显示器上显示(十进制),并具有方便的键盘操作(启动、停止、复位)功能。设计要求:1)确定系统设计方案;2)进行系统的硬件设计;3)完成必要的参数计算与元器件选择;4)完成应用程序设计;5)应用程序的调试。-4-主要设计条件单片机通过检测脉光电冲信号计算电机的转速,利用单片机实验台上电机转速检测脉冲(每转1个)进行程序设计和调试,测速范围0~3000转/分,转速表至少有启动和复位两个操作按键,转速显示要求至少4位。说明书格式1.课程设计任务书2.目录3.总体方案确定4.各单元硬件电路设计说明及计算方法5.软件设计与说明(包括流程图)6.调试结果与必要的调试说明7.使用说明8.程序清单10、总结11、参考文献附录附录A系统原理图附录B程序清单附录C器件清单-5-进度安排设计时间为两周第一周星期一、上午:布置课题任务,讲课及课题介绍下午:借阅有关资料,总体方案讨论星期二、总体方案星期三、系统设计及调试星期四、系统设计及调试星期五、软件设计及调试第二周星期一、软件设计及调试星期二、软件设计及调试星期三、软件设计及调试星期四、写说明书星期五、上午:写说明书,整理资料下午:交设计资料,答辩-6-目录目录...............................................................................................................-6-第1章前言.................................................................................................-7-第2章基本原理.........................................................................................-7-第3章总体设计思路.................................................................................-8-3.1设计方案................................................................................................-8-第4章硬件电路的设计方案.....................................................................-8-4.1LED显示部分的电路设计.................................................................-9-4.2按键电路设计........................................................................................-9-第5章软件设计方案...............................................................................-10-5.1显示当前转速.......................................................................................-10-5.2十进制转换为二进制程序框图...........................................................-11-5.3脉冲个数的求取...................................................................................-12-5.4键盘电路...............................................................................................-12-第6章系统调试.......................................................................................-14-6.1软件模拟仿真......................................................................................-14-6.2硬件调试..............................................................................................-14-第7章总结与体会...................................................................................-14-第8章参考文献.......................................................................................-15-附录.............................................................................................................-16--7-第1章前言单片机作为嵌入式微控制器在工业测控系统,智能仪器和家用电气中得到广泛应用。虽然单片机的品种很多,但MCS-51系列单片机仍不失为单片机中的主流机型。本课程一MCS-51系列以及派生系列单片机芯片为主介绍单片机的原理与应用,与其特点是由浅入深,注重接口技术和应用。近年来,微型计算机的发展速度足以让世人惊叹,以计算机为主导的信息技术作为一种崭新的生产力,正在向社会的各个领域渗透,也使机电一体化的进程大大加快。机电一体化是当今制造技术和产品发展的主要倾向,也是我国机电工业发展的必由之路。可以认为,它是用系统工程学的观点和方法,研究在机电系统和产品中如何将机械、计算机、信息处理和自动控制技术综合应用,以求机电系统和产品达到最佳的组合。机电一体化产品所需要的是嵌入式微机,而单片机具有体积小、集成度高、功能强等特点,适于嵌入式应用。智能仪器、家用电器、数控机床、工业控制等机电设备和产品中竟相使用单片机。就目前而言,单片机的发展势头依然不减,各种型号和功能更强的单片机和超级接口芯片不断出现,进一步向高层次发展的重要标志就是构成多机系统和分布式网络。世界上单片机芯片的产量以每年27%的速度递增,到本世纪初已达30亿片,而我国的年需求量也超过了亿片的数量,这表明单片机有着广阔的应用前景。本课程设计主要针对目前我国早期应用比较广泛的“MCS-51”单片机进行系统的讲解和分析。为使用和开发各类机电一体化设备和仪表建立基础。第2章基本原理利用AT89C51作为主控器组成一个转速表。电机转速采用光电脉冲传感器来测量,设置定时器/计数器T0和T1,利用其内部定时器T1设置为定时方式,且定时时间为1s。计数器T0设置为外部脉冲计数工作方式,设在1s内测量的脉冲个数为n,又由于脉冲频率为60个脉冲/转,故测到转速n就是脉冲频率。定时1s,在1s内允许中断,每中断一次,软件计数器加1,1s后,关闭中断,则软件计数器即为1s内的脉冲数,通过计数一定时间内通过定时器的脉冲数通过软硬件结合工作即可测出电机的转速。-8-第3章总体设计思路3.1设计方案该系统的功能概括起来就是能测量当前电机的转速,并且进行超速报警。要完成此功能,关键在于转速的测量,电机转速采用传感器或由信号发生器的方波脉冲信号来模拟,因此只要在给定的时间内对脉冲计数,即可测出转速。例如,可将脉冲信号接到引脚,外部中断1选择边沿触发方式。MCS-51单片机内有两个定时器/计数器T0和T1,利用其内部定时器T1设置为定时方式,且定时时间为1s。计数器T0设置为外部脉冲计数工作方式,设在1s内测量的脉冲个数为n,又由于脉冲频率为60个脉冲/转,故测到转速n就是脉冲频率。定时1s,在1s内允许中断,没中断一次,软件计数器加1,1s后,关闭中断,则软件计数器即为1s内的脉冲数,设为m,则转速n=m。我们采用8031作为基本元件.在P3.6口输入脉冲,按下启动键后开始输入脉冲,输入脉冲的同时,定时器和计数器开始工作,这期间允许中断,当定时器到时时,定时器和计数器停止工作。此时计数器已经统计1s内的脉冲数即转速。第4章硬件电路的设计方案根据设计要求和设计思路,硬件电路有三部分组成,即单片机按键电路,LED显示器电路和程序存储器在单片机中,定时功能既可以由硬件(定时/记数器)实现,也可通过软件定时实现。硬件定时是利用单片机内定时器定时,启动以后定时器可与CPU并行工作,不占用CPU时间,CPU有较高的工作效率。采用硬件定时和软件定时并用的方式,即用T0溢出中断功能实现50ms定时,通过软件延时程序实现1s定时。定时器的TMOD用于设置定时器/计数器的工作方式0~3,并确定用于定时还是用于计数。TCON主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。-9-图4-1硬件电路设计图4.1LED显示部分的电路设计本课题所采用得是由LED(数码管)作为显示电路,用以显示由单片机所接收的脉冲来转换的BCD码,以及开始测速时的初始状态。其硬件电路连接是单片机P0.0~P0.7接数码管的由A~G的8各管脚,P2.4~P2.7接数码管的控制端,采用共阴极连接的方法连接图如图4-2所示。图4-2键盘接法图4.2按键电路设计对按键电路的设计可以由2种方式:一种方式是直接按键设计,这种设计电路适用于按键较少的控制;另一种方式是矩阵式键盘的设计,它适用于对控制按键较多的电路控制。本课题总共设计按键有3个启动、停止、复位。由于课题调试采用的LK-51单片机键盘采用的是矩阵式键盘,为方便电路的调试,因此我所采用矩阵键盘作为控制按键。LED显示器8031脉冲源键盘-10-接法如图4-3所示。图4-3按键电路第5章软件设计方案根据设计要求和设计思路,进行模块设计。8279的初始化程序模块,定时计数程序模块,数制转换模块,显示模块,转速测量模块。5.1显示当前转速转速的显示我们采用了动态扫描的工作方式,LED数码显示管采用4联工阴极显示器,该器件内部已将4个数码显示器的同名字段端并接在一起,从上到下4个数码管的公共阴极分别由一个引脚引出,L1~L4表示。P1口为字型口,P2口为字位口,每个口都经过集电极开路形式的驱动器74LS47驱动。得到脉冲个数n启动-11-T0开始定时T1开始计数图5-1显示当前转速程序流程图5.2十进制转换为二进制程序框图NY图5-2二进制程序框图由于给定的转速上限值是以十进制的形式存在于44H---47H单元中,而比较程序所需要的是二进制数,故把二进制数转换成十进制数。转换后十进制数存入在脉冲个数m转化为转速n显示子程序3→R20→R3((R0))→R4R2R4*10→R3R4(R0)+1→R0(R3R4)+((R0))→R3R4返回MMmaxx报警程序赋初值R2-1=0