《课程设计报告(综合)(共24页).doc》由会员分享,可在线阅读,更多相关《课程设计报告(综合)(共24页).doc(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上装订线基于单片机的系统设计题 目 频率计和数字钟 学 院 电子信息工程学院学科门类 单片机 班 级 08电工 学 号 姓 名 指导教师 2011年 05月18日一、 实验目的(1)学习基于单片机的系统设计;(2)学习单片机电路设计和制版工艺;(3)学习单片机的软件设计;二、实验要求(1)要求每位同学设计单片机最小系统;(2)每位同学自己设计硬件电路设计和程序编写;(3)每位同学自己完成调试;(4)认真细心的安装焊接。三、使用的主要器材(1)单片机及其他元件一套;(2)工具一套;(3)信号源一台;四、实验步骤4.1设计硬件电路4.1.1信号电路设计4.1.2 单片机外围
2、电路设计41.3 LED驱动电路设计4.1.4 串行通讯电路4.1.5 电源电路4.1.6 按键控制电路4.1.7 总电路图如图1-1图1-14.1.8 总的PCB电路图4.2根据设计电路清点全套零件,并负责保管;4.3对元器件引线或引脚进行镀锡处理,注意镀锡层未氧化(可焊性好)时可以不再处理 ;4.4检查印制板的铜箔线条是否完好,有无断线及短路,特别注意边缘;4.5安装元器件,元器件安装质量及顺序直接影响整机质量及成功率,合理的安装需要思考及经验;4.6软件设计4.6.1 软件设计流实现两个功能,一个数字钟,一个频率计。上电复位,默认为数字钟状态。当为数字钟状态时,按下K1键,则为频率计,按
3、K2则返回数字钟状态。用计数的方法来测量频率,T1作为计数器,T0作为定时器,当定时1s时,T1所计的数,就是频率。数字钟时候,按下K3选择位,K2加一,K1减一,K4返回。程序流程图2-1图2-1程序: ORG 0000H LJMP LIYAN0 ORG 000BH LJMP TT0 LIYAN0:MOV TMOD,#51H MOV TH0,#3CH MOV TL0,#0B0H ;定时器初值(定时 50ms) MOV PSW,#00H MOV TH1,#00H MOV TL1,#00H SETB EA SETB ET0 SETB TR0 CLR TR1 CLR EX0 MOV 30H,#20
4、 ;50ms*20=1s MOV 31H,#00H ;频率计个位 MOV 32H,#00H ;频率计十位 MOV 33H,#00H ;频率计百位 MOV 34H,#00H ;频率计千位 MOV 35H,#00H ;频率计万位 MOV 36H,#00H ;数字钟秒个位 MOV 37H,#00H ;数字钟秒十位 MOV 38H,#00H ;数字钟分个位 MOV 39H,#00H ;数字钟分十位 MOV 3AH,#00H ;数字钟时个位 MOV 3BH,#00H ;数字钟时个位 MOV 3CH,#10H MOV 3DH,#10H ;和3DH一起实现选为闪烁功能 MOV 3EH,#06H ;K3,实现
5、选位 MOV 3FH,#00H ;存TH1数据 MOV 40H,#00H ;存TL1数据 MOV 41H,#03H ;测频率时候,实现一个周期三秒,占空比一秒方波 MOV 42H,#00H ;实现TT0中是否跳过测频率程序 MOV 43H,#00H MAIN0:MOV P2,#0F5H ;主程序(数字钟) MOV 3EH,#06H MOV P1,#01H MOV 31H,#00H MOV 32H,#00H MOV 33H,#00H MOV 34H,#00H MOV 35H,#00H MOV 42H,#00H MOV TH1,#00H MOV TL1,#00H CLR TR1 SETB TR0
6、YY:CLR C MOV C,P2.5 ;k1选择测频率 JNC MAIN1 MOV C,P2.7 JNC LIYAN LCALL LED0 SJMP YY LIYAN:LCALL DELAY ;测频率主程序 JNC LI0 LJMP MAIN0 LI0:MOV P1,#00H SETB TR1 MOV 42H,#01H LI2:CLR C MOV C,P2.6 JNC LI1 MOV R2,3FH MOV R3,40H LCALL BCD LCALL LED2 SJMP LI2 LI1:LCALL DELAY JNC MAIN0 ;k2返回主程序 LJMP LI2 MAIN1:LCALL D
7、ELAY ;数字钟选择位主程序 JNC A0 LJMP MAIN0 A0:CLR TR0DJNZ 3CH,N0 SJMP N1 N0:LCALL LED0 SJMP N2 N1:DJNZ 3DH,N3 MOV 3CH,#10 MOV 3DH,#10 SJMP N2 N3:LCALL LED1 MOV 3CH,#1 N2:MOV C,P2.4 JNC A1 MOV C,P2.5 JNC B0 MOV C,P2.6 JNC C0 MOV C,P2.7 JNC EE1 LJMP A0 A2:LJMP MAIN0 A1:LCALL DELAY ;k4,返回主程序 JNC A2 LJMP A0 B0:L
8、CALL DELAY0 JC A0 DEC 3EH MOV A,3EH CJNE A,#0FFH,A0 MOV 3EH,#05H SJMP A0 EE1:LJMP EE0 C0:LCALL DELAY0 ;加一程序 JC A0 MOV DPTR,#JIA1 MOV A,3EH MOV B,#02H MUL AB JMP A+DPTR JIA1:AJMP RTU0 AJMP RTU1 AJMP RTU2 AJMP RTU3 AJMP RTU4 AJMP RTU5 RTU5:INC 36H MOV A,36H CJNE A,#10,U5 MOV 36H,#00H U5:LJMP A0 RTU4:I
9、NC 37H MOV A,37H CJNE A,#6,U4 MOV 37H,#00H U4:LJMP A0 RTU3:INC 38H MOV A,38H CJNE A,#10,U3 MOV 38H,#00H U3:LJMP A0 RTU2:INC 39H MOV A,39H CJNE A,#6,U2 MOV 39H,#00H U2:LJMP A0 RTU1:INC 43H MOV A,43H CJNE A,#24,U1 MOV 43H,#00H U1:LCALL BCD1 LJMP A0 RTU0:MOV A,43H ADD A,#10MOV 43H,A CLR CSUBB A,#24JC U
10、0CLR CMOV A,43HSUBB A,#30JNC U7CLR CMOV A,43HSUBB A,#20 U7:MOV 43H,A U0:LCALL BCD1 LJMP A0 A9:LJMP A0 EE0:LCALL DELAY0 ;减一程序 JC A9 MOV DPTR,#JIAN1 MOV A,3EH MOV B,#02H MUL AB JMP A+DPTR JIAN1:AJMP JTU0 AJMP JTU1 AJMP JTU2 AJMP JTU3 AJMP JTU4 AJMP JTU5 JTU5:MOV A,36H JZ JJ0 DEC 36HSJMP J0JJ0:MOV 36H,
11、#09H J0:LJMP A0 JTU4:MOV A,37H JZ JJ1 DEC 37HSJMP J1JJ1:MOV 37H,#05H J1:LJMP A0 JTU3:MOV A,38H JZ JJ2 DEC 38HSJMP J2JJ2:MOV 38H,#09H J2:LJMP A0 JTU2:MOV A,39H JZ JJ3 DEC 39H SJMP J3JJ3:MOV 39H,#05H J3:LJMP A0 JTU1:MOV A,43H JZ JJ4 DEC 43HSJMP J4JJ4:MOV 43H,#23 J4:LCALL BCD1 LJMP A0 JTU0:MOV A,43H CL
12、R CSUBB A,#10JNC J5 MOV A,43HCLR CSUBB A,#4JC JJ5MOV A,#10ADD A,43HSJMP J5JJ5:MOV A,#20 ADD A,43H J5:MOV 43H,A LCALL BCD1 LJMP A0 LED:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH LED0:MOV P2,#0F5H MOV A,36H MOV DPTR,#LED MOVC A,A+DPTR MOV P0,A LCALL DELAY ;5 MOV P2,#0F4H MOV A,37H MOV DPTR,#LED MOVC A
13、,A+DPTR MOV P0,A ;4 LCALL DELAY MOV P2,#0F3H MOV A,38H MOV DPTR,#LED MOVC A,A+DPTR SETB ACC.7 MOV P0,A ;3 LCALL DELAY MOV P2,#0F2H MOV A,39H MOV DPTR,#LED MOVC A,A+DPTR MOV P0,A LCALL DELAY ;2 MOV P2,#0F1H MOV A,3AH MOV DPTR,#LED MOVC A,A+DPTR SETB ACC.7 MOV P0,A LCALL DELAY ;1 MOV P2,#0F0H MOV A,3B
14、H MOV DPTR,#LED MOVC A,A+DPTR MOV P0,A LCALL DELAY ;0 RET LED1:MOV P2,#0F5H MOV A,3EH CJNE A,#05H,D0 CLR A MOV P0,A SJMP DD0 D0:MOV A,36H MOV DPTR,#LED MOVC A,A+DPTR MOV P0,A DD0:LCALL DELAY ;5 MOV P2,#0F4H MOV A,3EH CJNE A,#04H,D1 CLR A MOV P0,A SJMP DD1 D1:MOV A,37H MOV DPTR,#LED MOVC A,A+DPTR MOV
15、 P0,A ;4 DD1:LCALL DELAY MOV P2,#0F3H MOV A,3EH CJNE A,#03H,D2 MOV A,#80H MOV P0,A SJMP DD2 D2:MOV DPTR,#LED MOV A,38H MOVC A,A+DPTR SETB ACC.7 MOV P0,ADD2:LCALL DELAY ;3 MOV P2,#0F2H MOV A,3EH CJNE A,#02H,D3 MOV A,#00H MOV P0,A SJMP DD3 D3:MOV A,39H MOV DPTR,#LED MOVC A,A+DPTR MOV P0,A DD3:LCALL DE
16、LAY ;2 MOV P2,#0F1H MOV A,3EH CJNE A,#01H,D4 MOV A,#80H MOV P0,A SJMP DD4 D4:MOV A,3AH MOV DPTR,#LED MOVC A,A+DPTR SETB ACC.7 MOV P0,A DD4:LCALL DELAY ;1 MOV P2,#0F0H MOV A,3EH CJNE A,#00H,D5 MOV A,#00H MOV P0,A SJMP DD5 D5:MOV A,3BH MOV DPTR,#LED MOVC A,A+DPTR MOV P0,A DD5:LCALL DELAY ;0 RET LED2:M
17、OV A,31H MOV DPTR,#LED MOVC A,A+DPTR MOV P0,A MOV P2,#0F5H LCALL DELAY MOV A,32H MOV DPTR,#LED MOVC A,A+DPTR MOV P0,A MOV P2,#0F4H LCALL DELAY MOV A,33H MOV DPTR,#LED MOVC A,A+DPTR MOV P0,A MOV P2,#0F3H LCALL DELAY MOV A,34H MOV DPTR,#LED MOVC A,A+DPTR MOV P0,A MOV P2,#0F2H LCALL DELAY MOV A,35H MOV
18、 DPTR,#LED MOVC A,A+DPTR MOV P0,A MOV P2,#0F1H LCALL DELAY MOV A,#00H MOV DPTR,#LED MOVC A,A+DPTR MOV P0,A MOV P2,#0F0H LCALL DELAY RET TT0:PUSH ACC ;T0定时器 PUSH PSWMOV PSW,#10H DJNZ 30H,L2MOV 30H,#20MOV A,42HCJNE A,#01H,L6CLR TR1MOV R0,#3FHMOV R0,TH1INC R0MOV R0,TL1 DJNZ 41H,L6 MOV 41H,#03H MOV TH1,
19、#00H MOV TL1,#00HSETB TR1 L6:INC 36H MOV A,36H CJNE A,#10,L2 MOV 36H,#00H INC 37H MOV A,37H CJNE A,#6,L2 MOV 37H,#00H INC 38H MOV A,38H CJNE A,#10,L2 MOV 38H,#00HINC 39HMOV A,39H CJNE A,#6,L2MOV 39H,#00HINC 43HMOV A,43HCJNE A,#24,L2MOV 43H,#00H L2:LCALL BCD1 POP PSW POP ACC MOV TH0,#3CH MOV TL0,#0B0
20、H RETI BCD:CLR A;把16位二进制变为十进制 MOV R4,A MOV R5,A MOV R6,A MOV R7,#16 LOOP:CLR C MOV A,R3 RLC A MOV R3,A MOV A,R2 RLC A MOV R2,A MOV A,R6 ADDC A,R6 DA A MOV R6,A MOV A,R5 ADDC A,R5 DA A MOV R5,A MOV A,R4 ADDC A,R4 DA A MOV R4,A DJNZ R7,LOOP MOV R1,#31H MOV A,R6 ANL A,#0FH MOV R1,A MOV A,R6 ANL A,#0F0H
21、 SWAP A INC R1 MOV R1,A MOV A,R5 ANL A,#0FH INC R1 MOV R1,A MOV A,R5 ANL A,#0F0H SWAP A INC R1 MOV R1,A INC R1 MOV A,R4 MOV R1,A RET BCD1:MOV A,43H MOV B,#10 DIV AB MOV 3AH,B MOV 3BH,A RET DELAY:MOV R6,#10 ;定时2.5ms(动态扫描) L0:MOV R7,#123 NOP L1:DJNZ R7,L1 DJNZ R6,L0 RET DELAY0:MOV R5,#10 ;按键消抖 L5:MOV
22、R6,#200 L3:MOV R7,#123 NOP L4:DJNZ R7,L4 DJNZ R6,L3 DJNZ R5,L5 RET END五、实验总结课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.对我们学工科的同学来说尤为重要!本次课程设计,是基于单片机的最小系统设计。我设计是频率计,且适合测试频率相对较高的,当频率较低时候,误差大。回顾起此次电气课程设计,至今我仍感慨颇多,的确,从理论到实践,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且
23、学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说变压器不懂怎么去选,对电路PCB制版软件掌握得不好通过这次课程设计之后,一定把以前所学过的知识重新温故。这次课程设计终于顺利完成了,在设计中遇到了很多专业知识问题,最后在老师的辛勤指导下,终于游逆而解。同时,在老师的身上我们学也到很多实用的知识,在次我们表示感谢!同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢!专心-专注-专业