技术文档

单片机 bin AT89S52单片机的LED点阵显示电子钟安装,调试与维修的教学任务

小编 2024-11-24 技术文档 23 0

AT89S52单片机的LED点阵显示电子钟安装、调试与维修的教学任务

学习目标

1、 了解单片机指令的总体情况

3、掌握LED点阵显示电子钟的工作原理

4、掌握LED点阵显示电子钟的硬件和软件

5、了解LED点阵显示电子钟指令系统中的符号说明

6、会LED点阵显示电子钟数据传送类指令

学习内容:

1、+5V电源原理及设计

2、单片机复位电路工作原理及设计。

3、单片机晶振电路工作原理及设计。

4、按键电路的设计。

5、74LS373锁存驱动器的特性及使用。

6、74LS138译码器的特性及使用

7、AT89S52单片机引脚。

8、单片机汇编语言及程序设计。

本课题建议学时60学时。

本课题的教学步骤可分为:

1、下发任务书。2学时

2、学生根据任务书等资料解决相关问题。20 学时

3、教师对相关知识的疑难问题进行讲解。9学时

4、学生6-7人一组,讨论并确定安装方案,填写工艺卡3学时

5、学生按照工艺卡完成准备工作。1学时

6、学生绘制电原理图、方框图、安装图、元器件明细表。6学时

7、学生自行完成基于AT89S52单片机的LED点阵显示电子钟的安装、调试、维修。15学时

8、对基于AT89S52单片机的LED点阵显示电子钟的制作维修情况进行评价。

2学时

9、工作任务的小结。 1学时

任务书: (2个课时)

一、项目概述

随着科学技术日新月异的发展,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说是无处不在。基于AT89S52单片机的LED点阵显示电子钟具有结构简单,性能可靠、价格低和显示灵活等优点,因此得到了广泛应用。

二、项目要求

设计一种基于AT89S52单片机的LED点阵显示电子钟,具体要求如下:

1. 时钟的显示由LED点阵构成。

2. 能正确显示时间,上电显示为12点。

3. 时间能够由按键调整。

4. 误差小于1s。

三、系统设计

根据设计要求,采用并行方式显示,通过锁存器芯片来扩展I/O口,达到控制LED点阵的40个列线的目的。方案中运用5片锁存器74LS373来组成5组双缓冲寄存器,驱动LED点阵的8组列线,用3/8译码器74LS138对LED点阵的8行进行扫描。在送每一行的数据到LED点阵时,先把数据分别送到5个74LS373,然后再把数据一起输出到LED点阵列中,送出去的时间数据由AT89S52来控制。电子钟由显示电路,行驱动电路、列驱动电路、中央控制器AT89S52、按键电路和复位电路组成。

四、硬件设计

单片机采用AT89S52,系统采用高精度的12MHZ的晶振,以获得较高的刷新频率及较准确的时钟频率使显示稳定和计时准确:采用RC上电加按键复位电路:单片机的P0口和P1口的低5位与列驱动去连接,用来显示数据;P2口的低3位与行驱动器相连,用来送行选信号。

单片机P2口的低3位输出的行信号经74LS138译码生成8条行扫描,这8条信号线所带的驱动能力足以驱动8个LED显示器,因此就不需要额外增加驱动电路。74LS138的其他控制引脚按工作状态分别接入相应的高低电平。

列驱动采用集成电路74LS373构成,它是一个8位并入和8位并出的带一定驱动能力的锁存器。用P1口的低5位分别接到第一脚作为选通用,连接P2口的低5位除了作输出驱动外,主要是起锁存数据的功能,所以11脚全部固定接地。

五、软件设计

LED点阵电子钟程序主要功能是屏幕显示时间稳定、精确。所以按照分块设计的方法可以把程序分为主程序、计时程序、显示程序、调时程序。主程序主要是用来初始化系统和控制各个子程序之间执行的顺序。由于计时需要精确,所以我们直接用T0计时器来产生一个20ms的中断程序,在计时中断程序中完成对时、分、秒的调整,而调时程序采用了两个外部中断来完成。

程序清单:

ORG 0000H

LJMP MAIN

ORG 0003H

LJMP PINT0

ORG 000BH

LJMP INTT0

ORG 0013H

LJMP PINT1

ORG 0030H

MAIN: MOV SP,#60H

MOV TMOD,#01H

MOV TL0,#0e0H

MOV TH0,#0b1H

