C51可控流水灯单片机课程设计报告

淡若清风 范文 报告范文
精选回答

C51可控流水灯单片机课程设计报告本文简介:80C51单片机流水灯实训和调试报告班级:姓名:学号:单片机及应用课程设计:可控流水灯设计1目的单片机课程设计主要是为了让我们增进对80C51单片机电路的感性认识,加深对理论方面的理解。了解软硬件的有关知识,并掌握软硬件设计过程、方法及实现,为以后设计和实现应用系统打下良好基础。另外,通过简单课题的

C51可控流水灯单片机课程设计报告本文内容:

80C51单片机流水灯实训和

调试报告

班级:

姓名:

学号:

单片机及应用课程设计:可控流水灯设计

1

目的

单片机课程设计主要是为了让我们增进对80C51单片机电路的感性认识,加深对理论方面的理解。了解软硬件的有关知识,并掌握软硬件设计过程、方法及实现,为以后设计和实现应用系统打下良好基础。另外,通过简单课题的设计练习,使我们了解必须提交的各项工程文件,达到巩固、充实和综合运用所学知识解决实际问题的目的。

2.2

课题的意义

这次单片机课程设计是为了通过对流水灯控制的设计加强学生团队配合的能力和创造力;综合运用专业及基础知识,解决实际工程技术问题的能力。能够让学生深入真是的体会到所学的理论知识和实践相结合的过程。找出自身的不足并加以改正。

2.3

预期的目标

对8个LED灯设计5种流水灯显示方式,用一个按键进行方式选择,并用一个数码管显示方式编号;用两个键来控制流水灯流动的速度。

2.4

面对的问题

这次课程设计是通过80C51位单片机实现。但面对的问题却是两方面的:一个是软件的设计,也就是实现流水灯控制功能的程序编辑;另一个是硬件的设计,需要我们自己连接、焊接电路板。而更为严峻的就是设计的最后还要将软硬件相结合。首先我们需要通过protel将设计的实物的电路图画出来,再根据电路图连接实物电路。

2.5

课题的技术

LED灯的显示方式、模式切换按钮的控制、亮灯速度的按键控制等技术。

3

系统分析

3.1

涉及的基础知识

电路焊接:制造电子产品的重要手段。

80C51单片机指令系统:规定80C51单片机内操作的语句或命令。

LED数码管的显示:向数码的显示送数,控制系统的显示部分。

3.2

80C51单片机引脚图及引脚功能介绍

本次实习的目的在于加深80C51单片机的理解,首先来简单认识一下,它的引脚如图3-1所示:

图3.1

80C51的引脚图

单片机的39个引脚大致可分为4类:电源、时钟、控制和I/O引脚。

1.电源:

(1)VCC:芯片电源,接+5V;

(2)VSS:接地端;

2.时钟:

XTAL1、XTAL2

:晶体振荡电路反相输入端和输出端。

3.控制线:控制线共有4根,

(1)ALE/PROG:地址锁存允许/片内EPROM编程脉冲

ALE功能:用来锁存P0口送出的低8位地址

PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。

(2)

PSEN:外ROM读选通信号。

(3)RST/VPD:复位/备用电源。

RST(Reset)功能:复位信号输入端。

VPD功能:在Vcc掉电情况下,接备用电源。

(4)EA/Vpp:内外ROM选择/片内EPROM编程电源。

EA功能:内外ROM选择端。

Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。

4.I/O线

80C51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。

P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。

3.3

解决问题的基本思路

因为选定用循环移位法来实现亮灯程序的,所以在一种设计好一种亮灯方式的前提下编程实现一个循环结构体,分别来实现五种不同的亮灯方式。另外再编一个实现延时控制的调用程序,来提供亮灯速度的控制。

3.4

总体方案

在做本次课程设计之前将小组内人员分为两小组:一组分负责硬件设计,另一组负责软件编程。硬件小组负责实物的连接和焊接,并进行硬件测试;软件小组负责实现流水灯的各部分程序设计,并进行软件的仿真测试。最后将完成的软硬件相结合,从而达到实现课程设计的效果。

4

系统设计

4.1

硬件设计

按照单片机系统扩展与系统配置状况,单片机应用系统可分为最小系统、最小功耗系统及典型系统等。80C51单片机是本次课程设计运用的主要原件。流水灯控制设计是用一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的软件组成的单个单片机。

4.2

软件设计

单片机的应用系统由硬件和软件组成,在硬件原理图搭建完成上电之后,我们还不能看到流水灯循环点亮的现象,我们还需要编写程序控制单片机管脚电平的高低变化,来实现发光二极管的一亮一灭。软件编程是单片机应用系统中的一个重要的组成部分,也是本次课程设计的重点和难点。我们编程实现流水灯的方法是循环移位法,下面我们就来简述一下循环移位法的工作原理。

