问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

AT89C51数据手册:中文资料详解

创作时间:
作者:
@小白创作中心

AT89C51数据手册:中文资料详解

引用
1
来源
1.
https://bomyg.com/m_detail/309563.html

AT89C51是一款8位微控制器,基于MCS-51内核,广泛应用于嵌入式系统设计中。以下是AT89C51的详细中文资料,包括其特点、引脚配置、存储结构、工作模式、指令集等。

1. 特点

  • 兼容MCS-51指令集 :AT89C51完全兼容MCS-51指令集,方便用户从其他51系列微控制器迁移。

  • 4KB闪存 :内部集成4KB可编程闪存,可进行1000次以上的擦写操作。

  • 128字节RAM :内部集成128字节随机存取存储器(RAM)。

  • 32个I/O引脚 :具有32个可编程的输入/输出引脚,分为四个8位I/O端口P0、P1、P2和P3。

  • 两个16位定时器/计数器 :T0和T1两个16位定时器/计数器,可用于定时、中断和事件计数。

  • 五个中断源 :支持两外部中断(INT0和INT1)和三个内部中断源(T0、T1和串行通信)。

  • 全双工串行通信接口 :内置一个全双工的UART,支持串行通信。

  • 看门狗定时器 :提供系统保护功能,防止程序跑飞。

  • 低功耗模式 :包括掉电模式和空闲模式,适用于低功耗应用场合。

2. 引脚配置

AT89C51有40个引脚,以下是其引脚配置及功能说明:

  • VCC (40) :电源引脚,+5V电源输入。

  • GND (20) :地引脚。

  • P0.0-P0.7 (32-39) :端口0,8位双向I/O端口或低字节地址/数据总线(在外部存储器访问时)。

  • P1.0-P1.7 (1-8) :端口1,8位双向I/O端口。

  • P2.0-P2.7 (21-28) :端口2,8位双向I/O端口或高字节地址总线(在外部存储器访问时)。

  • P3.0-P3.7 (10-17) :端口3,8位双向I/O端口,同时具有特定功能。

  • P3.0 (10) :RXD(串行输入)

  • P3.1 (11) :TXD(串行输出)

  • P3.2 (12) :INT0(外部中断0)

  • P3.3 (13) :INT1(外部中断1)

  • P3.4 (14) :T0(定时器0)

  • P3.5 (15) :T1(定时器1)

  • P3.6 (16) :WR(外部存储器写信号)

  • P3.7 (17) :RD(外部存储器读信号)

  • RST (9) :复位引脚,输入高电平复位。

  • ALE/PROG (30) :地址锁存使能/编程脉冲。

  • PSEN (29) :程序存储器读取使能信号。

  • EA/VPP (31) :外部访问使能/编程电源。

3. 存储结构

AT89C51的存储结构包括程序存储器和数据存储器。

程序存储器

  • 内部闪存 :4KB的程序存储器,可通过编程器进行烧录。

  • 外部程序存储器 :当EA引脚接低电平时,程序将从外部存储器开始执行。

数据存储器

  • 内部RAM :128字节的RAM,分为工作寄存器区、位地址区和通用RAM区。

  • 工作寄存器区 :00H-1FH,共32字节,分为4组,每组8个寄存器R0-R7。

  • 位地址区 :20H-2FH,共16字节,可按位寻址。

  • 通用RAM区 :30H-7FH,共80字节,用户可随意使用。

  • 外部数据存储器 :可通过MOVX指令访问外部数据存储器。

4. 工作模式

AT89C51有多种工作模式,用户可以根据需要配置定时器、中断和串行通信。

定时器/计数器

  • 模式0 :13位计数器。

  • 模式1 :16位计数器。

  • 模式2 :8位自动重装载定时器。

  • 模式3 :分成两个独立的8位定时器(仅T0)。

中断

AT89C51支持5个中断源,每个中断源都有独立的优先级设置。

  • 外部中断0 :INT0,低电平触发或边沿触发。

  • 外部中断1 :INT1,低电平触发或边沿触发。

  • 定时器0中断 :T0,溢出中断。

  • 定时器1中断 :T1,溢出中断。

  • 串行通信中断 :RI/TI,接收/发送中断。

串行通信

AT89C51内置一个全双工UART,支持多种串行通信模式。

  • 模式0 :移位寄存器,8位数据,波特率固定为Fosc/12。

  • 模式1 :10位UART,8位数据+1位起始位+1位停止位,波特率可变。

  • 模式2 :11位UART,9位数据+1位起始位+1位停止位,波特率为Fosc/32或Fosc/64。

  • 模式3 :11位UART,9位数据+1位起始位+1位停止位,波特率可变。

5. 指令集

AT89C51的指令集包括数据传输、算术运算、逻辑运算、控制转移和位操作等多种指令。

数据传输指令

  • MOV :数据传送。

  • PUSH :堆栈压入。

  • POP :堆栈弹出。

  • XCH :数据交换。

算术运算指令

  • ADD :加法。

  • SUBB :带借位减法。

  • INC :加1。

  • DEC :减1。

逻辑运算指令

  • ANL :按位与。

  • ORL :按位或。

  • XRL :按位异或。

  • CLR :清零。

  • CPL :取反。

控制转移指令

  • SJMP :短跳转。

  • LJMP :长跳转。

  • AJMP :绝对跳转。

  • JZ :零跳转。

  • JNZ :非零跳转。

位操作指令

  • SETB :置位。

  • CLR :清零。

  • CPL :取反。

  • ANL :按位与。

  • ORL :按位或。

结论

AT89C51作为一种经典的8位微控制器,凭借其丰富的功能和简单易用的特性,在嵌入式系统设计中得到了广泛应用。通过本文的详细介绍,我们了解了AT89C51的基本特点、引脚配置、存储结构、工作模式和指令集。在实际应用中,用户可以根据具体需求,灵活配置和使用AT89C51,实现多种功能。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号