单片机课程设计资料袋_单片机课程设计资料

2020-02-28 其他范文 下载本文

单片机课程设计资料袋由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“单片机课程设计资料”。

课程设计说明书

课程名称:

单片机课程设计

设计题目: 255计数,50000计数,出租车计费 专

业: 电气工程及其自动化 班级:电气080

2学生姓名: 易鸣 学

号: 0812180203 指导教师: 石伟

湖南工业大学科技学院教务部 制

2011年 5月 24日设计思路、程序与仿真图

50000计数

1.1设计思路

0-50000计数:由于DIV AB指令中A B均为8为位寄存器,因此255二进制转十进制计数的方法不能用于0-50000的循环计数。可根据TH0或TH1中每一个二进制‘1’代表十进制的256,再和TL0或TL1按前一步二转十的方法转换得到百.十.个相加,即可完成16位二进制转十进制。

仿真图:

万位千位百位十位个位U119XTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD*********617U3:F***04818XTAL2U3:E109RSTU3:D12293031PSENALEEAU3:C57404612345678P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51U2123ABCY0Y1Y2Y3Y4Y5Y6Y7***0973U3:B4740417404U3:A2645E1E2E374HC138 程序:

ORG 0000H

SJMP MAIN

ORG 0040H MAIN:

MOV TMOD,#50H

;定时器T1初始化

MOV TL1,#0FFH

;存储空间初始化

MOV 70H,#00H

;保存个位

MOV 71H,#00H

;保存十位

MOV 72H,#00H

;保存百位

MOV 73H,#00H

;保存千位

MOV 74H,#00H

;保存万位

LOOP: SETB TR1

;启动T1

ACALL OUT

;调用显示子程序

MOV A,TL1

CJNE A,#00H,LOOP

ACALL BCD

;调用BCD码调整子程序

SJMP LOOP

RET

BCD:

MOV TL1,#0FFH

INC 70H

MOV A,70H

CJNE A,#0AH,EXIT

MOV 70H,#00H

INC 71H

MOV A,71H

CJNE A,#0AH,EXIT

MOV 71H,#00H

INC 72H

MOV A,72H

CJNE A,#0AH,EXIT

MOV 72H,#00H

INC 73H

MOV A,73H

CJNE A,#0AH,EXIT

MOV 73H,#00H

INC 74H

MOV A,74H

CJNE A,#05H,EXIT

MOV 74H,#00H

;BCD码调整子程序

;只能计数到49999,遇到50000会归零

EXIT:RET

OUT:

;显示子程序

MOV R1,#70H

MOV R5,#00H

MOV DPTR,#TAB LOOP1:

MOV A,R5

MOV P2,A

MOV A,@R1

MOVC A,@A+DPTR

MOV P0,A

ACALL DELAY

INC R1

INC R5

CJNE R5,#05H,LOOP1

RET

DELAY:

;延时子程序

MOV R7,#31

;1+(1+2*100+2)*31+1+2*11+1+2=6320

L1: MOV R6,#100

W1: DJNZ R6,W1

DJNZ R7,L1

MOV R4,#11

J1: DJNZ R4,J1

NOP

RET

TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H

;驱动LED显示表

出租车计费

1.2设计思路

出租车计费:在上步的基础上,每1个脉冲当作1公里(也可自己设置几个脉冲1公里),5个脉冲,数码管显示05.0005,前3位余额,后3位为里程,超过5个脉冲,里程加1,金额加0.8。难点主要在于计费金额的显示,可将初值置为50,其中十位调用带点的字型码,即显示05.0,超过5个脉冲,里程加1,金额加8,由于十位是带有小数点,即可实现金额加0.8元。

仿真图:

十元元角百位十位个位U119XTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD******28101112***8XTAL2U3:A129RSTU3:B***34293031PSENALEEAU3:C612345678P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51U3:D12U2123ABCY0Y1Y2Y3Y4Y5Y6Y7***09711U3:E***U3:F8645E1E2E374HC138 程序: ORG 0000H LJMP MIAN ORG 0030H MIAN:

GW equ 60h;个位数据缓冲 SW equ 61h;十位数据缓冲 BW equ 62h;百位数据缓冲

J equ 63h;角数据缓冲 Y equ 64h;元数据缓冲 SY equ 65H;十元数据缓冲Mov GW,#0;初始化全为0 Mov SW,#0 Mov BW,#0 MOV J,#0 MOV Y ,#5 MOV SY,#0 MOV R1 ,#00H MOV R2 ,#00H MOV R0 ,#00H MOV R5 ,#00H MOV R6 ,#00H MOV TMOD ,#51H Mov TH1,#0 Mov TL1,#0

SETB C Setb TR1