循环移位法是采用循环程序结构进行编程。我们在程序一开始就给P1口送一个数,这个数本身就让P1.0先低,其他位为高,然后延时一段时间,再让这个数据向高位移动,然后再输出至P1口,这样就实现“流水”效果了。另外,由于80C51系列单片机的指令中只有对累加器ACC中数据左移或右移的指令,因此实际编程中我们应把需移动的数据先放到ACC中,让其移动,然后将ACC移动后的数据再转送到P1口,这样也可以实现“流水”效果。

4.3

元件清单

表4-1

元件清单

名称

型号

数量

电阻

220Ω

9

电容

103

4

开关

1

芯片

1

单片机

80C51

1

PC机串行口

LED灯

8

电源指示灯

1

二极管

2

三极管

4

数码显示器

1

按键

4

4.4

硬件原理图

4-1硬件原理图

4.5

硬件焊接图

4-2硬件焊接图

4.6

设计主要功能

打开电路开关,按下第一个模式控制键,8个LED数码管会从右向左一个接着一个亮灯,LED显示器会显示数字“1”来表示当前的亮灯方式是模式1。在8个LED数码管全部亮后再次按下第一个模式控制键,8个LED数码管会从又向左2个一组的一次亮灯,同时LED显示器会显示数字“2”来表示当前的亮灯方式是模式2。以此类推,一共有5种显示模式。而第2、3个按键分别控制亮灯速度的快慢。

5

代码编写

ORG

00H

;设置主程序开始地址

CLR

P3.4

;这里可以使小喇叭发出嗒、嗒声

DELAY:

MOV

R6,#255

;延时0.1s

D1:

MOV

R7,#255

;延时一段时间

DJNZ

R7,$

;原地等待

DJNZ

R6,D1

RET

END

DELAY1:

MOV

R6,#150

;延时0.05s

D2:

MOV

R7,#150

DJNZ

R6,D2

RET

END

START:

MOV

A,P1.4

;选中p1.4

数码管使能

JZ

TTT

ADD

R5,A

CJNE

R5,#3,C1

AJMP

M1

C1:CJNE

R5,#3,C1

AJMP

M3

C2:

JNC

C2

C3:

TTT:INC

A

M1:

MOV

P0,#7EH

;把7EH送p0口,数码管显示1

LCALL

DELAY

;数码管亮后的缓冲

MOV

A,#11111110B

;赋值

MOV

R4,A

;保存所赋的值

LOOP:

MOV

P2,A

;值给LED灯

ACALL

V

;调用延时子程序

MOV

A,R4

;保存的值还给A

RL

A

;左移

AJMP

LOOP

;不为零,重复把值给LED灯

RET

M2:MOV

P0,#0A2H

;数码管显示2

LCALL

DELAY

AGAIN:

MOV

R3,#8H

LOOP1:

MOV

A,#FEH

MOV

R4,A

X1:

MOV

P2,A

ACALL

V

;调用延时子程序

MOV

A,R4

RL

A

DJNZ

R3,X1

MOV

R3,#8

LOOP2:

MOV

A,#7FH

X2:

MOV

P2,A

ACALL

V

;调用延时子程序

MOV

A,R4

RR

A

DJNZ

R3,X2

AJMP

AGAIN

RET

M3:MOV

P0,#62H

;数码管显示3

LCALL

DELAY

MOV

R1,#05H

OUTL:

MOV

DPTR,#TABLE

MOV

R2,#04H

MOV

A,00H

INL:

MOV

R0,A

MOVC

A,@A+DPTR

MOV

P2,A

ACALL

V

;调用延时子程序

MOV

A,R0

INC

A

DJNZ

R2,INL

DJNZ

R1,OUTL

TABLE:

DB

7EH,0BDH,0DBH,0E7H

RET

M4:MOV

P0,#74H

;数码管显示4

LCALL

DELAY

MOV

A,#01111111B

MOV

R4,A

LOOP:

MOV

P2,A

ACALL

V

;调用延时子程序

MOV

A,R4

RL

A`

AJMP

LOOP

RET

M5:MOV

P0,#61H

;数码管显示5;

LCALL

DELAY

MOV

R1,#05H

OUTL:

MOV

DPTR,#TABLE

MOV

R2,#04H

MOV

A,00H

INL:

MOV

R0,A

MOVC

A,@A+DPTR

MOV

P2,A

ACALL

V

;调用延时子程序`

MOV

A,R0

INC

A

DJNZ

R2,INL

DJNZ

R1,OUTL

TABLE:

DB

0E7H,0DBH,0BDH,7EH

RET

;延时选择程序

V:

DELAY

MOV

A,P1.5

;P1.5低电平时延时长,流水灯速度慢

JZ

DELAY

MOV

A,P1.6

;P1.6低电平时延时短,流水灯速度快

JZ

DELAY1

