单片机实训教案

更新时间:2023-09-15 16:33:01 阅读量: 资格考试认证 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

单片机基础知识

1.1 单片机芯片的内部结构及原理

一.单片机的概念

单片机即单片微型计算机,就是将CPU、RAM、ROM、定时/计数器和多种I/O接口电路都集成在一块芯片上的微型计算机。

二.单片机的类型

MCS-51系列单片机包括许多类型,常用的有80C51子系列、80C52子系列,其配置如表1.1所示。MCS-51系列单片机与AT89C51和87C51芯片内部结构及原理兼容。

表1.1 MCS-51系列单片机配置一览表

片内存储器/KB 系列 无ROM 片内ROM 8051 4 KB 80C51 4 KB 8052 8 KB 80C252 8 KB 片内 EPROM 8751 4 KB 87C51 4 KB 8752 8 KB 87C252 8 KB 片内 片内 定时器/计数器 并行I/O 串行I/O 中断源 制造工艺 FEPROM RAM 8031 MCS-51 子系列 80C31 128 B 2×16位 2×8位 1 5 HMOS 89C51 128 B 2×16位 2×8位 1 5 CHMOS MCS-52 子系列 8032 80C232 89C52 256 B 3×16位 2×8位 256 B 3×16位 2×8位 1 1 6 6 HMOS CHMOS 三.MCS-51系列单片机的内部结构

MCS-51单片机结构框图如图1.1所示,各功能部件由内部总线连接在一起。 MCS-51单片机芯片内部集成包括下列部件: (1) 一个8位微处理器CPU。 (2) 256 B数据存储器RAM和特殊功能寄存器SFR。 (3) 4 KB内部程序存储器ROM。

(4) 两个定时/计数器,用以对外部事件进行计数,也可用作定时器。

(5) 四个8位可编程的I/O(输入/输出)并行端口,每个端口既可做输入,也可做输出。 (6) 一个串行端口,用于数据的串行通信。 (7) 具有五个中断源、两个优先级的中断结构。 (8) 内部有一个振荡器和时钟电路。 (9) 有一个可编程全双工的串行口。

(10) 可寻址64 KB的外部数据存储空间和64 KB的外部程序存储器的控制电路。

T0时钟电路T1ROMRAM定时/计数器CPU并行接口串行接口中断系统P0P1P2P3TXDRXDINT0INT1图1.1 MCS-51单片机结构框图

四.MCS-51系列单片机的引脚功能

MCS-51系列单片机引脚如图1.2所示。 P0.0 ~ P0.7: P0口8位双向口线。

P1.0 ~ P1.7 :P1口8位双向口线。 P2.0 ~ P2.7 :P2口8位双向口线。 P3.0 ~ P3.7 :P3口8位双向口线。

ALE:地址锁存控制信号。在系统扩展时,ALE用于控制把P0口输出 的低8位地址锁存起来,以实现低位地址和数据的隔离。此外,由于ALE 是以晶振1/6的固定频率输出的正脉冲,因此,可作为外部时钟或外部定时 脉冲使用。

PSEN:外部程序存储器读选通信号。在读外部ROM时,PSEN有效 (低电平),以实现外部ROM单元的读操作。

EA:访问程序存储控制信号。当信号为低电平时,对ROM的读操作 限定在外部程序存储器;当信号为高电平时,对ROM的读操作是从 内部程序存储器开始,并可延至外部程序存储器。

图1.2MCS-51系列单片机引脚如图 RST:复位信号。当输入的复位信号延续两个机器周期以上的高电平

时即为有效,用以完成单片机的复位初始化操作。

XTAL1和XTAL2:外接晶体引线端。当使用芯片内部时钟时,此二 引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于接外 部时钟脉冲信号。 VSS:地线。

VCC:+5 V电源。

以上是MCS-51单片机芯片40条引脚的定义及简单功能说明,读者可以对照实训电路找到相应引脚,在电路中查看每个引脚的连接使用。

P3口线的第二功能。P3的8条口线都定义有第二功能

1234567891011121314151617181920P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST/VPDRXD P3.0TXD P3.1INT0 P3.2INT1 P3.3T0 P3.4T1 P3.5WR P3.6RD P3.7XTAL2XTAL1VSSVCCP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EA/VPPALE/PROGPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.04039383736353433323130292827262524232221五、MCS-51系列单片机存储器结构

1. 程序存储器

对于80C51来说,程序存储器(ROM)的内部地址为0000H~0FFFH,共4 KB;外部地址为1000H~