MOV IE,#87H

MOV 30H,#01H ;时十位

MOV 31H,#02H ;时个位

MOV 32H,#0AH ;光标点位

MOV 33H,#00H ;分十位

MOV 34H,#00H ;分个位

MOV 35H,#00H ;秒十位

MOV 36H,#00H ;秒个位

SETB IT0

SETB IT1

SETB PT0

SETB TR0

LOOP: LCALL DISP

LJMP LOOP0

INTT0 MOV TL0,#0e0H

MOV TH0,#0b1H

PUSH ACC

PUSH PSW

INC 36H

MOV A,36H

CJNE A,#25,PLL

MOV 32H,#0BH

PLL CJNE A,#50,ENDD

MOV 32H,#0AH

MOV 36H,#00H

INC 35H

MOV A,35H

CJNE A,#60,ENDd

MOV 35H,#00H

INC 34H

MOV A,34H

CJNE A,#0AH,ENDd

MOV 34H,#00H

INC 33H

MOV A,33H

CJNE A,#06H,ENDd

MOV 33H,#00H

INC 31H

MOV A,30H

CJNE A,#02H,END1

MOV A,31H

CJNE A,#04H,END1

MOV 31H,#00H

MOV 30H,#00H

END1: MOV A,31H

CJNE A,#0AH,ENDd

MOV 31H,#00H

INC 30H

ENDd:POP PSW

POP ACC

RET1

DISP: PUSH ACC

PUSH PSW

MOV A,30H

MOV B,#08H

MUL AB

MOV 3BH,A

MOV R4,#00H

MOV R5,#08H

LOOP00:MOV A,3BH

MOV DPTR,#TABE

MOVC A,@A+DPTR

MOV P2,R4

MOV P0,A

MOV P1,#0FEH

INC 3BH

INC R4

LCALL DELAY

DJNZ R5,LOOP00

MOV A,31H

MOV B,#08H

MUL AB

MOV 3BH,A

MOV R4,#00H

MOV R5,#08H

LOOP11: MOV A,3BH

MOV DPTR,#TABE

MOVC A,@A+DPTR

MOV P2,R4

MOV P0,A

MOV P1,#0FDH

INC 3BH

INC R4

LCALL DELAY

DJNZ R5,LOOP11

MOV A,32H

MOV B,#08H

MUL AB

MOV 3BH,A

MOV R4,#00H

MOV R5,#08H

LOOP22: MOV A,3BH

MOV DPTR,#TABE

MOVC A, @A+DPTR

MOV P2,R4

MOV P0,A

MOV P1,#0FBH

INC 3BH

INC R4

LCALL DELAY

DJNE R5,LOOP22

MOV A,33H

MOV B,#08H

MUL AB

MOV 3BH,A

MOV R4,#00H

MOV R5,#08H

LOOP33: MOV A,3BH

MOV DPTR,#TABE

MOVC A, @A+DPTR

MOV P2,R4

MOV P0,A

MOV P1,#0F7H

INC 3BH

INC R4

LCALL DELAY

DJNE R5,LOOP33

MOV A,34H

MOV B,#08H

MUL AB

MOV 3BH,A

MOV R4,#00H

MOV R5,#08H

LOOP44: MOV A,3BH

MOV DPTR,#TABE

MOVC A, @A+DPTR

MOV P2,R4

MOV P0,A

MOV P1,#0EFH

INC 3BH

INC R4

LCALL DELAY

DJNE R5,LOOP44

POP PSW

POP ACC

RET

DELAY: MOV 37H,#50

DEL: MOV 38H#4

DJNE 38H,$

DJNE 37H,DEL

RET

TABE: ;0

DB 00H,18H,24H,24H,24H,24H,18H,00H

;1

DB 00H,10H,30H,10H,10H,10H,38H,00H

;2

DB 00H,18H,24H,04H,18H,20H,3CH,00H

;3

DB 00H,18H,24H,18H,04H,24H,18H,00H

;4

DB 00H,08H,18H,28H,7CH,08H,08H,00H

;5

DB 00H,1CH,10H,18H,04H,24H,18H,00H

;6

DB 00H,18H,24H,38H,24H,24H,18H,00H

;7

DB 00H,3CH,28H,08H,10H,10H,10H,00H

;8

DB 00H,18H,24H,18H,24H,24H,18H,00H

;9

DB 00H,18H,24H,24H,1CH,24H,18H,00H