RET

;子程序返回

END

;程序结束

6

程序调试

本程序运行过程中没有错误。但对于双键控制流水灯亮灯速度的功能并没有得到实现。将电路板用数据线连接,打开开关,按钮用来切换模式,一共有五种流动方式,每按一次按钮就会有一种方式,并在LED显示器上面显示出该模式的序号。

单片机的应用系统由硬件和软件组成,上述硬件原理图搭建完成上电之后,我们还不能看到流水灯循环点亮的现象,我们还需要告诉单片机怎么来进行工作,即编写程序控制单片机管脚电平的高低变化,来实现发光二极管的一亮一灭。软件编程是单片机应用系统中的一个重要的组成部分,是单片机学习的重点和难点。下面我们以最简单的流水灯控制功能即实现8个LED灯的循环点亮,来介绍实现流水灯控制的几种软件编程方法。

位控法

这是一种比较笨但又最易理解的方法,采用顺序程序结构,用位指令控制P1口的每一个位输出高低电平,从而来控制相应LED灯的亮灭。程序如下:

ORG

0000H

;单片机上电后从0000H地址执行

AJMP

START

;跳转到主程序存放地址处

ORG

0030H

;设置主程序开始地址

START:MOV

SP,#60H

;设置堆栈起始地址为60H

CLR

P1.0

;P1.0输出低电平,使LED1点亮

ACALL

DELAY

;调用延时子程序

SETB

P1.0

;P1.0输出高电平,使LED1熄灭

CLR

P1.1

;P1.1输出低电平,使LED2点亮

ACALL

DELAY

;调用延时子程序

SETB

P1.1

;P1.1输出高电平,使LED2熄灭

CLR

P1.2

;P1.2输出低电平,使LED3点亮

ACALL

DELAY

;调用延时子程序

SETB

P1.2

;P1.2输出高电平,使LED3熄灭

CLR

P1.3

;P1.3输出低电平,使LED4点亮

ACALL

DELAY

;调用延时子程序

SETB

P1.3

;P1.3输出高电平,使LED4熄灭

CLR

P1.4

;P1.4输出低电平,使LED5点亮

ACALL

DELAY

;调用延时子程序

SETB

P1.4

;P1.4输出高电平,使LED5熄灭

CLR

P1.5

;P1.5输出低电平,使LED6点亮

ACALL

DELAY

;调用延时子程序

SETB

P1.5

;P1.5输出高电平,使LED6熄灭

CLR

P1.6

;P1.6输出低电平,使LED7点亮

ACALL

DELAY

;调用延时子程序

SETB

P1.6

;P1.6输出高电平,使LED7熄灭

CLR

P1.7

;P1.7输出低电平,使LED8点亮

ACALL

DELAY

;调用延时子程序

SETB

P1.7

;P1.7输出高电平,使LED8熄灭

ACALL

DELAY

;调用延时子程序

AJMP

START

;8个LED流了一遍后返回到标号START处再循环

DELAY:

;延时子程序

MOV

R0,#255

;延时一段时间

D1:

MOV

R1,#255

DJNZ

R1,$

DJNZ

R0,D1

RET

;子程序返回

END

;程序结束

-

14

-

奋斗 2022-07-16 00:46:54

相关推荐

闭门反思的意思

“闭门反思”的意思是关上门反省自己的过错。形容自身冷静下来好好单独地想想所犯之过错,作出深刻反省。成语出自:《汉书·韩延寿传》:“因入卧传舍,闭阁思过。畅姬扳肯殖厩帮询爆墨。”...
展开详情

芝麻油是上火还是降火

芝麻油有降火功效。一般黑芝麻食用,白芝麻榨油。中医学认为:本品性味甘、凉,具有润肠通便、解毒生肌之功效。据《本草纲目》上记载:有润燥、解毒、止痛、消肿之功。”《别录》说:利大肠,胞衣不落。生者摩疙肿,生秃发。”...
展开详情

前途的意思

前途原指前面的路程,比喻将来的光景;将行经的前方路途,引申为目标和价值。出自鲁迅《故事新编-奔月》:“圆的雪白的月亮照着前途,凉风吹脸,真是比大猎回来时还有趣。”出处:晋-左思《吴都赋》:“先驱前涂,俞骑骋路。...
展开详情

丼怎么读

jǐng或dǎn。读作jǐng时,同“井”。读作dǎn时,意为投物井中所发出的声音,也可用作姓。中文丼字来源甲骨文,甲骨文即有丼字,或为今“丹”字,井中的一点,为丹砂的象征符号。又因为从“井”得字,所以也指井,...
展开详情

好好用功看到别人的长处人生感悟朗诵

贤二面壁用功好几天,因为师父让他要“好好用功”。出什么事了呢?原来有一天,他跟师父说,虽然你爱护贤五,但他真的没有长处,还信誓旦旦说,不打妄语。那师父为什么让他好好用功呢?因为“看不到别人的长处,恰恰证明自己的...
展开详情