8031 8051 8751FFFFH,共60 KB。程序存储器的结构如图1.3所示。当 =1,程序计数器由内部0FFFH执行到外部1000H时,会自动跳转;当=0时,只执行外部程序。对于87C51来说,内部有4 KB的EPROM,将它作为内部程序存储器;80C31内部无程序存储器,必须外接程序存储器。 FFH F0H 特FFFFH 特 FFFFH E0H 殊 功D0H 殊

B8H 能外 部 外部 B0H 寄功 A8H 存RAM ROM 能 A0H 器 98H 寄 (I/O口 90H 中位 存 地址) 88H 寻80H 80H 址器 7FH

通用

30H RAM区 1000H 2FH 位寻址区 20H 0FFFH 内部 0FFFH 外部

1FH ROM ROM

工作寄(EA=1) 0000H (EA=0) 0000H 0000H 存器区 00H

程序存储器 外部数据存储器 内部数据存储器

(a)

(b) 图1.2MCS-51系列单片机引脚如

(c)

图1.3单片机存储器结构

80C31最多可外扩64 KB程序存储器,其中6个单元地址具有特殊用途,保留给系统使用,如表1.2所示。其中,0000H是系统的启动地址,一般在该单元中存放一条绝对跳转指令;另外0003H、000BH、0013H、001BH和0023H对应5个中断源的中断服务入口地址。 表1.2 MCS-51单片机复位、中断入口地址

操 作 入口地址

复位 0000H 外部中断INT0 0003H 定时器/计数器0溢出 000BH 外部中断INT1 0013H

定时器/计数器1溢出 001BH