DB 00H,00H,18H,18H,00H,18H,18H,00H

DB 00H,00H,00H,00H,00H,00H,00H,00H

RET

PINT0:MOV 4AH,#20

DJNE 4AH,$

JB P3.2,END-DD

MOV 36H,#00H

INC 34H

MOV A,34H

CJNE A,#0AH,END-DD

MOV 34H,#00H

INC 33H

MOV A,33H

CJNE A,#06H,END-DD

MOV 33H,#00H

END-DD:RET1

PINT1: MOV 4AH,#20

DJNE 4AH,$

JB P3.3,END-DD

INC 31H

MOV A,30H

CJNE A,#02H,END-1

MOV A,31H

CJNE A,#04H,END-1

MOV 31H,#00H

MOV 30H,#00H

END1: MOV A,31H

CJNE A,#0AH,END-d

MOV 31H,#00H

INC 30H

END-D: RETI

END

流程卡: (2个课时)

操作流程卡

课题 基于AT89S52单片机的LED点阵显示电子钟设计

序号

操作内容

工作时间

学生: 日期: 教师:

基于AT89S52单片机的LED点阵显示电子钟设计: (15个课时)

1、 准备本项任务所需的材料、工具,

2、 如果不全,缺哪些?

3、 根据上一项目的制作步骤进行操作。

材料明细卡

代号

名称

型号

数量

用途

R1

排阻

10KΩ*8

1

LED限流

R2

碳膜电阻

10KΩ

1

复位电路

C1

电容

33PF

1个

晶振电路

C2

电容

33PF

1个

晶振电路

C3

电解电容

10vF/10V

1个

复位电路

单片机

AT89S52

1个

控制核心

晶振

12MHZ

1个

晶振电路

驱动器

74LS244

1个

数码管驱动

数码管

4位共阳

1个

显示装置

电源

+5V /0.5A

1个

提供+5V

按键

按键

2个

1个

分时调节

复位电路

驱动器

74LS07

1个

数码管驱动

D

LED

8*8

5个

显示电路

集成块

74LS373

5个

驱动锁存

集成块

74LS138

1个

行扫描

课题 基于AT89S52单片机的LED点阵显示电子钟设计

参考资料提示

序号

书名

出版社

1

电工基础

中国劳动社会保障出版社

2

电子电路基础

中国劳动社会保障出版社

3

数字逻辑电路

中国劳动社会保障出版社

4

电子技术工艺基础

电子工业出版社

5

电子专业技能训练

中国劳动社会保障出版社

基本操作技能

中国劳动社会保障出版社

单片机应用技术

中国劳动社会保障出版社

平分卡: (2个课时)

基于AT89S52单片机的LED点阵显示电子钟设计(满分100分)

评分页

姓名

学号

序号

项目及配分

工艺标准

扣分标准

学生自评分

教师评分

1

作图

30分

1. 布局合理\紧凑

2. 导线横平\竖直\转角成直角,无交叉

3. 元件间连接关系和电原理图一致

1. 布局不合理,每处扣5分

2. 导线不平直\转角不成直角, 每处扣2分,出现交叉, 每处扣5分

3. 连接关系错误, 每处扣10分

2

基于AT89S52单片机的LED点阵显示电子钟设计安装45分

1. 电阻器\二极管水平安装,离万能电路板间距5mm,色标电阻的色环标志方向一致

2. 三极管、可控硅、电解电容垂直安装,元件底部离电路板间距8mm

3. 按图装配,元件的位置\极性正确

4. 焊点光亮\清洁\焊料适量

5. 布线平直

6. 无漏焊\虚焊\假焊\搭焊\溅锡等现象

7. 焊接后元件引脚剪脚留头长度小于1 mm

1. 元件安装歪斜\不对称\高度超差\色环电阻标志不一致, 每处扣1分

2. 错装\漏装, 每处扣5分

3. 焊点不亮\焊料过多过少\布线不平直, 每处扣0.5分

4. 漏焊\虚焊\假焊\搭焊\溅锡, 每处扣3分

5.

6. 剪脚留头长度大于1 mm, 每处扣0.5分

3

基于AT89S52单片机的LED点阵显示电子钟设计调试25分

1.按调试要求和步骤正确测量

2.正确使用万用表

3.正确使用示波器观察波形

1.调试步骤错误,每次扣3分

