单片机课程设计.docx

上传人:b****4 文档编号:11561834 上传时间:2023-03-19 格式:DOCX 页数:20 大小:808.64KB
下载 相关 举报
单片机课程设计.docx_第1页
第1页 / 共20页
单片机课程设计.docx_第2页
第2页 / 共20页
单片机课程设计.docx_第3页
第3页 / 共20页
单片机课程设计.docx_第4页
第4页 / 共20页
单片机课程设计.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

单片机课程设计.docx

《单片机课程设计.docx》由会员分享,可在线阅读,更多相关《单片机课程设计.docx(20页珍藏版)》请在冰豆网上搜索。

单片机课程设计.docx

单片机课程设计

湖南工业大学

课程设计

资料袋

电气与信息工程学院3学年第1学期

课程名称单片机系统课程设计指导教师李祥飞职称教授

学生姓名赵兴发专业班级电自094学号09401300417

题目出租车计费系统

成绩起止日期2011年12月19日~2011年12月31日

目录清单

序号

材料名称

资料数量

备注

1

课程设计任务书

1

2

课程设计说明书

1

3

课程设计图纸

11

4

5

6

湖南工业大学

课程设计任务书

2011—2012学年第1学期

电气与信息工程学院电气工程及其自动化专业电气094班级

课程名称:

单片机系统课程设计

设计题目:

出租车计费系统

完成期限:

自2011年12月19日至2011年12月31日共2周

1.1外部脉冲自动计数,自动显示。

1.1.1设计一个255计数器:

0-255计数,计满后自动清0,重新计数(在数码管中显示)。

1.1.2设计一个999999计数器:

0-999999计数,计满后自动清0,重新计数(在数码管中显示)。

1.2设计一个出租车计费系统:

起步价为5元(2km以内),2km后,0.8元/0.5km;要求每500m刷新计费一次,在8位数码管中,前三位显示数码管显示里程数,后三位数码管显示价钱(角,元,十元)

起止日期

工作内容

2011.12.19-2011.12.20

讲述设计内容及基本原理

2011.12.21-2011.12.30

进行系统的设计

2011.12.31-2011.12.31

完成课程设计的验收

[1]刘苗生、潘宗预.单片机测控系统设计.中国物质出版社,2006年

[2]欧伟明、何静.单片机原理与应用系统设计.电子工业出版社,2009年

附件三

单片机系统课程设计说明书

出租车计费系统

起止日期:

2011年12月19日至2011年12月31日

 

学生姓名

赵兴发

班级

电自094

学号

09401300417

成绩

 

电气与信息工程学院

2011年12月19日

一、设计任务

1.1外部脉冲自动计数,自动显示。

1.1.1设计一个255计数器:

0-255计数,计满后自动清0,重新计数(在数码管中显示)。

1.1.2设计一个999999计数器:

0-999999计数,计满后自动清0,重新计数(在数码管中显示)。

1.2设计一个出租车计费系统:

起步价为5元(2km以内),2km后,0.8元/0.5km;要求每500m刷新计费一次,在8位数码管中,前三位显示数码管显示里程数,后三位数码管显示价钱(角,元,十元)

二、设计目的

1、掌握寄存器、存储器读写等汇编指令;

2、掌握软件编程、编译、调试等基本操作;

3、学会程序的基本调试方法;

4、熟悉Proteus仿真软件的使用;

5、学会单片机最小系统电路原理设计分析,程序设计、调试分析与修改,程序调试等实际操作。

三、硬件资源

※89S51单片机;

※6位共阳极数码管;

※段码驱动器74HC573,位选译码器74HC138;

※4路独立式按键;

※外部晶振电路;

※ISP下载接口(Insystemprogram,在系统编程);

※DC+5V电源试配器(选配);

※ISP下载线(选配)。

四、电路原理分析与设计

P1为外部电源输入座(DC+5V),S8为电源最小系统的电源开关,E1和C3为电源滤波,去耦电容。

D1为系统电源指示灯。

J2为ISP下载接口,S7系统复位按键。

CRY1,C1,C2为外部时针电路。

IC1为89S51(DIP-40),左上角为第一脚。

PRE1,PRE2。

为上拉排阻(阻值4.7k—10k)。

J5,J9,J6,J10分别对应单片机的P0,P1,P2,P3口。

便于二次开发。

6路共阳极数码管动态显示电路,P0口通过74HC573(起驱动和隔离作用,让电流通过74CH573流入公共地),来控制数码管的8路段码,P20-P22通过74HC138译码器(使用其中的6路)控制数码管的公共端(中间还有三极管做驱动器)。

这样设计的理由:

为了保证该单片机最小系统的二次开发的资源充足和合理性。