子系列) 定时器/计数器2溢出或T2EX端负跳变(MCS-52

串行口中断 0023H 002BH 2. 内部数据存储器

MCS-51单片机片内RAM的配置如图1.3(b)所示。片内RAM为256字节,地址范围为00H~FFH,分为两大部分:低128字节(00H~7FH)为真正的RAM区;高128字节 (80H~FFH)为特殊功能寄存器区SFR。

在低128字节RAM中,00H~1FH共32单元是4个通用工作寄存器区。每一个区有8个通用寄存器

R0~R7。寄存器和RAM地址对应关系如表1.3所示。RAM中的位寻址区地址表如表1.4所示,SFR特殊功能寄存器地址表如表1.5所示。

表1.3 寄存器和RAM地址对照表

地 址 寄存器 R0 R1 R2 R3 R4 R5 R6 R7 RAM地址 20H 21H 22H 23H 24H 25H 26H 27H 28H 29H 2AH 2BH 2CH 2DH 2EH 2FH 10H 01H 09H 11H 02H 0AH 12H 03H 0BH 13H 04H 0CH 14H 05H 0DH 15H 06H 0EH 16H 07H 0FH 17H 表1.4 RAM中的位寻址区地址表 D4 D7 D6 D5 D3 04 07 06 05 03 0C 0F 0E 0D 0B 14 17 16 15 13 1C 1F 1E 1D 1B 24 27 26 25 23 2C 2F 2E 2D 2B 34 37 36 35 33 3C 3F 3E 3D 3B 44 47 46 45 43 4C 4F 4E 4D 4B 54 57 56 55 53 5C 5F 5E 5D 5B 64 67 66 65 63 6C 6F 6E 6D 6B 74 77 76 75 73 7C 7F 7E 7D 7B 00H 08H 0区 1区 2区 3区 18H 19H 1AH 1BH 1CH 1DH 1EH 1FH D2 02 0A 12 1A 22 2A 32 3A 42 4A 52 5A 62 6A 72 7A D1 01 09 11 19 21 29 31 39 41 49 51 59 61 69 71 79 D0 00 08 10 18 20 28 30 38 40 48 50 58 60 68 70 78 表1.5 SFR特殊功能寄存器地址表

专用寄存器名称 P0口 堆栈指针 数据指针低字节 数据指针高字节 定时器/计数器控制 符号 P0 SP DPL DPTR DPH TCON 地址 80H 81H 82H 83H 88H 89H 8AH 8BH 8CH 8DH 90H 97H 定时器/计数器方式控制 TMOD 定时器/计数器0低字节 定时器/计数器1低字节 定时器/计数器0高字节 定时器/计数器1高字节 P1口 电源控制 TL0 TL1 TH0 TH1 P1 PCON D7 87 TF1 8F GATE 97 SMOD 位地址与位名称 D6 86 TR1 8E C/T 96 — D5 85 TF0 8D M1 95 — D4 84 TR0 8C M0 94 — D3 83 IE1 8B 93 GF1 D2 82 IT1 8A 92 GF0 D1 81 IE0 89 M1 91 PD D0 80 IT0 88 M0 90 IDL GATE C/T 1.2 MCS-51系列单片机指令系统

MCS-51系列单片机指令按照功能可分为数据传送类指令、算术运算类指令、逻辑运算与循环类指令、程序转移类指令和位操作类指令。

一、数据传送类指令

1.访问RAM和SFR的指令 (1) 以A为目的操作数: MOV A,Rn ;(A)←(Rn) MOV A,direct ;(A)←(direct) MOV A,@Ri ;(A)←((Ri)) MOV A,#data ;(A)←#data

(2) 以Rn为目的操作数: MOV Rn,A ;(Rn)←(A) MOV Rn,direct ;(Rn)←(direct) MOV Rn,#data ;(Rn)←#data

(3) 以直接地址为目的操作数: MOV @Ri,A ;((Ri))←(A)

2PL2

2.实验目的

(1) 学习8031内部定时/计数器使用方法。 (2) 进一步掌握中断处理编程方法。

3.实验电路及连线

4.实验说明

(1) 本实验中内部计数器起计数器的作用。外部事件计数脉冲由P3.4引入定时器T0。单片机在每个机器周期采样一次输入波形,因此单片机至少需要两个机器周期才能检测到一次跳变。这就要求被采样电平至少维持一个完整的机器周期,以保证电平在变化之前即被采样。同时这就决定了输入波形的频率不能超过机器周期频率。

(2) 实验时P3.4对应的连线分别接频率发生器对应的Q13-Q16,不同频率对应的值会在LED上显示出来。 5.实验仪器和设备

AEDK5196ET单片机实验箱一台,PC机一台,LCA51ET单片机开发环境。

6.实验框图

7.参考程序

ORG AJMP ORG START:

MOV MOV MOV MOV MOV MOV MOV SETB SETB SETB SETB SETB SJMP INT_T1:

PUSH PUSH CLR MOV MOV MOV 001BH ;T1中断入口地址

INT_T1 0040H SP,#60H

TMOD, ;置T1为方式1

;置T0为方式1,计数方式, ;门控选通位有效 TL0, ;计数器清零 TH0,

TL1, ;延时50mS常数 TH1, R0,#20 ;延时 5 秒常数 ;启动T0 ET0

TR1 ;启动T1 ET1

;开中断 $ ACC PSW TR1

TL1, ;延时 50mS 常数 TH1,

R1,TL0 ;保存计数值

MOV R2,TH0

MOV TL0,#00H ;清计数器 MOV TH0,#00H SETB TR1 DJNZ R0, MOV R0,#20 ;延时 5 秒常数 MOV DPTR,#8300H ;LED地址 MOV A,R1

MOVX @DPTR,A ;把计数值在LED上显示 EXIT:

POP POP END

8.试验报告要求与讨论

(1).总结计数器的使用方法。

(2).定时/计数器中定时与计数的却别和联系。 (3).写出程序代码。

实验五 扩展存储器读写实验

一、预习内容 1.扩展的三种总线

地址总线:P2口为高8位地址线,P0口为低8位地址线; 数据总线:P0口为8根数据总线;

控制总线:EA,ALE,PSEN,WR,RD。 2.存储器62256芯片

存储器62256芯片引脚排列图如图3.29所示,引脚功能定义如下: A0~A14:地址输入线。 D0~D7:双向三态数据线。

:片选信号输入线,低电平有效。 :读选通信号线,低电平有效。 :写选通信号线,低电平有效。 3.访问外部数据存储器的指令

写数据指令:MOVX @DPTR,A MOVX @Ri,A 读数据指令:MOVX A,@DPTR MOVX A,@Ri

二、实验练习

1.实验要求

(1)使用62256,作为数据空间0~7FFFH,对其进行读写(使用监控命令和程序)。

2.实验目的

. (1)学习片外存储器扩展方法。

. (2)学习数据存储器,不同的读写方法。

3.实验电路及连线

4.实验说明

(1)在用监控命令方式读写RAM时,可进入实验机调试工具Talk with AEDK,在I状态下执行SX4100,55,再执行SX4100,屏幕上应显示55;执行SX4100,AA,再执行SX4100,屏幕上应显示AA。以上过程执行效果与通过编程执行效果完全相同。 ?注:SX是实验机对外部数据空间读写命令。

(2)读写数据的选用,本例采用的是55(0101,0101)与AA(1010,1010)。一般采用这两个数据的读写操作就可查出数据总线的短路、断路等,在实际调试用户电路时非常有效。

(3)在I状态下,执行MEM1程序,对实验机数据进行读写,若L1灯闪动说明RAM读写正常。

5.实验仪器和设备

AEDK5196ET单片机实验箱一台,PC机一台,LCA51ET单片机开发环境。 6.实验框图 程序框图:

本文来源:https://www.bwwdw.com/article/dsth.html

Top