单片机课程设计报告-秒表设计.doc

上传人:飞****2 文档编号:60955225 上传时间:2022-11-19 格式:DOC 页数:15 大小:188KB
返回 下载 相关 举报
单片机课程设计报告-秒表设计.doc_第1页
第1页 / 共15页
单片机课程设计报告-秒表设计.doc_第2页
第2页 / 共15页
点击查看更多>>
资源描述

《单片机课程设计报告-秒表设计.doc》由会员分享,可在线阅读,更多相关《单片机课程设计报告-秒表设计.doc(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、单片机课程设计报告设计课题:秒表设计专业班级:电子*班学生姓名:*学号:*指教教师:* 设计时间:2011年5月306月19日目录一、 设计任务和要求.3(1)设计任务.3(2)设计要求.3二、 设计方案与论证.3三、 单元电路设计与参数计算.4(1)时钟电路.4(2)按钮电路.4(3)显示电路.5(4)单片机.5四、 原理图及器件清单.6( 1 )总原理图.6(2)PCB图.7(3)Proteus仿真图.7(4)元器件清单.8五、 安装与调试.8(1)安装.8(2)调试.8六、 性能测试和分析.9七、 结论和心得.9八、 参考文献.9秒表设计一、 设计任务和要求错误!未找到目录项。(1)设计

2、任务用AT89C51设计一个3位的LED数码作为“秒表”。(2)设计要求显示时间为0.0-99.9秒,每0.1秒自动加1,另外设计一个“开始”键、一个“复位”键和一个“停止”键。秒表可单独分别计时,且最多可计5次。二、方案设计与论证本设计分为时钟电路、按钮电路、显示电路和单片机四大部分,这些模块中单片机占主控地位。其模块电路如图2-1所示。时钟电路常用的有内部时钟方式和外部时钟方式,但因为本设计中只需要一片单片机,所以采用内部时钟方式比较简单。按钮电路中的“复位”按钮是按键手动复位,它有电平和脉冲两种方式,比较电路的复杂程度,本设计选择了按钮电平复位电路,其他几个按钮则是通过单片机判断高低电平

3、的不同来控制按钮。显示电路所用的数码管有共阴和共阳之分,不管使用何种数码管,P0口作为I/O使用时都是需要上拉电阻才能驱动数码管。另外,因为单片机的4个并行I/O口的输出电流一般是1mA,短路电流为4mA左右,而数码管的最少驱动电流也需要10mA,因而不管在使用共阴数码管时,单片机输出口也必须使用上拉电阻提高输出电流,才能驱动数码管。为了使电路简单化,本设计选用共阳数码管。 但根据显示方式的不同选择,我们可以有几种方案:方案一:使用静态显示方式。静态显示方式下的数码管的显示字符一经确定,相应锁存器锁存的断码输出將维持不变,直到送入另一个字符的断码为止。因而此设计中使用的显示位数使用了三个8位并

4、行I/0口。如果另外想扩展单片机功能,则能使用的输出管脚很是有限。方案二:使用动态显示方式。这个显示方式是将所有显示位的段码线的相应段并联在一起,由一个8位I/O口控制,而各位的共阴或共阴极分别由相应的I/O线控制,形成各位的分时选通。这种显示方式,简化了硬件电路,特别在多位数码管显示时尤为突出。本小组尝试了各种方案,在此报告中以静态显示方式为例说明。(动态显示方式省略)单片机AT89C51显示电路按钮电路时钟电路 图2-1三、单元电路设计与参数计算注:/单元电路设计中的网络标号的数字即为单片机的管脚/(1)时钟电路 图3-1 时钟电路如图3-1所示,时钟电路的晶振频率越高,系统的时钟频率越高

5、,单片机的运行速度也就越快。晶振频率根据设计需要设为12MHz,又根据谐振性质,电路中的电容C1、C2选择为30pF左右。该电容的的大少会影响振荡器频率的高低、振荡器的稳定性和起振的快速性。(2)按钮电路 图3-2a 图3-2bA、复位按钮根据计算容抗的公式以及并联电阻变小的性质,可以知道,当S13断开时,C3的容抗大,管脚9处的电位U9为电阻R3上的压降,因而U9为低电平,复位键无效。当S13按下时,R2与C3的并联阻抗变小,R3上的压降增大,U9为高电平,复位键有效,实现复位功能。本设计中C3取值22uF,电阻R2取值100欧姆,R3取值1K欧姆。具体电路如图3-2a所示。B、开始,停止、

6、翻页按钮 电路如图3-2b所示(3)显示电路P1口控制显示的是十位,p0口控制显示的是个位,P2口控制显示的是十分位。不同的数码管显示方式,对应的最适合的共阴或者共阳级的数码管也不同。静态显示的适宜选共阳的数码管,动态显示的适宜选共阴的数码管。如果动态显示方式下选择共阳的数码管,位选端直接用单片机驱动则数码管的亮度不够,因而应该在位选端使用上拉电阻以提高数码管的驱动电流,但因为显示那个的数据段选的数目不同,故而需要用电阻对各段进行限流,以保证显示的每个数据亮度相同。相同情况下,静态显示的数码管的亮度要比动态的亮。(4)单片机单片机的程序可用汇编语言也可用C语言,为了提高使用汇编语言的能力,本设

7、计特用了汇编语言了编写程序主程序流程图如下所示,具体程序见电子档。主程序流程图:程序开始程序初始化P1.7=?0开各中断P3.3=?0计五次?翻页调用显示子程序关定时器复位四、总原理图及元器件清单(1)总原理图(2)PCB图(3)Proteus仿真图(4)元器件清单1) AT89C51的引脚图和数码管5101BS的引脚图 图4-3a AT89C51引脚图 图4-3b 5101引脚图2)元器件总清单元件名称数量备注元件名称数量备注5101B3块AT89C511块按钮4个排阻1个8个引脚拨动开关1个电容2个33pF发光二极管1个红色电容1个100uF电阻2个1K晶振1个12MHz电阻1个100殴连