如果单只做一个动态显示电路,可以省去74HC573,和74HC138。

硬件电路原理图如下

课程设计一:

出租车计费

一、设计任务

起步价为5元(2km以内),2km后,0.8元/0.5km;要求每500m刷新计费一次,在8位数码管中,前三位显示数码管显示里程数,后三位数码管显示价钱(角,元,十元)

二、设计思路

数码管前三位显示路程数,数码管后三位显示计费

资源分配:

60H,61H,62H分别存放路程数;63H,64H,65H分别存放计费的数字。

三、软件设计

1、软件设计流程图

 

2、出租车计费源程序

ORG0000H

LJMPSTART

ORG001BH

LJMPT1INT

ORG0200H

START:

MOV60H,#00H

MOV61H,#00H

MOV62H,#00H

MOV63H,#00H

MOV64H,#00H

MOV65H,#00H

MOVTMOD,#50H

MOVTH1,#0FFH

MOVTL1,#0FFH

CLRTF1

SETBET1

SETBEA

SETBTR1

MAIN:

LCALLDISP

LJMPMAIN

T1INT:

LCALLLU

LCALLQIAN

MOVTH1,#0FFH

MOVTL1,#0fFH

RETI

LU:

MOVA,60H

ADDA,#5

MOV60H,A

CJNEA,#10,L1

MOV60H,#0

INC61H

L1:

MOVA,61H

CJNEA,#10,L2

MOV61H,#0

INC62H

L2:

MOVA,62H

CJNEA,#10,L3

MOV62H,#0

L3:

RET

QIAN:

MOVR0,60H

MOVR1,61H

MOVR2,62H

CJNER2,#0,B0

CJNER1,#0,B1

MOV64H,#05H

SJMPSUB1

B1:

CJNER1,#1,B2

MOV64H,#05H

LJMPSUB1

B2:

CJNER1,#2,B0

B3:

CJNER0,#0,B0

MOV64H,#05H

LJMPSUB1

B0:

MOVA,63H

ADDA,#8

MOVB,#10

DIVAB

ADDA,64H

MOV64H,A

MOV63H,B

CJNEA,#10,SUB1

INC65H

MOV64H,#0H

MOVA,65H

CJNEA,#10,SUB1

MOV65H,#0

SUB1:

RET

DISP:

MOVDPTR,#TAB

MOVA,60H

MOVCA,@A+DPTR

MOVP0,A

MOVP2,#3

LCALLDELAY

MOVP0,#0FFH

MOVA,61H

MOVCA,@A+DPTR

ANLA,#7FH

MOVP0,A

MOVP2,#4

LCALLDELAY

MOVP0,#0FFH

MOVA,62H

MOVCA,@A+DPTR

MOVP0,A

MOVP2,#5

LCALLDELAY

MOVP0,#0FFH

MOVA,63H

MOVCA,@A+DPTR

MOVP0,A

MOVP2,#0

LCALLDELAY

MOVP0,#0FFH

MOVA,64H

MOVCA,@A+DPTR

ANLA,#7FH

MOVP0,A

MOVP2,#1

LCALLDELAY

MOVP0,#0FFH

MOVA,65H

MOVCA,@A+DPTR

MOVP0,A

MOVP2,#2

LCALLDELAY

MOVP0,#0FFH

RET

TAB:

DB0C0H,0F9H,0A4H,0B0H

DB99H,92H,82H,0F8H

DB80H,90H

DELAY:

MOVR7,#30

DL:

MOVR6,#100

DJNZR6,$

DJNZR7,DL

RET

END

3、调试及仿真图

 

 

课程设计二:

255计数器

一、设计任务

设计一个255计数器:

0-255计数,计满后自动清0,重新计数(在数码管中显示)。

二、设计思路

255计数:

255可用8位二进制数表示,故本设计可直接采用可以重装载的计数器T1模式二进行计数。

然后对TL1的内容进行相应的二进制---十进制转换:

首先TL1的内容除以64H,所的商就是十进制的百位,然后用余数除以0AH,所得的商就是十进制数的十位,余数即相应的十进制的个位。

接着将相应的十进制数进行译码,并在LED数码管上显示出来。

每来一个脉冲其显示的结果加一,直加至255然后T1重新开始计数。

三、软件设计

1、软件设计流程图

2、255计数源程序

ORG0000H

AJMPMAIN

ORG001BH

LJMPT1INT

ORG0030H

MAIN:

MOVTMOD,#60H

MOVR0,#00H

CLRTF1

MOVTL1,#0FFH

MOVTH1,#0FFH

SETBTR1

SETBET1

SETBEA

BI:

LCALLDISPLAY

SJMPBI

LCALLDISPLAY

T1INT:

INCR0

MOVA,R0

MOVB,#64H