2.测量结果错误, 每次扣5分误差大, 每次扣2分

3.万用表\示波器使用错误, 每次扣3分

4

安全文明操作

1. 安全用电,不人为损坏元器件\加工件和设备等

2. 保持操作环境整洁,秩序井然,操作习惯良好

1. 发生安全事故,扣总分20分

2. 违反文明操作规程,视情况扣总分5---20分

5

工时: min

超5min扣10分

6

合计

基于AT89S52单片机的LED点阵显示电子钟的维修(满分100分)

评分页

姓名

学号

序号

项目及配分

工艺标准

扣分标准

学生自评分

教师评分

1

查找故障

正确使用电烙铁、万用表、示波器等

电烙铁、万用表\示波器使用错误, 每次扣3分

2

排除故障

1.元件的位置\极性正确

2.焊点光亮\清洁\焊料适量

3.布线平直

4.无漏焊\虚焊\假焊\搭焊\溅锡等现象

5.焊接后元件引脚剪脚留头长度小于1 mm

6.正确使用电烙铁、万用表、示波器等

1.元件安装歪斜\不对称\高度超差\色环电阻标志不一致, 每处扣1分

2.焊点不亮\焊料过多过少\布线不平直, 每处扣0.5分

3.漏焊\虚焊\假焊\搭焊\溅锡, 每处扣3分

7.

4.剪脚留头长度大于1 mm, 每处扣0.5分

5. 电烙铁、万用表、示波器、直流稳压电源、毫伏表、信号发生器使用错误, 每次扣3分

3

安全文明操作

3. 安全用电,不人为损坏元器件\加工件和设备等

4. 保持操作环境整洁,秩序井然,操作习惯良好

3. 发生安全事故,扣总分20分

4. 违反文明操作规程,视情况扣总分5---20分

4

工时: min

超5min扣10分

5

合计

工作小结: (1个课时)

工作任务小结表

日期:

1:你所在的小组从接受任务到完成共用了多少时间?

2:你认为此基于AT89S52单片机的LED点阵显示电子钟设计的制作可以在哪些方面进行改进?

3:对你造成最大困难的是哪些工作?

4:你通过此基于AT89S52单片机的LED点阵显示电子钟仪设计制作在哪些方面得到了提高?

5:你认为在今后的教学中是否还应按照这种教学方法来安排?

51单片机bit、sbin、sfr、sfr_16有什么区别

1.bit和sbit都是C51扩展的变量类型。

bit和int char之类的差不多,只不过char=8位, bit=1位而已。都是变量,编译器在编译过程中分配地址。除非你指定,否则这个地址是随机的。这个地址是整个可寻址空间,RAM+FLASH+扩展空间。bit只有0和1两种值,意义有点像Windows下VC中的BOOL。

sbit是对应可位寻址空间的一个位,可位寻址区:20H~2FH。一旦用了sbi xxx = REGE^6这样的定义,这个sbit量就确定地址了。sbit大部分是用在寄存器中的,方便对寄存器的某位进行操作的。

2.bit位标量

bit位标量是C51编译器的一种扩充数据类型,利用它可定义一个位标量,但不能定义位指针,也不能定义位数组。它的值是一个二进制位,不是0就是1,类似一些高级语言中的Boolean类型中的True和False。

3.sfr特殊功能寄存器

sfr也是一种扩充数据类型,点用一个内存单元,值域为0~255。利用它可以访问51单片机内部的所有特殊功能寄存器。如用sfr P1 = 0x90这一句定P1为P1端口在片内的寄存器,在后面的语句中我们用以用P1 = 255(对P1端口的所有引脚置高电平)之类的语句来操作特殊功能寄存器。

sfr P1 = 0x90; //定义P1 I/O 口,其地址90H

sfr 关键定后面是一个要定义的名字,可任意选取,但要符合标识符的命名规则,名字最好有一定的含义如P1 口可以用P1 为名,这样程序会变的好读好多.等号后面必须是常数,不允许有带运算符的表达式,而且该常数必须在特殊功能寄存器的地址范围之内(80H-FFH),具体可查看附录中的相关表.

sfr 是定义8 位的特殊功能寄存器而sfr16 则是用来定义16 位特殊功能寄存器,

如8052 的T2 定时器,可以定义为:

sfr16 T2 = 0xCC; //这里定义8052 定时器2,地址为T2L=CCH,T2H=CDH

