at89c51数据手册,中文资料

 

 

晨欣小编

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,实现多种功能。


 

推荐大牌

收起 展开
客服服务
我的专属客服
工作时间

周一至周六:09:00-12:00

13:30-18:30

投诉电话:0755-82566015

关注微信

扫码关注官方微信,先人一步知晓促销活动

0 优惠券 0 购物车 BOM配单 我的询价 TOP