精选推荐更多>

浮想联翩哪个字错了

浮想联翩没有错别字。
浮想联翩,汉语成语,拼音是fú xiǎng lián piān,意思是飘浮不定的想象,比喻连续不断,许许多多的想象不断涌现出来。
出自晋·陆机《文赋》:“沈辞怫悦;若游鱼衔钩而出重渊之深;浮藻联翩;若翰鸟缨缴而坠曾云之峻”。
用法:作谓语、宾语、定语;形容思绪活跃。多用作贬义,有时也用作褒义,具体视语境而定。
示例:这幅画饱含诗情,使人浮想联翩,神游画外,得到美的享受。
造句:
1、李先生每次收到国内的来信,都浮想联翩,夜不能寐。
2、每次回到故乡,我就浮想联翩,昔日和小伙伴们玩耍嬉戏的情景仿佛就发生在昨天。
3、那天夜里,奥克睡在科根家。他合着眼,但却浮想联翩。
4、映在护城河里水面上的樱花仿佛彩灯,让人浮想联翩。

杨志的人物关系

杨志是中国古典小说《水浒传》中的人物,绰号青面兽,杨家将后人,武举出身,曾任殿帅府制使,因失陷花石纲丢官。后在东京谋求复职不果,穷困卖刀,杀死泼皮牛二,被刺配大名府,得到梁中书的赏识,提拔为管军提辖使。
他护送生辰纲,结果又被劫取,只得上二龙山落草。三山聚义后加入梁山,一百单八将之一,在梁山排第十七位,上应天暗星,位列马军八骠骑兼先锋使。征方腊时病逝于丹徒县,追封忠武郎。
杨志是三代将门之后,五侯杨令公之孙,因脸上生有一大块青记,人称青面兽。他自幼流落关西,早年曾应武举,官至殿司制使官。后押送花石纲,却在黄河里翻船失陷,不敢回京赴命,只得避难江湖。

邯郸学步文言文翻译

《邯郸学步》文言文翻译:燕国寿陵有个少年,千里迢迢来到邯郸,打算学习邯郸人走路的姿式。结果,他不但没有学到赵国人走路的样子,而且把自己原来走路的步子也忘记了,最后只好爬着回去。
原文:
寿陵余子之学行于邯郸,未得国能,又失其故行矣,直匍匐而归耳。
《邯郸学步》出自《庄子·秋水》,寓意:燕国人努力向别人学习,应该肯定,但是他依样画葫芦的生搬硬套并不可取,不但没学到别人的精髓,反而连自己原有的也丢了。
学习不是不能模仿,但必须先细心观察别人的优点,研究邯郸人之所以能够走得优雅的关键之处,除了步法外,那种优雅是否和他们的神态、心境,甚至文化有关?再从自己的实际状况来检视,要将步伐调整成邯郸人的样子,需要做出哪些改变?这样才能取人之长,补己之短。如果像燕国人那样盲目,一味崇拜别人,结果必然是功夫没学成,不切实际,自己的长处也丢光了。
不过若从“刻苦学习”的角度来看,燕国人的精神应该受到肯定,虽然他的学习方式不对,但是至少“肯学”,比起很多不肯学习、任由自己安于现状的人,燕国人更有改变的勇气。如果有朝一日他领悟诀窍,要优雅地走路便指日可待。

北宋诗人晏几道和晏殊是什么关系

北宋词人晏殊和晏几道是父子关系。
晏几道(1038年5月29日-1110年),北宋著名词人。字叔原,号小山,抚州临川文港沙河(今属江西省南昌市进贤县)人。晏殊第七子。
历任颍昌府许田镇监、乾宁军通判、开封府判官等。性孤傲,中年家境中落。与其父晏殊合称“二晏”。词风似父而造诣过之。工于言情,其小令语言清丽,感情深挚,尤负盛名。表达情感直率。多写爱情生活,是婉约派的重要作家。有《小山词》留世。
晏殊(991年-1055年2月27日),字同叔,江南西路抚州临川县(今江西进贤)人。北宋政治家、文学家。
晏殊以词著于文坛,尤擅小令,风格含蓄婉丽,与其第七子晏几道被称为“大晏”和“小晏”,又与欧阳修并称“晏欧”。后世尊其为“北宋倚声家初祖”;亦工诗善文,其文章又能“为天下所宗”。原有文集,今已散佚。存世作品有《珠玉词》、《晏元献遗文》、《类要》残本。
常见热点问答
热点搜索
1-20
21-40
41-60
61-80
81-100
101-120
121-140
141-160
161-180
181-200
作文大全
1-20
21-40
41-60
61-80
81-100
101-120
121-140
141-160
161-180
181-200