用sfr16 定义16 位特殊功能寄存器时,等号后面是它的低位地址,高位地址一定要位于物

理低位地址之上.注意的是不能用于定时器0 和1 的定义.

sbit 可定义可位寻址对象.如访问特殊功能寄存器中的某位.其实这样应用是经常要

用的如要访问P1 口中的第2 个引脚P1.1.我们可以照以下的方法去定义:

(1) sbit 位变量名=位地址

sbit P1_1 = Ox91;

这样是把位的绝对地址赋给位变量.同sfr 一样sbit 的位地址必须位于80H-FFH 之间.

(2) sbit 位变量名=特殊功能寄存器名^位位置

sft P1 = 0x90;

sbit P1_1 = P1 ^ 1; //先定义一个特殊功能寄存器名再指定位变量名所在的位置,当可

寻址位位于特殊功能寄存器中时可采用这种方法

(3) sbit 位变量名=字节地址^位位置

sbit P1_1 = 0x90 ^ 1;

这种方法其实和2 是一样的,只是把特殊功能寄存器的位址直接用常数表示. 在C51

存储器类型中提供有一个bdata 的存储器类型,这个是指可位寻址的数据存储器,位于单

片机的可位寻址区中,可以将要求可位录址的数据定义为bdata,如:

unsigned char bdata ib; //在可位录址区定义ucsigned char 类型的变量ib

int bdata ab[2]; //在可位寻址区定义数组ab[2],这些也称为可寻址位对象

sbit ib7=ib^7 //用关键字sbit 定义位变量来独立访问可寻址位对象的其中一位

sbit ab12=ab[1]^12;

操作符"^"后面的位位置的最大值取决于指定的基址类型,char0-7,int0-15,long0-31.

sfr 并标准C 语言的关键字,而是Keil 为能直接访问80C51 中的SFR 而提供了一个新

的关键词,其用法是:

sfrt 变量名=地址值。

相关问答

单片机 中INT0,EX0,ET0,IE0.分别表示什么意思?

INT0外部中断0EX0外部中断0允许位ET0定时计数器0溢出中断允许位IE0外部中断0中断请求标志位INT0外部中断0EX0外部中断0允许位ET0定时计数器0溢出中断允许位IE...

单片机 设计中频治疗仪原理及电路图

内容提要:超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离ïsQl�¶ëz)Iwww.hbeda.cn��Qd�ÜÏvò关键词:电路...

单片机 指令INC DPTR的意思?

INCA;A=A+1,仅A中数据加1,不影响标志位INCDPTR;DPTR=DPTR+1,仅DPTR(16位数据指针)中数据加1,不影响标志位,DPTR是16位寄存器,由两个8位寄存(DPH和DPL)...

单片机 扩展系统为何用P0口与P2口?-ZOL问答

bingnv默认都是1,按下会灌入电流有用(0)回复gyfgwxh你好!8个数码管,只用...单片机p0口默认高电平,默认p0口都是1吗,这是对的。按键按下p0口变成0?这是不...

单片机 中INT0,EX0,ET0,IE0.分别表示什么意思?

外部中断0、外部中断0的中断允许控制位、timer的中断控制位、INT1的中断请求标志郭天祥的应用手册里有,希望对你有帮助外部中断0、外部中断0的中断允...

单片机 两种中断触发方式的区别?“低电平触发是当管脚INTO/IN...

[最佳回答]这个你可以看看单片机的电气参数。。。高低电平变化的门槛电压,陡度要求。。。。。

单片机 英文怎么翻译 ?

[回答]Withthearrivalofthe"informationage",asameansofaccesstoinformationtechnology...

单片机 里ISP下载线是什么意思,ISP是什么的缩写?-ZOL问答

ISP下载线就是一根用来在线下载程序的线,类似USB线,但不一样in-systemprogramming在线系统编程一种无需将存储芯片(如EPROM)从嵌入式设备上取出就能对其进行...

【英语翻译单片微型计算机简称 单片机 ,是典型的嵌入式微控制...

[最佳回答]SingleChipMicro-computeriscalledSingleChipforshort,whichisatypicalEmbeddedMicrocontroll...

单片机 IE0的数值是由INT0决定的吗?

IE0外部中断0的中断标志位。单片机接收到中断信号后,IE0置1,产生中断,进入外部中断程序后IE0清零。这个过程是单片机硬件自动作用的,软件上不需要处理。I...

猜你喜欢