STC89C51系列单片机的结构..
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
P3.6
P3.7
WR
RD
O
O
外部数据存储器写信号
外部数据存储器读信号
2.3
STC89C51的系列单片机的主要组成部分
该系列单片机由中央处理器(CPU)、存储器和I/O接口三 大部分组成。 其中CPU包括运算器和控制器两大部分。 2.3.1 运算器
对操作数进行算术、逻辑和位操作运算。主要包括算术
逻辑运算单元ALU、累加器A、位处理器、程序状态字寄存 器PSW及两个暂存器等。 1.算术逻辑运算单元ALU 可对8位变量逻辑运算(与、或、异或、循环、求补和清
零),还可算术运算(加、减、乘、除)
12
ALU还有位操作功能,对位变量进行位处理,如置“1”、 清“0”、求补、测试转移及逻辑“与”、“或”等。 2.累加器A
第二章 STC89C51系列单片机的结构和原理
2.1 STC89C51如何控制流水灯 2.2 STC89C51系列单片机的内部结构 2.3 STC89C51系列单片机的主要组成部分 2.4 单片机的复位电路 2.5 单片机最小系统
2.1 STC89C51如何控制流水灯
任务:使用单片机控制发光管按一定顺序亮 1.利用Proteus7连接电路图
P2=0XEF; temp1=35000; delay(temp1); P2=0XDF; temp1=35000; delay(temp1); P2=0XBF; temp1=35000; delay(temp1); P2=0X7F; temp1=35000; delay(temp1);
} }
3.利用 keil c软件将C语言转化成HEX文件 4.将HEX文件添加到Proteus7软件中,进行仿真
输入/输出引脚
• P0 口( P0.0-P0.7 , 32-39 脚):是双向 8 位三态 I/O 口。可向 其写入1 使其状态为悬浮,用作高阻输入。P0口也可以在访 问外部程序存储器时作地址的低字节,在访问外部数据存储 器时作数据总线,此时通过内部强上拉传送1。 • P1口(P1.0-P1.7,1-8脚):是带内部上拉的双向I/O口。向 P1口写入1时,P1口被内部上拉为高电平,可用作输入口; 当作为输入脚时,被外部拉低的P1口会因为内部上拉而输出 电流。 • P2口(P2.0-P2.7,21-28脚):是带内部上拉的双向I/O口。 向P2口写入1时,P2口被内部上拉为高电平,可用作输入口。 当作为输入脚时,被外部拉低的P2口会因为内部上拉而输出 电流。在访问外部程序存储器和外部数据时分别作为地址高 位字节和 16 位地址,此时通过内部强上拉传送 1。当使用 8 位寻址方式访问外部数据存储器时,P2口发送P2 特殊功能寄 存器的内容。
全双工增强型 UART
定时器0 定时器1
定时器2
振荡器
看门狗定ቤተ መጻሕፍቲ ባይዱ器
51系列单片机结构框图
1. 电源引脚
VSS(20脚):接地,0V参考点。 VCC(40脚):电源,提供掉电、空闲、正常工作
2.外接晶体引脚
XTAL1(19脚):接外部晶体的一端,振荡反向放大器 的输入端和内部时钟电路输入端。 XTAL2(18脚):接外部晶体的另一端,振荡反向放大 器的输出端。
3. 控制信号或与其它电源复用引脚
控制信号或与其它电源复用引脚有 RST/VPD、 ALE / PROG.、PSEN 和 EA / VPP 等4种形式。
• RST ( 9 脚):复位端。当晶体在运行时,只要此引脚上出 现2个机器周期高电平即可复位,内部有扩散电阻连接到Vss, 仅需要外接一个电容到Vcc即可实现上电复位。 • ALE(30脚):地址锁存使能。在访问外部存储器时,输出 脉冲锁存地址的低字节,在正常情况下,ALE输出信号恒定 为1/6振荡频率。并可用作外部时钟或定时,注意每次访问外 部数据时,一个ALE脉冲将被忽略。 • PSEN ( 29 脚):程序存储使能。读外部程序存储。当从外 部读取程序时, PSEN 每个机器周期被激活两次,在访问外 部数据存储器时PSEN无效,访问内部程序存储器时 PSEN无 效。 • EA/Vpp(31脚):外部寻址使能 /编程电压。在访问整个外 部程序存储器时,EA必须外部置低。如果EA为高时,将执 行内部程序。当RST释放后EA脚的值被锁存,任何时序的改 变都将无效。该引脚在对 FLASH 编程时用于输入编程电压 (Vpp)。
2.利用 keil c软件编写程序 #include <reg51.h> #include <stdio.h> unsigned int temp1; void delay(unsigned int temp)//延时程序 { while(--temp); }
void main() { P2=0XFF;//led is off while(1) { P2=0XFE; temp1=35000; delay(temp1); P2=0XFD; temp1=35000; delay(temp1); P2=0XFB; temp1=35000; delay(temp1); P2=0XF7; temp1=35000; delay(temp1);
思考:单片机如何使用?
2.2 STC89C51系列单片机的内部结构
增强的80C51 CPU 12时钟模式,6时钟模式
512B/1280B 数据RAM 端口3 可配置的I/O口 端口2 可配置的I/O口 端口1 可配置的I/O口 端口0 可配置的I/O口 晶体 或 谐振器
4K / 8 K/ ... 64KB 程序FLASH
P3 口( P3.0-P3.7 , 10-17 脚) :是带内部上拉的双向 I/O
口。向P3 口写入1时,P3 口被内部上拉为高电平, 可用作输入口。当作为输入脚时,被外部拉低的 P3 口会因为内部上拉而输出电流。 P3 口脚具有第二功 能,表2-2介绍了P3口的第二功能。
口线 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 第二功能 RxD TxD INT0 INT1 T0 T1 类型 I 0 I I I I 名 称 串行输入口 串行输出口 外部中断0 外部中断1 定时器0 外部输入 定时器1 外部输入