8、接器con2五、安装与调试(1)安装制板的顺序依次是:画原理图、做封装、在原理图中添加元器件对应的封装、布PCB板、改焊盘大少、打印PCB图、用快速制板机将PCB图烤制到铜板上、腐蚀铜板、钻孔、放置元器件、烙铁焊好器件。一块电路板就安装完毕了。(2)调试将外部电源接至电路板上,检验电路板是否完全实现设计要求。本设计中,发现按钮功能完全符合设计要求,但是数码管的显示中有些段码不亮,从而显示的数据乱码,用万用表检测对应的管脚是否有电压,发现焊盘有虚焊,引脚与引脚之间有短路,排查后电路板实现设计要求。六、性能测试与分析所制电路板虽然能实现设计中要求的功能,但是在实际使用中还是存在着许多缺陷。这块电路

9、板不能随意查看记录的数据,而是必须在计完五次数据后才能依次的翻页查看,复位后所计数据便会丢失,不能翻看历史,所计数据组数不能满足现实需要。七、结论与心得在这三周的课程设计中,不管是在软件方面还是硬件方面我都有了更深入的学习。八、参考文献(1)单片机原理及接口技术 张毅刚 彭喜元著 人民邮电出版社(2)单片机课程设计实例指导 李光飞等编著 北京航空航天大学出版社(3)51系列单片机原理、开发与应用实例 孙进平等编著 (4)单片机程序设计实例 先锋工作室编著 清华大学出版社(5)电子工程师之家 、豆丁网 、百度、搜狗、电子工程专辑 等等附程序如下: D EQU 60H E EQU 61H F EQ

10、U 62H G EQU 63H H EQU 64H I EQU 65H ORG 0000H LJMP MAIN ORG 000BH ;定时器T0的入口地址LJMP DINGSHIORG 0013H ;外部中断1的入口地址LJMP STOP1 ORG 0030H ;主程序入口地址MAIN: MOV P0,#0C0H ;置初值MOV P2,#0C0H MOV P1,#0C0HMOV DPTR,#TABLE ;数据指针指向表头地址SETB EA ;开中断 SETB EX0 SETB EX1 SETB ET0SETB PX0 ;设中断优先级SETB PX1MOV TMOD,#01H ;工作方式为方式1