DIVAB

MOV62H,A

MOVA,B

MOVB,#0AH

DIVAB

MOV61H,A

MOV60H,B

RETI

DISPLAY:

MOVDPTR,#TAB

MOVA,60H

MOVCA,@A+DPTR

MOVP0,A

MOVP2,#0

LCALLDELAY

MOVP0,#0FFH

MOVA,61H

MOVCA,@A+DPTR

MOVP0,A

MOVP2,#1

LCALLDELAY

MOVP0,#0FFH

MOVA,62H

MOVCA,@A+DPTR

MOVP0,A

MOVP2,#2

LCALLDELAY

MOVP0,#0FFH

RET

TAB:

DB0C0H,0F9H,0A4H,0B0H

DB99H,92H,82H,0F8H

DB80H,90H

DELAY:

MOVR7,#30

DL:

MOVR6,#100

DJNZR6,$

DJNZR7,DL

RET

END

3、调试及仿真图

 

课程设计三:

999999计数器

一、设计任务:

设计一个999999计数器:

0-999999计数,计满后自动清0,重新计数(在数码管中显示)。

三、设计思路:

60H—65H分别存放个位到十万位的数字。

三、软件设计

1、软件设计流程图

2、999999计数源程序

ORG0000H

SJMPMAIN

ORG0030H

MAIN:

MOV60H,#0

MOV61H,#0

MOV62H,#0

MOV63H,#0

MOV64H,#0

MOV65H,#0

MOVTMOD,#060H

MOVTH1,#0FFH

MOVTL1,#0FFH

SETBET1

SETBEA

SETBTR1

L1:

JNBTF1,L3;

CLRTF1

LCALLJI

L3:

LCALLDISP

SJMPL1

JI:

MOVR1,#60H

L2:

INC@R1

CJNE@R1,#10,BT

MOV@R1,#0

INCR1

CJNER1,#66H,L2

MOVR1,#60H

BT:

RET

DISP:

MOVR0,#60H

MOVR4,#0

MOVDPTR,#TAB

L4:

MOVA,@R0

MOVCA,@A+DPTR

MOVP2,R4

MOVP0,A

INCR0

INCR4

LCALLDELAY;

MOVP0,#0FFH

CJNER4,#6,L4

RET

DELAY:

MOVR7,#30

DL:

MOVR6,#100

DJNZR6,$

DJNZR7,DL

RET

TAB:

DB0C0H,0F9H,0A4H,0B0H

DB99H,92H,82H,0F8H

DB80H,90H

END

3、调试及仿真图

五、单片机课程设计心得体会

光阴似箭,日月如梭。

为期两周的单片机课程设计结束了,此次设计的课题是出租车计费以及255和999999计数的设计,通过此次课程设计,收获颇多。

不但巩固了自己的知识,而且培养了自己的实践编程能力。

在此次课程设计过程中,使我更进一步的熟悉了单片机的结构和原理,掌握了单片机的工作原理及应用系统的设计。

将以前学过的零散的单片机知识有机的、系统的联系起来,培养了自己分析和设计程序的能力。

在出租车计费的设计中,要求熟练掌握单片机汇编指令及其具有一定的编程能力,那么在程序出错时能准确地找出错误并及时纠正。

在分析和设计的思路过程中,培养了我的设计思维,使我在程序的分析和设计上有了很大的进步,加深了我对单片机指令系统以及单片机结构和工作原理的认识,进一步增加了我对单片机的中断系统和定时器控制的了解,还使自己深刻的认识到《单片机原理与应用》这门课程的重要性。

同时,通过查阅相关方面的书籍也培养了自己独立思考的能力。

此次课程设计立足于单片机的系统设计和实际应用,通过不断的实践,开拓了自己的思维,通过课程搜集资料、确定设计思路、拟定方案、进行系统的规划、仿真调试的流程,使我深刻的体会了在学习我们专业的过程中理论与实践相结合的重要性,同时也解决了以前学习比较模糊的专业知识点,使自己掌握的专业知识更加牢固,系统化。

此外,在与同学相互讨论研究方案时,也有助于完整的设计出硬件电路图,以及程序的设计。

同时也培养了团队协作的精神,并且增加实际的操作能力,让我在体会设计艰辛的同时,也感受到了成功的喜悦与快乐。

最后,感谢李教授在课程设计上给予我的帮助,你的细致讲解和耐心答疑,使我在设计过程中思路清晰开阔,少走了很多的弯路,犹如一盏明灯指引着我步步走向成功,没有李教授的帮助,我的效率不可能达到如此高的水平,再次感谢您的栽培和教育,祝愿李教授新年快乐,身体健康,工作顺利,合家幸福!

附:

单片机最小系统原理图

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1