;计数开始

START:

JNC LOOP

MOV A,GW

MOV DPTR ,#TAB

MOVC A ,@A+DPTR

MOV P0 ,A

MOV P2 ,#00H;//打开第一位数码管的显示电源

ACALL D1MS

MOV P2 ,#0FFH

MOV A,SW

MOV DPTR ,#TAB

MOVC A ,@A+DPTR

MOV P0 ,A

MOV P2 ,#01H;//打开第二位数码管的显示电源

ACALL D1MS

MOV P2 ,#0FFH

MOV A,BW

MOV DPTR ,#TAB

MOVC A ,@A+DPTR

MOV P0 ,A

MOV P2 ,#02H;//打开第三位数码管的显示电源

ACALL D1MS

MOV P2 ,#0FFH

MOV A,J

MOV DPTR ,#TAB

MOVC A ,@A+DPTR

MOV P0 ,A

MOV P2 ,#03H;//打开第四位数码管的显示电源

ACALL D1MS

MOV P2 ,#0FFH

MOV A,Y

MOV DPTR ,#TAB1

MOVC A ,@A+DPTR

MOV P0 ,A

MOV P2 ,#04H;//打开第五位数码管的显示电源

ACALL D1MS

MOV P2 ,#0FFH

MOV A,SY

MOV DPTR ,#TAB

MOVC A ,@A+DPTR

MOV P0 ,A

MOV P2 ,#05H;//打开第六位数码管的显示电源

ACALL D1MS

MOV P2 ,#0FFH

MOV A,TL1

MOV B ,#64H

DIV AB

MOV BW ,A

XCH A ,B

MOV B ,#0AH

DIV AB

MOV SW,A

MOV GW , B

MOV R0 ,TL1 CJNE R0 ,#05H , START LOOP: MOV A ,R0 SUBB A,#04H MOV B ,#08H MUL AB ADD A ,#50 MOV R5 ,A MOV A, B ADDC A ,#0 MOV R6 ,A

MOV R7,#08H H0:CLR C MOV A,R5 RLC A MOV R5,A MOV A,R6 RLC A MOV 07H,C CLR C SUBB A,#64H

JB 07H,H1 JNC H1 ADD A,#64H SJMP H2 H1:INC R5 H2:MOV R6 ,A

DJNZ R7 ,H0 MOV SY,R5 MOV A ,R6

MOV B ,#0AH

DIV AB

MOV Y ,A

MOV J,B

SETB C AJMP START D1MS:

MOV TMOD ,#51H

MOV

TL0 , #58H

MOV

TH0 , #0FFH

SETB TR0 WAIT1:

JNB

TF0 , WAIT1

CLR

TF0

CLR

TR0

RET

TAB :DB 0C0H ,0F9H ,0A4H,0B0H,99H,92H,82H,0F8H,80H,98H

TAB1:DB 40H,79H,24H,30H,19H,12H,02H,78H,00H,18H

课程设计心得

课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。

本次课程设计我的课题是做基与单片机的出租车计费系统和温度报警系统。当我拿到课题时候,我真的很激动,因为我知道,这不仅仅是一次课程设计,而且它将见证我大学单片机学习的成果。所以从一开始我就对该设计显得十分重视。我深信好好做课程设计,能给我带来巨大的收获。

通过努力,最终把这次课程设计的任务完成了。通过这次设计,得到了很多收获和体会。提高了自己的动手能力。第一,巩固和加深了对电子线路基本知识的理解,提高了编写程序的能力。第二,增强了根据课程需要选学参考资料,查阅手册,图表和文献资料的自学能力。通过独立思考,深入研究有关问题,学会自己分析解决问题的方法。第三,初步掌握了简单实用电路的分析方法和工程设计方法。第四,在这次课程设计过程中,光有理论知识是不够的,还必须懂一些实践中的知识。所以在课程设计的实践中,我们应将实验课与课堂教学结合起来,锻炼自己的理论联系实际的能力和实际动手能力。第五,掌握了比较常用的仪器的使用方法,科学态度。

回顾起此次单片机课程设计,我仍感慨颇多,的确,从理论到实践,在二个星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说不懂一些元器件的使用方法,对单片机汇编语言掌握得不好……通过这次课程设计之后,一定把以前所学过的知识重新温故。

在设计中我遇到了很多编程问题,最后在石伟老师的辛勤指导下,终于游逆而解。同时,在石伟老师那里我学得到很多实用的知识,在次我表示感谢!同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢!

《单片机课程设计资料袋.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
单片机课程设计资料袋
点击下载文档
相关专题 单片机课程设计资料 单片机 课程设计 资料袋 单片机课程设计资料 单片机 课程设计 资料袋
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文