11、;*;开始及计数程序;*START: MOV R0,#40H MOV R1,#50H MOV R2,#00HCLR P1.0 MOV TH0,#0D8H ;置计数初始值 MOV TL0,#0F0H MOV R3,#00H MOV R4,#00HMOV R7,#00H MOV B,#10 MOV SP,#30HMOV D,#60HMOV E,#61HMOV F,#62HMOV G,#63HMOV I,#65HMOV R5,#05XUNHUAN: JB P1.7,START1 ;p1.7=0是开始 LCALL DELAY10;按键消抖 JB P1.7,XUNHUAN JNB P1.7,$ LJMP

12、 GN1 LJMP XUNHUAN START1: JB P3.0,XUNHUAN LCALL DELAY10 JB P3.0,XUNHUAN JNB P3.0,$ LCALL FANYE LJMP XUNHUAN ;* ;翻页模块;*FANYE: MOV A,R0 MOV R3,A MOV A,R1 MOV R4,ADEC R5 CJNE R5,#04,LOP1 MOV A,D MOV R7,ALJMP L1LOP1:CJNE R5,#03,LOP2MOV A,E MOV R7,ALJMP L1LOP2:CJNE R5,#02,LOP3MOV A,F MOV R7,ALJMP L1LOP3:

13、CJNE R5,#01,LOP4MOV A,G MOV R7,ALJMP L1LOP4:CJNE R5,#00,FANYEMOV A,I MOV R7,ALJMP L1L1: INC R0 INC R1 INC R2 CJNE R2,#5,LOOP2 MOV R0,#40H MOV R1,#50H MOV R2,#00H LOOP2:LCALL XIANSHI RET ;*;数码管记录程序;*GN1: SETB TR0 LOOP:CJNE R2,#05H,LOOP MOV R0,#40H MOV R1,#50H MOV R2,#00H CLR EA AJMP XUNHUAN ;*;1毫秒延时子

14、程序;*DELAY1: MOV R6,#2DL1: MOV H,#248 DJNZ H,$ DJNZ R6,DL1 RET;*;10毫秒延时子程序;*DELAY10: MOV R6,#20DL2: MOV H,#248 DJNZ H,$ DJNZ R6,DL2 RET;*;外部中断1中断程序,停止模块;*STOP1 : PUSH ACC PUSH PSW LCALL DELAY10;延时10毫秒消抖 JB P3.3, FAN1 JNB P3.3,$ MOV A, R3 MOV R0 , A MOV A, R4 MOV R1, ADEC R5CJNE R5, #04, LOP5 MOV A, R

15、7 MOV D, ALJMP L4LOP5: CJNE R5, #03, LOP6 MOV A, R7 MOV E, A LJMP L4LOP6: CJNE R5, #02, LOP7 MOV A, R7 MOV F, A LJMP L4LOP7: CJNE R5, #01, LOP8 MOV A, R7 MOV G, A LJMP L4LOP8: CJNE R5, #00, STOP1 MOV A, R7 MOV I,A LJMP L4 L4: INC R0 INC R1 INC R2FAN1: POP PSW POP ACC RETI;*;显示子程序;*XIANSHI: MOV A ,R3

16、 ;扫描十分位上的数字 MOV DPTR ,#TABLE MOVC A ,A+DPTR MOV P2 ,A MOV A ,R4 ;扫描个位上的数字 MOV DPTR ,#TABLE MOVC A ,A+DPTR MOV P0 ,A MOV A ,R7 ;扫描十位上的数字 MOV DPTR ,#TABLE MOVC A ,A+DPTR MOV P1 ,A RET;*;定时器T0中断程序;*DINGSHI:PUSH ACC PUSH PSW DJNZ B,DH1 MOV B,#10 AJMP COUNTCOUNT: INC R3 CJNE R3,#0AH,DH2 MOV R3,#00H INC R4 CJNE R4,#0AH,DH2 MOV R4,#00H INC R7 CJNE R7,#0AH,DH2 MOV R7,#00H DH1: MOV TH0,#0D8H MOV TL0,#0F0H SETB TR0DH2: POP PSW POP ACC LCALL XIANSHI RETITABLE: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90HEND

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