重庆机电职业技术学院课程设计说明书设计名称:单片机原理设计题目:数字电子秒表学生姓名:XX专业:电气自动化班级:1班学号:XXXXXXXXXXXXXXX指导教师:XXX日期:2010年6月16日重庆机电职业技术学院重庆机电职业技术学院课程设计任务书电气自动化专业2008年级1班XX一、设计题目数字电子秒表设计二、主要内容利用独立式按键AN1(P0.0)启动定时器T0计时,AN2(P0.1)停止用于停止定时器T0计时,使用2个八段数码管输出记时值,秒钟的计时时间范围在0~99秒内。三、具体要求3.1、实验电路连线①本实验中要把跳线JP1(板子右上角,LED灯正上方)跳到DIG上,J23(在黄色继电器右上方)接到右端;把跳线J9(紧贴51插座右方,蜂鸣器下方,RST复位键上方)跳到右端;把跳线J6跳到AN端,AN1(P0.0)~AN4(P0.4),(J6在51插座右下方,4×4键盘左上方)。3.2、实验说明①本实验中要将记时结果送2个数码管中显示,这可通过调用编写的显示子程序来实现,实现过程是:先将记时值一位一位的拆开,分别送到显示缓冲区(片内数据存储30H~35H设定为显示缓冲区用于存放段码数据,其中32H~35H里面均存放0的段码0DFH)中去,然后调用显示子程序。②与定时器有关的寄存器有工作方式寄存器TMOD和控制寄存器TCON。TMOD用于设置定时器/计数器的工作方式0-3,并确定用于定时还是用于计数。TCON主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。本实验中用定时器T0产生1秒钟基本时间单位,本系统fosc=11.0592MHz,当定时器T0工作在方式1(16位)时,最大定时时间为:216*0.9216μs=60397.9776μs;再利用软件记数,当T0中断17次时,所用时间为60397.9776*17=1026765.6192μs≈1s因此在T0中断处理程序中,要判断中断次数是否到17次,若不到17次,则只使中断次数加1,然后返回,若到了17次,则使电子秒表记时值加1(十进制),请参考硬件实验四有关内容。③使用独立式按键AN1(P0.0)~AN2(P0.1)时要注意采用软件消抖动的方法,一般采用软件延时(10ms)的方法,即通过P0.0和P0.1的输入值的变化控制秒表的启动和停止。3.3、实验仪器和设备:PC机、WAVE软件、51超级板等。3.4、参考程序框图开始拆R0中秒的数值,获得其十进制数的个位(R1),十位(R2)查七段字型表求出对应BCD码,送到显示缓冲区30H~32H依次通过P1选择数码管,将30H~35H的数依次送P2口,实现其显示返回重庆机电职业技术学院A显示子程序框图否AN2按下AN1按下是均未按下B主程序框图CT0中断主程序程序框图4、参考资料见附件四、进度安排第1天:编写显示子程序;第2天:完成硬件调试;第3天:编写主程序和T0中断子程序第4天:完成硬件调试第5天:实现课程设计题目要求,完成课程设计五、成绩评定指导教师签名日期年月日系主任审核日期年月日开始保护现场数重赋T0时间常数秒数加1,值送寄存器R0恢复中断次数记数初值中断次数记数减为0?恢复现场返回开始显示初始化T0初始化启动T0停止T0AN1和AN2哪个按下?调用显示子程序重庆机电职业技术学院1目录一、设计任务分析····················································································1二、系统总体方案的设计···········································································12.1系统设计所需硬件·······································································1三、试验设计原理图·················································································2四、软件设计分析····················································································34.1程序流程图:···············································································34.2程序清单·····················································································4五、试验设计总结····················································································5重庆机电职业技术学院第1页共6页一、设计任务分析1、利用单片机定时器/计数器中断设计秒表,从而实现秒、十分之一秒的计时。2、综合运用所学的《单片机原理与应用》理论知识,通过实践加强对所学知识的理解,具备设计单片机应用系统的能力。3、通过本次课程设计加深对单片机掌握定时器、外部中断的设置和编程原理的全面认识复习和掌握,对单片机实际的应用作进一步的了解。4、通过本次试验,增强自己的动手能力。认识单片机在日常生活中的应用的广泛性、实用性。二、系统总体方案的设计本实验利用单片机的定时器/计数器定时和记数的原理,通过采用proteus仿真软件来模拟实现。模拟利用AT89C51单片机、LED数码管以及控件来控制秒表的计数以及计数的开启与复位。计秒数码管采用两位的数码管,当计数超过范围是所有数码管全部清零重新计数。2.1系统设计所需硬件Atmel89C51单片机芯片一个、LED数码显示管两个,低压电源、开关(按钮)两个、电阻、电容及导线若干。由于条件限制本实验采用软件模拟硬件系统,采用proteus软件进行模拟设计及调试工作。图1七段数码管引脚图重庆机电职业技术学院第2页共6页图2Atmel89C51单片机外部引脚图三、试验设计原理图图3试验设计电路图重庆机电职业技术学院第3页共6页四、软件设计分析4.1程序流程图:是否是否手动开关定时器溢出中断对定时器重新赋值进行加一操作后重新计算时间往P2口送显示时间数码管显示中断返回主函数对定时器/计数器初始化始化程序开始判断P0^4口是否有低电平信号开中断并启动定时器开始、计数置零判断P0^7口是否有低电平信号重庆机电职业技术学院第4页共6页4.2程序清单org00hljmpmainorg001bhljmpt1intmain:movsp,#70hmovtmod,#10hmovtl1,#30hmovth1,#0f8hmovie,#88hmovr7,#10clrtr1up1:mov30h,#10hmov31h,#20hmovp2,30hlcalld2msanlp2,#00hmovp2,31hlcalld2msanlp2,#00hjbp1.4,up1setbtr1up2:movp2,30hlcalld2msanlp2,#00hmovp2,31hlcalld2msanlp2,#00hjnbp0.1,up2mova,#1ahcjnea,30h,up2mova,#2ahcjnea,31h,up2sjmpmaint1int:movtl1,#30hmovth1,#00hdjnzr7,t1int1movr7,#10inc30hmova,#1ahcjnea,30h,t1int1mov30h,#10hinc31hmova,#2ahcjnea,31h,t1int1mov31h,#20ht1int1:retid2ms:movr6,#2d1:movr5,#250djnzr5,$djnzr6,d1ret重庆机电职业技术学院第5页共6页五、试验设计总结通过这一周的课程设计,我对一些专业知识和电子设计有了更深的了解,同时也尝试着去应用自己的所掌握的知识。本次电子课程设计主要是对已学习的模拟电子技术、数字电子技术和单片机的综合应用,同时加上电路等知识,设计完成了利用软件模拟的秒表。经过几天的奋战,我感受很深.在设计过程中深感自己在培养动手能力这方面还需很大的努力。同时把这个课程设计作为一次锻炼,为以后生活学习中培养善于动手,乐于动手的习惯。单片机课程设计不仅给我们提供了一个很好的展现应用自己所掌握的知识的平台,又是检验自己所学知识的一次考核。在设计的过程中我也不可避免的遇到了很多的问题。尤其是在调试过程中,会因为某些原因出不来结果,通过这次的课程设计,我也发现了不少自己不会的知识,通过查询各方面资料,我也进步了很多,有学会了很多上课时没掌握的东西,最后在调试结果出来后,我更是无比的兴奋,无比的自豪。总之,通过这次电子课程设计,我不仅对自己的知识有了更好的掌握和应用,在以后的学习和生活中受用终身.二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。但是,实际工作中并不是任何需要计算机的场合都要求计算机有很高的性能,一个控制电冰箱温度的计算机难道要用P4吗?应用的关键是看是否够用,是否有很好的性能价格比。单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。自从1976年问世以来,单片机获得了巨大的发展。现在比较流行的单片机是美国Intel的MCS51/96以及Motorola的MC系列,Zilog的Z8系列,同时还有更多新型的、功能更强的单片机不断出现。目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。重庆机电职业技术学院第6页共6页中国使用单片机的历史只有短短的30年,在初始的短短五年时间里发展极为迅速。纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能IC卡、电子宠物等,这些都离不开单片机。以前没有单片机时,这些东西也能做,但是只能使用复杂的模拟电路,然而这样做出来的产品不仅体积大,而且成本高,并且由于长期使用,元器件不断老化,控制的精度自然也会达不到标准。在单片机产生后,我们就将控制这些东西变为智能化了,我们只需要在单片机外围接一点简单的接口电路,核心部分只是由人为的写入程序来完成。这样产品的体积变小了,成本也降低了,长期使用也不会担心精度达不到了。所以,它的魔力不仅是在现在,在将来将会有更多的人来接受它、使用它。据统计,我国的单片机年容量已达3亿片,且每年以大约20%的速度增长,但相对于世界市场我国的占有率还不到1%。特别是沿海地区的玩具厂等生产产品多数用到单片机,并不断地辐射向内地。所以,学习单片机在我国是有着广阔前景的。