89C51单片机硬件结构和原理
单片机原理与应用设计张毅刚等编著电子教案讲义省公开课一等奖全国示范课微课金奖PPT课件

2.锁存器74LS573 输入D端和输出Q端依次排在芯片两侧,为绘制印刷电路板时
布线提供了方便。
图8-10
22/60
74LS573各引脚说明以下: D7~D0:8位数据输入线。 Q7~Q0:8位数据输出线。 G :数据输入锁存选通信号,该引脚与74LS373G端功效相同
。 OE*:数据输出允许信号,低电平有效。当该信号为低电平时
供低8位地址和8位双向数据总线。片外数据存放器RAM读和写 由89C51RD*(P3.7)和WR*(P3.6)信号控制,而片外程序存 放器EPROM输出允许端(OE*)由89C51程序存放器读选通信号 PSEN*控制。 尽管与EPROM地址空间范围都是相同,但因为控制信号不一样, 故不会发生总线冲突。
那么,这32KB空间利用74LS138译码器可划分为8个4KB空间。 假如把P2.7经过一个非门与74LS138译码器G1端连接起来, 如图8-6所表示,就不会发生两个32KB空间重合问题了。
17/60
图8-6
8.2.2 外部地址锁存器 地址锁存器芯片: 74LS373、8282、74LS573等。 1. 锁存器74LS373 带有三态门8D锁存器,其引脚及内部结构如图8-7和图8-8。
EPROM芯片没有写入控制脚,只有读出控制脚,记为OE*,它 与89C51单片机PSEN*相连,地址线、数据线分别与89C51地址 线、数据线相连,片选端控制可采取线选法或译码法。图813为外扩一片27128接口电路图 。
34/60
图8-13
35/60
3. 使用多片EPROM扩展电路 89C51扩展4片27128。
12/60
图8-3
13/60
输
G1 G2A* G2B*
秦晓飞系列-单片机原理及应用-第7章 89C51、S51串行口及串行通信技术

第7章 89C51/S51串行口及串行口通信技术
§7.1 §7.2 §7.3 §7.4 §7.5 §7.6 串行通信基本知识 串行口及应用 89C51/S51与89C51/S51点对点异步通信 89C51/S51与PC机间通信 无线单片机及其点到多点无线通信 RFID技术与物联网的应用
7.1 串行通信基本知识
7.1 串行通信基本知识
7.1.3 异步通信和同步通信 2.同步通信
同步通信中,在数据开始传送前用同步字符来指示(常约定1~2个),并由时 钟来实现发送端和接收端同步,即检测到规定的同步字符后,下面就连续按顺序 传送数据,直到通信告一段落。 同步传送时,字符与字符之间没有间隙,也不用起始位和停止位,仅在数据 块开始时用同步字符SYNC来指示,其数据格式如图7-4所示。
在帧格式中,一个字符由四个部分组成:起始位、数据位、奇偶校验位和停 止位。首先是一个起始位(0),然后是5~8位数据(规定低位在前,高位在后) ,接下来是奇偶校验位(可省略),最后是停止位(1)。
• 起始位(0)信号只占用一位,用来通知接收设备一个待接收的字符开始到达 。线路上在不传送字符时应保持为 1。接收端不断检测线路的状态,若连续为1 以后又测到一个0,就知道发来一个新字符, 应马上准备接收。字符的起始位 还被用作同步接收端的时钟,以保证以后的接收能正确进行。 • 数据位紧接在起始位后面,它可以是5(D0~D4)、6、7或8位(D0~D7)。 • 奇偶校验(D8)只占一位,但在字符中也可以规定不用奇偶校验位,则这一位 就可省去。也可用这一位( 1/0 )来确定这一帧中的字符所代表信息的性质( 地址/数据等)。 • 停止位用来表征字符的结束,它一定是高电位(逻辑1)。停止位可以是1位、 1.5位或2位。接收端收到停止位后,知道上一字符已传送完毕,同时,也为接 收下一个字符做好准备——只要再接收到 0,就是新的字符的起始位。若停止 位以后不是紧接着传送下一个字符,则使线路电平保持为高电平(逻辑1)。
89c51芯片资料

概述该系列单片机是采用高性能的静态80C51设计由先进CMOS工艺制造并带有非易失性Flash程序存储器全部支持12时钟和6时钟操作P89C51X2和P89C52X2/54X2/58X2分别包含128字节和256字节RAM32条I/O口线3个16位定时/计数器6输入4优先级嵌套中断结构1个串行I/O口可用于多机通信I/O扩展或全双工UART以及片内振荡器和时钟电路此外由于器件采用了静态设计可提供很宽的操作频率范围频率可降至0可实现两个由软件选择的节电模式空闲模式和掉电模式空闲模式冻结CPU但RAM定时器串口和中断系统仍然工作掉电模式保存RAM的内容但是冻结振荡器导致所有其它的片内功能停止工作由于设计是静态的时钟可停止而不会丢失用户数据运行可从时钟停止处恢复选型表特性特性y 80C51核心处理单元4k字节FLASH89C51X28k字节FLASH89C52X216k字节FLASH89C54X232k字节FLASH89C58X2128字节RAM89C51X2256字节RAM89C52X2/54X2/58X2布尔处理器全静态操作y 12时钟操作可选6个时钟通过软件或并行编程器y 存储器寻址范围64K字节ROM和64K字节RAMy 电源控制模式―时钟可停止和恢复―空闲模式―掉电模式y 两个工作频率范围6时钟模式时为0到20MHz12时钟模式时为0到33MHzy LQFP, PLCC或DIP封装y 扩展温度范围y 双数据指针y 3个加密位y 4个中断优先级y 6个中断源y 4个8位I/O口y 全双工增强型UART―帧数据错误检测―自动地址识别y 3个16位定时/计数器T0T1标准80C51和增加的T2捕获和比较y 可编程时钟输出y 异步端口复位y 低EMI (禁止ALE以及6时钟模式)y 掉电模式可通过外部中断唤醒订购信息P89C51X24K字节FLASH类型编号封装温度范围()P89C51X2BA PLCC44 0~+70P89C51X2BN DIP40 0~+70P89C51X2BBD LQFP44 0~+70P89C51X2FA PLCC44 -40~+85 P89C52X28K字节FLASH类型编号封装温度范围()P89C52X2BA PLCC44 0~+70P89C52X2BN DIP40 0~+70P89C52X2BBD LQFP44 0~+70P89C52X2FA PLCC44 -40~+85 P89C52X2FN DIP40 -40~+85 P89C52X2FBD LQFP44 -40~+85 P89C54X216K字节FLASH类型编号封装温度范围()P89C54X2BA PLCC44 0~+70P89C54X2BN DIP40 0~+70P89C54X2BBD LQFP44 0~+70P89C54X2FA PLCC44 -40~+85 P89C58X232K字节FLASH类型编号封装温度范围()P89C58X2BA PLCC44 0~+70P89C58X2BN DIP40 0~+70P89C58X2BBD LQFP44 0~+70P89C58X2FA PLCC44 -40~+85B=07040+85下表所示为操作模式电源电压以及最大外部时钟频率之间的关系操作模式电源电压最大时钟频率6-clock 5V10% 20MHz 12-clock 5V10% 33MHz框图1逻辑符号PLCC和CLCC封装及管脚功能DIP 封装及管脚功能 LQFP 封装及管脚功能管脚描述 管脚号名称 DIP LCC QFP 类型 名称和功能Vss 20 22 16I地 Vcc 40 44 38 I电源提供掉电空闲正常工作电压P0.0-0.739-32 43-36 37-30 I/O P0口 P0口是开漏双向口可以写为1使其状态为悬浮用作高阻输入P0也可以在访问外部程序存储器时作地址的低字节在访问外部数据存储器时作数据总线此时通过内部强上拉输出1P1.0-1.7 1-8 1 22-92 340-44 1-3I/O P1口 P1口是带内部上拉的双向I/O 口向P1口写入1时P1口被内部上拉为高电平可用作输入口当作为输入脚时被外部拉低的P1口会因为内部上拉而输出电流(见DC 电气特性)P1口第2功能T2(P1.0) 定时/计数器2的外部计数输入/时钟输出(见可编程输出)T2EX(P1.1)定时/计数器2重装载/捕捉/方向控制P2.0-2.7 21-28 24-31 18-25 I/O P2口 P2口是带内部上拉的双向I/O 口向P2口写入1时P2口被内部上拉为高电平可用作输入口当作为输入脚时被外部拉低的P2口会因为内部上拉而输出电流(见DC 电气特性)在访问外部程序存储器和外部数据时分别作为地址高位字节和16位地址(MOVX @DPTR)此时通过内部强上拉传送1当使用8位寻址方式(MOV@Ri)访问外部数据存储器时,P2口发送P2特殊功能寄存器的内容P3口P3口被内部上拉为高电平可用作输入口输入脚时口会因为内部上拉而输出电电气特性)串行输入口INT0(P3.2)INT1(P3.3)WR(P3.6)当晶振在运行中期高电平即可复位内部有扩散电阻连接到VssVcc输出脉冲锁存地在正常情况下ALE输出信号恒定为并可用作外部时钟或定时注意每次访问外部数据时一个ALE可以通过置位ALE只能在执行程序存储使能当执行外部程序存储器代码时个机器周期被激活两次在访问外部数据存储器时访问内部程序存储器时外部寻址使能在访问整个外部程序存储器时如果EA将执行内部程序除非程序计数器包含大于片内FLASH的地址该引脚在(Vpp)如果保密位已编程在复位时由内部锁存反相振荡放大器输入和内部时钟发生电路输入反相振荡放大器输出注: 为了避免上电时的”latch-up”效应任意管脚Vpp除外上的电压任何时候都不能高于Vcc+0.5V低于Vss-0.5V表1 P89C51X2/52X2/54X2/58X2 特殊功能寄存器双字节指针高字节*号的#80C51修改而来或新增加的表示保留位1复位值由复位源确定存储器的内容存储单先进的沟道氧化工艺和低内部电场的结合使擦除和编程操作特性y 可编程加密位y 每字节最少10000次擦除/编程周期 y 数据最少可保存10年y 从一般销售商处可获得编程支持振荡器特性XTAL1和XTAL2为输入和输出可分别作为一个反相放大器的输入和输出此管脚可配置为使用内部振荡器要使用外部时钟源驱动器件时XTAL2可以不连接而由XTAL1驱动外部时钟信号无占空比的要求因为时钟通过触发器二分频输入到内部时钟电路但高低电平的最长和最短时间必须符合手册的规定时钟控制寄存器CKCON该器件提供通过一个SFR 位CKCON 的X2位和一个Flash 位保密块中的FX2控制选择6时钟/12时钟模式当X2置0时12时钟模式有效该位置1时系统切换到6时钟模式由于该功能是通过SFR 位实现的因此可以随时访问并修改需要注意的是将X2从0改为1将导致用户代码以两倍的速度执行因为所有的系统时间间隔都变成原来的1/2从6时钟模式变为12时钟模式会将运行代码的速度降低为1/2Flash 时钟控制位FX2可通过并行编程器编程取代X2位实现6时钟模式见表2表2FX2时钟模式位只能通过并行编程器设置X2位CKCON.0CPU 时钟模式擦除 0 12时钟模式默认擦除 1 6时钟模式 编程 X 6时钟模式可编程时钟输出可从P1.0编程输出50%占空比的时钟信号P1.0除了作为常规I/O 口外还有两个可选功能它可编程为1用于定时/计数器2的外部时钟输入2使用16MHz操作频率时12时钟模式下输出50%占空比的61Hz~4MHz时钟信号6时钟模式时为122Hz~8MHz要将定时/计数器2配置为时钟发生器C/T2(T2CON.1)必须清零而T2MOD中的T20E位必须置位要启动定时器2还必须将TR2(T2CON.2)置位时钟输出频率由振荡器频率和定时器2捕获寄存器的重新装入值确定公式如下振荡器频率n65536RCAP2H,RCAP2L此处n = 166时钟模式或3212时钟模式RCAP2H,RCAP2L RCAP2H和RCAP2L的内容作为一个16位无符号整数在时钟输出模式中定时器2的翻转将不会产生中断这和它作为波特率发生器时相似定时器2可同时作为波特率发生器和时钟发生器但需要注意的是波特率和时钟输出频率相同复位在振荡器工作时将RST脚保持至少两个机器周期高电平12时钟模式为24个振荡器周期6时钟模式为12振荡器周期可实现复位为了保证上电复位的可靠RST保持高电平的时间至少为振荡器启动时间通常为几个毫秒再加上两个机器周期复位后振荡器以12时钟模式运行当已通过并行编程器设置为6时钟模式时除外低功耗模式时钟停止模式静态设计使时钟频率可以降至0MHz(停止)当振荡器停振时RAM和SFR的值保持不变该模式允许逐步应用并可将时钟频率降至任意值以实现系统功耗的降低如要实现最低功耗则建议使用掉电模式空闲模式空闲模式见表3中CPU进入睡眠状态但片内的外围电路仍然保持工作状态正常操作模式的最后一条指令执行进入空闲模式空闲模式下CPU内容片内RAM和所有SFR保持原来的值任何被使能的中断此时程序从中断服务程序处恢复并继续执行或硬件复位与上电复位使用相同的方式启动处理器均可终止空闲模式掉电模式为了进一步降低功耗通过软件可实现掉电模式(见表3)该模式中振荡器停振并且在最后一条指令执行进入掉电模式降到2.0V时片内RAM和SFR保持原值在退出掉电模式之前Vcc必须升至规定的最低操作电压硬件复位或外部中断均可结束掉电模式硬件复位使所有的SFR重新设置但不改变片内RAM的值外部中断允许SFR和片内RAM都保持原值WUPD AUXR1.3从掉电唤醒使能或禁止通过外部中断唤醒掉电WUPD0禁止WUPD=1使能要正确退出掉电模式在Vcc恢复到正常操作电压范围之后复位或外部中断开始执行并且要保持足够长的时间 ( 通常小于10ms )以使振荡器重新启动并稳定下来使用外部中断退出掉电模式时INT0和INT1必须使能且配置为电平触发将管脚电平拉低使振荡器重新启动退出掉电模式后将管脚恢复为高电平一旦中断被响应RETI之后所执行的是进入掉电模式指令的后一条指令表3 空闲模式和掉电模式时外部管脚的状态器件在内部复位之前从停止处恢复程序正常运行时间为这段时间内片内硬件禁止对内部RAM但对当Idle模式被复位所中为了消除可能产生的误写操作应用模式指令后的指令不应执行写I/O口或写外部存储器操作进入件将ALE保持低电平模式时口处于悬浮状态持工作状态器件处于该模式时可用仿真器或测试CPU驱动电路执行正常复位时恢复正常操作定时器0和1的操作定时器0和1定时和计数功能由特殊功能寄存器TMOD的控制位C/T进行选择这两个定时/计数器有4种操作模式通过TMOD的M1和M0选择两个定时/计数器的模式01和2都相同模式3不同如下所述模式0将定时器设置成模式0时类似8048定时器即8 位计数器带32分频的预分频器图2所示为模式0工作方式此模式下定时器寄存器配置为13位寄存器当计数从全为1翻转为全为0时定时器中断标志位TFn置位当TRn=1同时GATE=0或INTn=1时定时器计数置位GATE时允许由外部输入INTn 控制定时器这样可实现脉宽测量TRn为TCON寄存器内的控制位图3该13位寄存器包含THn全部8个位及TLn的低5位TLn的高3位不定可将其忽略置位运行标志TRn不能清零此寄存器模式0的操作对于定时器0及定时器1都是相同的两个不同的GATE位TMOD.7和TMOD.3分别分配给定时器0及定时器1模式1模式1除了使用了THn及TLn全部16位外其它与模式0相同模式2此模式下定时器寄存器作为可自动重装的8位计数器TLn如图4所示TLn的溢出不仅置位TFn而且将THn内容重新装入TLn THn内容由软件预置重装时THn内容不变模式2的操作对于定时器0及定时器1是相同的模式3在模式3中定时器1停止计数效果与将TR1设置为0相同此模式下定时器0的TL0及TH0作为两个独立的8位计数器图5为模式3时的定时器0逻辑TL0C/T GATETR0TH0TF1此时TH0控制定时器中断可用于需要一个额外的位定时器的场合定时器时80C513个定时计数器当定时器时定时器可通过开关进入它仍可用作串行端口的波特或者应用于任何不要求中断的场合复位值2 1 0 置位时只有在计数器清零时计数器用作定时器或计数器清零则用作定时器从内部系统时钟输入置位用作计数器从脚输入定时器模式选择定时器模式无预分频器当溢出时将计数器控制位控制1控制位控制图1 定时/计数器0/1模式控制寄存器TMOD图2 定时/计数器0/1的模式013位定时/计数器InterruptTCON 地址88H 7 6 5 4 3 2 1 0 可位寻址 复位值00HTF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0位符号功能TCON.7 TF1定时器1溢出标志定时/计数器溢出时由硬件置位中断处理时由硬件清除或用软件清除TCON.6 TR1定时器1运行控制位由软件置位/清零将定时/计数器打开/关闭TCON.5 TF0定时器0溢出标志定时/计数器溢出时由硬件置位中断处理时由硬件清除或用软件清除 TCON.4 TR0定时器0运行控制位由软件置位/清零将定时/计数器打开/关闭 TCON.3 IE1 中断1边沿触发标志当检测到外部中断1边沿时由硬件置位中断处理时清零TCON.2 IT1 中断1触发类型控制位由软件置位/清零以选择外部中断以下降沿/低电平方式触发TCON.1 IE0 中断0边沿触发标志当检测到外部中断0边沿时由硬件置位中断处理时清零TCON.0 IT0 中断0触发类型控制位由软件置位/清零以选择外部中断以下降沿/低电平方式触发图3 定时器/计数器控制寄存器TCON图4 定时/计数器0/1的模式28位自动重装Interrupt通过设置特殊功能寄存器位可将其作为定时见图6定时器有三种操作模式捕获递增或递减计数和波特率发生这三种模式由T2CON 中的位进行选择见表3捕获模式 通过EXEN2设置两个选项如果定时器16位由T2CON TF2溢出标志位该位可用于产生IE 中断使能位如果EXEN21与以上描述相同即外部输入时将定时器2TL2和的当前值各自捕获到RCAP2L EXF22溢出中断地址相同定时器中断服务程序通过查询来确定引起中断的事件捕获模式如图在该模式中TL2计数器仍以的负跳变或振荡频率的1/12或6时钟模式递增递减计数器位自动重装模式中2可通过C/T2配置为定时器计数的方向是由DCEN 递减计数使能位确定的DCEN 位于T2MOD 寄存器见图8中当DCEN 0时定时器2默认为向上计数当DCEN 1时定时器2可通过T2EX 确定递增或递减计数图9显示了当DCEN 0时定时器2自动递增计数在该模式中通过设置EXEN2位进行选择如果EXEN2定时器2递增计数到0FFFFH 并在溢出后将TF2置位然后将RCAP2L 和RCAP2H 中的16位值作为重新装载值装入定时器2RCAP2L 和RCAP2H 的值是通过软件预设的如果EXEN2116位重新装载可通过溢出或T2EX 从10的负跳变实现此负跳变同时将EXF2置位如果定时器2中断被使能则当TF2或EXF2置1时产生中断在图10中DCEN 1时定时器2可递增或递减计数此模式允许T2EX 控制计数的方向当T2EX 置1时定时器2递增计数计数到0FFFFH 后溢出并置位TF2还将产生中断如果中断被使能定时InterruptInterrupt器2的溢出将使RCAP2L 和RCAP2H 中的16位值作为重新装载值放入TL2和TH2当T2EX 置零时将使定时器2递减计数当TL2和TH2计数到等于RCAP2L 和RCAP2H 时定时器产生溢出定时器2溢出置位TF2并将0FFFFH 重新装入TL2和TH2当定时器2递增/递减产生溢出时外部标志位EXF2翻转如果需要可将EXF2位作为第17位在此模式中EXF2标志不会产生中断表4 定时器2工作方式图6 定时器/计数器2T2CON 控制寄存器溢出标志定时器溢出时置位必须由软件清除当TCLK 1时TF2将不会置位外部标志当EXEN21且的负跳变产生捕获或重装时置位定时器2中断使能时EXF21从中断向量处执行中断子程序EXF2位必须用软件清零在递增式DCEN 1中EXF2不会引起中断接收时钟标志RCLK 置位时定时器的溢出脉冲作为串行口模式模式的接收时钟RCLK 0时将定时器的溢出脉冲作为接收时钟发送时钟标志TCLK 置位时定时器和的发送时钟TCLK 0时将定时器的溢出脉冲作为发送时钟外部使能标志当其置位且定时器未作为串行口时钟时允的负跳变产生捕获或重装EXEN20时T2EX 的跳变对定时无效启动停止控制位置时启动定时器计数器选择定时器20内部定时器OSC/12或OSC/61外部事件计数器下降沿触发重装标志置位EXEN21T2EX 的负跳变产生捕获清零EXEN21时定时器2溢出或的负跳变都可使定时器自动重装RCLK 1TCLK 1时该位无效且定时器强制为溢出时自动重装图7 定时器2捕获模式保留将来之用2输出使能位定时器这些位在将来8051这种情况下以后用到复位时或非有效状态时而这些位为有效状态时它的值为1从保留位读到的值是不确定的图8 定时器2模式T2MOD 控制寄存器图9 定时器2自动重装模式DCEN=0EXEN 2T imer 2InterruptEXEN 2T IME R2图10 定时器2自动重装模式DCEN=1图11 定时器2波特率发生器模式波特率发生器模式寄存器T2CON 的位TCLK 和或RCLK 见表3允许从定时器1或定时器2获得串行口发送和接收的波特率当TCLK=0时定时器1作为串行口发送波特率发生器当TCLK=1时定时器2作为串行口发送波特率发生器RCLK 对串行口接收波特率有同样的作用通过这两位串行口能得到不同的接收和发送波特率 一个通过定时器1产生另一个通过定时器2产生图11所示为定时器2工作在波特率发生器模式与自动重装模式相似当TH2溢出时波特率发生器模式使定时器2寄存器重新装载来自寄存器RCAP2H 和RCAP2L 的16位的值寄存器RCAP2H 和RCAP2LR 的值由软件预置当工作于模式1和模式3时波特率由下面给出的定时器2溢出率所决定定时器2溢出速率16定时器可配置成定时或计数方式在许多应用上定时器被设置在定时方式C/T2*=0当定时器2作为定时器时它的操作不同于波特率发生器通常定时器2作为定时器它会在每个机器周期递增1/6或1/12振荡频率当定时器2作为波特率发生器时它会在每个状态周期递增例如1/2振荡频率这样波特率公式如下模式1和模式3的波特率=(UP C OUNTING R E LOADV ALUE)T2EX PINEXEN 2RXClock TXClockT imer 1OverflowNote availability of additional external interrupt.[65536n = 166或12时钟模式RCAP2H,RCAP2L)=RCAP2H 的内容为11所示定时器作为波特率发生器仅当寄存器RCLK 和或TCLK=1定作为波特率发生器才有效溢出并不置位TF2也不产生中断这样当定时器中断不必被禁止外部使能标志被置位在中1的转换会置位EXF2T2外部标志位但并不导致TH2重装载RCAP2H RCAP2L因当定时器用作波特率发生器时如果需要可用作附加的外部中断当计时器工作在波特率发生器模式下,则不要对TH2和进行读写每隔一个状态时间或定时器在此情况下对进行读写是不准确的可对RCAP2但不要进行写否则将导致自动重装错误当对定时器进行访问时应关闭定清零表列出了常用的波特率和如何用定时器得到这些波特率表由定时器外部时钟信号由波特率为2溢出率则波特率为[n[65536(RCAP2H,RCAP2L)]]此处 n = 166时钟模式或3212时钟模式f OSC = 振荡器频率 自动重装值可由下式得到RCAP2H,RCAP2L=65536-[fosc/(n波特率)]定时器/计数器2的设置除了波特率发生器模式T2CON 不包括TR2位的设置TR2位需单独设置来启动定时器表6表7给出了T2作为定时器和计数器的设置表6 T2作为定时器T2CON模式内部控制注1外部控制注216位重装00H 08H16位捕获01H 09H波特率发生器接收和发送相同波特率34H 36H只接收24H 26H只发送14H 16H 表7 T2作为计数器TMOD模式内部控制注1外部控制注216位02H 0AH自动重装03H 0BH注1.仅当定时器溢出时进行捕获和重装2.当定时/计数器溢出并且T2EX(P1.1)发生电平负跳变时产生捕获和重装定时器2用于波特率发生器模式除外全双工增强型UART标准UART操作串口为全双工结构表示可以同时发送和接收它还具有接收缓冲在第一个字节从寄存器读出之前可以开始接收第二个字节但是如果第二个字节接收完毕时第一个字节仍未读出其中一个字节将会丢失串口的发送和接收寄存器都是通过SFR SBUF进行访问的写入SBUF的数据装入发送寄存器对SBUF 的读操作是对物理上分开的接收寄存器进行访问串口有4种操作模式模式0串行数据通过RxD进出TxD输出时钟每次发送或接收以LSB最低位作首位每次8位波特率固定为MCU时钟频率的1/12模式1TxD脚发送RxD脚接收每次数据为10位一个起始位08个数据位LSB在前及一个停止位1当接收数据时停止位存于SCON的RB8内波特率可变由定时器1溢出速率决定模式2TxD脚发送RxD脚接收每次数据为11位一个起始位08个数据位LSB在前一个可编程第9位数据及一个停止位1发送时第9个数据位SCON内TB8位可置为0或1例如将奇偶位PSW内P位移至TB8接收时第9位数据存入SCON的RB8位停止位忽略波特率可编程为MCU时钟频率的1/32或1/64由PCON内SMOD1位决定模式3TxD脚发送RxD脚接收每次数据为11位一个起始位08个数据位LSB为首位一可编程的第9位数据及一个停止位1事实上模式3除了波特率外均与模式2相同其波特率可变并由定时器1溢出率决定在上述4种模式中发送过程是以任意一条以写SBUF作为目标寄存器的指令开始的模式0时接收通过设置R1=0及REN=1初始化其它模式下如若REN=1则通过起始位初始化多机通信UART模式2及模式3有一个专门的应用领域即多机通信在这些模式时接收为9位数据第9位存入RB8接下来为停止位UART可编程为接收到停止位时仅当RB8=1时串口中断才有效可通过置位SCON内SM2位来选择这一特性下述为多机系统利用这一特性的一种方法当主机需要发送一数据块给数台从机之一时首先发送出一个地址字节对目标从机进行识别地址与数据字节通过第9位数据区别其中地址字节的第9位为1而数据字节为0SM2=1时数据字节不会使各从机产生中断而地址字节则令所有从机中断这样各从机可以检查接收到的数据判断是否被寻址被寻址的从机即可清除SM2位以准备接收随后数据内容未被寻址的从机的SM2位仍为1则不理睬随后数据继续各自工作模式0时SM2无效模式1时SM2用于检验停止位是否有效在模式1时如果SM2=1那么只有接收到有效的结束位才可产生接收中断串行端口控制寄存器SCON串行端口控制及状态寄存器即SCON如图12所示其中包括模式选择位以及发送和接收的第9位数据TB8及RB8以及串行端口中断位TI及RISCON 地址98H7 6 5 4 3 2 1 0可位寻址复位值 00H SM0/FE SM1 SM2 REN TB8 RB8 TI RI 位符号功能SCON.7 FE 帧错误位当检测到一个无效停止位时通过UART接收器设置该位但它必须由软件清零要使该位有效PCON寄存器中的SMOD0位必须置1SCON.7 SM0 和SM1定义串口操作模式要使该位有效PCON寄存器中的SMOD0必须置0SCON.6 SM1 和SM0定义串行口操作模式见下表SM0 SM1 UART模式波特率0 0 0同步移位寄存器fosc/12或fosc/6取决于时钟模式0 1 18位UART 可变1 0 29位UART fosc /64或fosc /321 1 39位UART 可变SCON.5 SM2 在模式2和3中多处理机通信使能位在模式2或3中若SM2=1且接收到的第9位数据RB8是0则RI接收中断标志不会被激活在模式1中若SM2=1且没有接收到有效的停止位则RI不会被激活在模式0中SM2必须是0SCON.4 REN 允许接收位由软件置位或清除REN=1时允许接收REN=0时禁止接收SCON.3 TB8 模式2和3中发送的第9位数据可以按需要由软件置位或清除SCON.2 RB8 模式2和3中已接收的第9位数据在模式1中或sm2=0RB8是已接收的停止位在模式0中RB8未用SCON.1 TI 发送中断标志模式0中在发送完第8位数据时由硬件置位其它模式中在发送停止位之初由硬件置位在任何模式中都必须由软件来清除TISCON. 0 RI 接收中断标志模式0中接收第8位结束时由硬件置位其它模式中在接收停止位的中间时刻由硬件置位在任何模式(SM2所述情况除外)必须由软件清除RI图12 串行控制寄存器SCON波特率操作模式0的波特率是固定的为fosc/12模式2的波特率是MCU 时钟/64或MCU 时钟/32取决于PCON 寄存器中的SMOD1位的值若SMOD1=0复位值波特率为MCU 时钟/64若SMOD1=1波特率为MCU时钟/32在80C51中模式1和模式3的波特率由定时器1的溢出速率决定使用定时器1作波特率发生器 当定时器1用作波特率发生器模式1和3中波特率由定时器1的溢出速率和SMOD1的值决定在此应用中定时器1不能用作中断定时器1可以工作在定时或计数方式和3种工作模式中任何一个在最典型应用中它用作定时器方式工作自动重装载模式TMOD 的高半字节为0010B 它的波特率值由下式给出可以定时器1的中断实现非常低的波特率将定时器配置为16位定时器TMOD 的高半字节为0001B并使用中断进行16位软件重装图13列出了几个常用的波特率以及如何从定时器1获得OS CSMOD图13 由定时器1产生的通用波特率UART 模式0串行数据由RxD 端出入TxD 输出同步移位时钟发送或接收的是8位数据低位在先其波特率固定为MCU 时钟的1/12图14是串行口模式0的功能方框简图及相关的时序图执行任何一条把SBUF 作为目的寄存器的指令时就开始发送S6P2时刻的写SBUF 信号将1装入发送移位寄存器的第9位并通知发送控制部分开始发送写SBUF 信号有效后一个完整的机器周期后SEND 端有效SEND 使能RxD P3.0端送出数据TxD P3.1输出移位时钟每个机器周期的S3S4及S5状态内移位时钟为低电平而S6S1及S2状态内为高在SEND 有效时每一机器周期的S6P2时刻发送移位寄存器的内容右移一位数据位向右移时左边添加零当数据字节最高位MSB 移到移位寄存器的输出端时其左边是装入1的第9位再左的内容均为0, 此时通知Tx 控制模块进行最后一位移位处理后禁止SEND 并置位T1, 所有这些步骤均在写入SBUF 后第10个机器周期的S1P1时进行的接收初始化条件是REN=1及R1=0下一机器周期的S6P2时RX 控制单元向接收移位寄存器写入1111 1110并在下一个时钟使RECEIVE 端有效RECEIVE 使能移位时钟转换P3.1功能移位时钟在每个机器周期的S3P1及S6P1跳变在RECEIVE 有效时每一机器周期的S6P2时刻接收移位寄存器内容向左移一位从右移位进来的值是该机器周期S5P2。
89C51存储器配置

第二章 单片机的结构和原理
2.3 89C51存储器配置
2.3.1 89C51存储器分类 2.3.2 程序存储器地址空间 2.3.3 数据存储器地址空间
2
2.3.1 89C51存储器分类
程序存储器51 存储器
片外程序存储器 片内数据存储器
数据存储器 RAM
片外数据存储器
3
2.3.2 程序存储器地址空间
1. 通过16位程序计数器PC寻址,最大寻址空间64K 2. 没有指令可以从程序存储空间转移到数据存储空间 3. 片内ROM 4K 0000H~0FFFH
片外ROM 64K 0000H~FFFFH 4. ������������高,访问片内ROM,������������低,访问片外ROM 5. 8031没有片内ROM,������������接地 6. 89C51 片内、片外ROM存取速度相等 7. ROM特殊存储空间(保留的存储单元) 8. 访问ROM 的指令 ,MOVC
P1
P0
EA VCC
ALE
P2 RD P3 WR
锁存器 I/O 页面地址
RAM 数据
6116 地址
WE OE
89C51 外扩片外RAM接法 图2.12 89C51外扩片外RAM接法
Flash ROM队列 FFFF
片外
15
RAM队列
FFFF
片外 RAM
& I/O口
EA=0 片外
0FFF 0000
EA=1 片内
定
志位 进位)
寄存器组选择
溢出 (补码 运算溢 出)
保留
奇\ 位意义 偶校 验位
12
RS1
RS2
寄存器组
0
0
(完整版)at89c51引脚图及功能

at89c51引脚图及功能AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含4k bytes的可反复擦写的只读程序存储器(PEROM)和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大AT89C51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。
主要性能参数:·与MCS-51产品指令系统完全兼容·4k字节可重擦写Flash闪速存储器·1000次擦写周期·全静态操作:0Hz-24MHz ·三级加密程序存储器·128×8字节内部RAM ·32个可编程I/O口线·2个16位定时/计数器·6个中断源·可编程串行UART通道·低功耗空闲和掉电模式功能特性概述:AT89C51提供以下标准功能:4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
·P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。
作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
在FIash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
89C51单片机简介

89C51单片机简介1 89C51单片机简介 (1)2 时序 (2)3引脚及其功能 (2)4输入/输出(I/O)引脚P0口、P1口、P2口及P3口 (4)1 89C51单片机简介目前,89C51单片机在工业检测领域中得到了广泛的应用,因此我们可以在许多单片机应用领域中,配接各种类型的语音接口,构成具有合成语音输出能力的综合应用系统,以增强人机对话的功能。
89C51是Intel公司生产的一种单片机,在一小块芯片上集成了一个微型计算机的各个组成部分。
每一个单片机包括:一个8位的微型处理器CPU;一个256K的片内数据存储器RAM;片内程序存储器ROM;四个8位并行的I/O接口P0-P3,每个接口既可以输入,也可以输出;两个定时器/记数器;五个中断源的中断控制系统;一个全双工UART的串行I/O 口;片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。
最高允许振荡频率是12MHZ。
以上各个部分通过内部总线相连接。
下面简单介绍下其各个部分的功能。
中央处理器CPU是单片微型计算机的指挥、执行中心,由它读人用户程序,并逐条执行指令,它是由8位算术/逻辑运算部件(简称ALu)、定时/控制部件,若干寄存器A、B、B5w、5P以及16位程序计数器(Pc)和数据指针寄存器(DM)等主要部件组成。
算术逻辑单元的硬件结构与典型微型机相似。
它具有对8位信息进行+、-、x、/ 四则运算和逻辑与、或、异或、取反、清“0”等运算,并具有判跳、转移、数据传送等功能,此外还提供存放中间结果及常用数据寄存器。
控制器部件是由指令寄存器、程序计数器Pc、定时与控制电路等组成的。
指令寄存器中存放指令代码。
枷执行指令时,从程序存储器中取来经译码器译码后,根据不同指令由定时与控制电路发出相应的控制信号,送到存储器、运算器或I/O接口电路,完成指令功能。
程序计数器Pc 程序计数器Pc用来存放下一条将要执行的指令,共16位.可对以K字节的程序存储器直接寻址c指令执行结束后,Pc计数器自动增加,指向下一条要执行的指令地址。
单片机引脚说明(89C51为例)

T89C2051是精简版的51单片机,精简掉了P0口和P2口,只有20引脚,但其内部集成了一个很实用的模拟比较器,特别适合开发精简的51应用系统,毕竟很多时候我们开发简单的产品时用不了全部32个I/O口,用AT89C2051更合适,芯片体积更小,而且AT89C2051的工作电压最低为2.7V,因此可以用来开发两节5号电池供电的便携式产品。
本文以ATMEL公司生产的51系列家族的AT89S51和AT89C2051两种单片机来讲解,两种单片机是目前最常用的单片机,其中 AT89S51为标准51单片机,当然其功能比早期的51单片机更强大,支持ISP在系统编程技术,内置硬件看门狗。
一、AT89S51单片机引脚介绍AT89S51有PDIP、PLCC、TQFP三种封装方式,其中最常见的就是采用40Pin 封装的双列直接PDIP封装,外形结构下图。
芯片共有40个引脚,引脚的排列顺序为从靠芯片的缺口(见右图)左边那列引脚逆时针数起,依次为1、2、3、4。
40,其中芯片的1脚顶上有个凹点(见右图)。
在单片机的40个引脚中,电源引脚2根,外接晶体振荡器引脚2根,控制引脚4根以及4组8位可编程I/O引脚32根。
1、主电源引脚(2根)VCC(Pin40):电源输入,接+5V电源GND(Pin20):接地线2、外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端XTAL2(Pin20):片内振荡电路的输出端3、控制引脚(4根)RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。
ALE/PROG(Pin30):地址锁存允许信号PSEN(Pin29):外部存储器读选通信号EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。
芯片实物图片芯片引脚功能4、可编程输入/输出引脚(32根)AT89S51单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。
89c51引脚及功能

目前大多数为此类封装方式图2.6 MCS -51单片机引脚管脚图图MCS -51单片机实物图2.2 89C512.2 89C51单片机引脚及其功能单片机引脚及其功能 时钟电路引脚时钟电路引脚 XTAL1和XTAL2内部时钟方式可完成复 操作可完成复 操作 单片机 常工作时单片机 常工作时,, 脚应 ≤0.5V 电平 电平 Vss89C51单片机引脚及其功能 2.2 89C51单片机引脚及其功能控制信号引脚 RST4 EA / Vpp (31脚) 脚 External AccessALEPSENEAEA 片外程序存储器访问允许输入端 Enable◆EA=1,即输入高电平时,CPU访问片内程序存储器 ,即输入高电平时, 访问片内程序存储器(4K) 访问片内程序存储器 PC值超过 值超过0FFFH时,将自动执行片外程序存储器的程序 值超过 时 EA=0,即输入 电平时,CPU只访问片外 , 电平时, 只访问片外 只访问片外EPROM/ROM 并执行外部程序存储器中的程序◆89C51单片机引脚及其功能 2.2 89C51单片机引脚及其功能控制信号引脚 RST PSEN EA4 EA / Vpp (31脚) 脚 编程电源 Voltage Pulse of Programming 对单片机片内EPROM固化 固化 对单片机片内 编程时, 编程时,编程电压输入端 12-21VALEVpp89C51单片机引脚及其功能 2.2 89C51单片机引脚及其功能引脚归纳小结单片机对外呈现3种总线形式 单片机对外呈现 种总线形式由P2 P0口组成 口组成16 口组成 地址总线,寻址64K存储器空间 地址总线,寻址 存储器空间 数据总线 RET EA P3口中的 口中的INT0 口中的 INT1由P0口分时复用 口分时复用 由ALE T0 T1 PSEN WRRD共10个引脚组成的控制总线 共 个引脚组成的 个引脚组成的控制总线引脚数少, 单片机功能多 引脚数少,因而许多引脚都 有第二 功能89C51单片机引脚及其功能 2.2 89C51单片机引脚及其功能引脚的复用一个信号引脚 错误对于多种型号的芯片,其引脚的第一功能信号是相同的, 对于多种型号的芯片,其引脚的第一功能信号是相同的, 所 同的只在引脚第二功能信号 对于9 对于 30和31号引脚,由于其第一功能和第二功能信号是 和 号引脚 号引脚,有两个功能, 有两个功能,在使用时不应引起混乱和的信号, 单片机在 同工作方式 的信号,因而 会发生使用 的 矛盾89C51单片机引脚及其功能 2.2 89C51单片机引脚及其功能引脚的复用P3口的情况有所 同,其第二功能信号都是单片机重要的 口的情况有所 同, 控制信号,因 在实际使用时,总是先按需要优先选用其 在实际使用时, 控制信号, 第二功能, 第二功能,剩 用的才作 口线使用单片机往往不是独立工作的, 单片机往往不是独立工作的,用户可通过引脚连 接外部设备从而构成嵌入式系统,因此, 接外部设备从而构成嵌入式系统,因此,熟悉各引脚 的功能是十分重要的VccP1 P0 89C51 RST EA ALE PSEN P3P2 XTAL2 XTAL1 Vss。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目 录第一章 微机基础知识 第 章 89C51单片机的结构和原理 单片机的结构和原理 第 章 89C51指 系统 指 第四章 汇编语言程序 计知识 第五章 中断系统 第六章 定时器及应用 第七章 89C51串行口及通信技术 串行口及通信技术 第八章 单片机小系统片外扩展 附录A 89C51指 系统表 附录 指 参考资料第2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8章 MCS-51单片机的结构和原理 单片机的结构和原理MCS-51单片机的结构 单片机的结构 MCS-51单片机引脚及 单片机引脚及 89C51 储器配置 能CPU时时序 时时序 复 及复 电路 89C51单片机的 单片机的 输出/输入端口结构 输出 输入端口结构 思考题 题 耗工 方式MCS-5令单片机的结构 该.令 MCS-5令单片机的结构该.令.令 MCS-5令单片机概述 MCS-5令单片机 单片机概 MCS-5令单片机内部结构 该.令.该 MCS-5令单片机内部结构MCS-5令单片机概述 该.令.令 MCS-5令单片机概述一组成MCS-51系列单片机简介 系列单片机简 系列单片机89C51单片机结构框图 如图 所示 单片机结构框图 如图2-1所示外部时钟源 外部 件计数振荡器和时序 OSC程序 储器 4KBROM数据 储器 256B RAM/SFR2×16 × 定时器/计数器 定时器 计数器89C51 CPU 64KB 总线 扩展控制器可编程I/O 可编程可编程全双工 串行口内中断 外中断 控制 并行口 串行通信2.1.180C51系列简介 80C51系列简介MCS-51系列 一 MCS-51系列 是Intel公司生产的一个单片 1 MCS-51是Intel公司生产的一个单片 机系列名称 属于这一系列的单片机有多 种,如 ﹡8051/8751/8031 ﹡8052/8752/8032 ﹡80C51/87C51/80C31 ﹡80C52/87C52/80C32等 等2系列生产工艺有两种一是HMOS工艺 高密度短沟道 工艺 高密度短沟道MOS工 一是 工 是CHMOS工艺 互补金属氧化物 艺 是 工艺 的HMOS工艺 工艺 CHMOS是 CMOS和 HMOS的结合 既保 是 和 的结合 持了HMOS高速度和高密度的特点 持了 高速度和高密度的特点 有 CMOS的 的 耗的特点 在产品型号中凡带有母 “ C” 的 即CHMOS 芯 片TTL电平兼容 电平兼容 又CHMOS芯片的电平既 芯片的电平既 CMOS电平兼容 电平兼容3 在 能 和增 型两大类系列单片机有基本型基本型 8051/8751/8031 80C51/87C51/80C31 增 型 8052/8752/8032 80C52/87C52/80C324 在片内程序 储器的配置 系列单片机有 种形式 即掩膜 ROM EPROM 和 ROMLess( 无 片 内 储器) 程序 储器 如 节的掩膜ROM ﹡80C51有4K 节的掩膜 有 节的EPROM 有 ﹡87C51有4K 节的 ﹡80C31在芯片内无程序 储器 在芯片内无程序80C5令型产品资源配置单片机的要能·8 CPU ·4kbytes 程序 储器 储器(ROM) (52 8K) ·256bytes的数据 储器 的数据 储器(RAM) 52有384bytes的RAM 有 的 ·32条I/O口线 条 口线 ·111条指 条指 大部分 单 节指 ·21个专用寄 器 个专用寄定时/计数器 ● 2个可编程定时 计数器 个可编程定时● 5个中断源 个中断源2个优先级 个优先级52有6个 有 个 ●一个全双工串行通信口 ●外部数据 储器寻址空间 ●外部程序 储器寻址空间 ●逻辑操 寻址 能 双列直插40PinDIP封装 ●双列直插 封装 单一+5V电源供电 ●单一 电源供电64kB 64kB●5个中断源的中断控制系统 个中断源的中断控制系统 个全双工UART 通用异步接收发 个全双工 ●1个全双工 的串行I/O口 送器 的串行 口 用于实现单片 机之间或单片机 微机之间的串行 通信 ●片内振荡器和时钟产生电路 石英 晶体和微调电容需要外接◆ CPU 由运算和控制逻辑组成 时 包括 中断系统和部分外部特殊 能寄 器 ◆ RAM 用 放可 读写的数据 如运算的 中间结果 最终结果 及欲显示的数据 ◆ ROM 用 放程序 一些原始数据和表格 并行I/O口 ◆ I/O口 四个 口 四个8 并行 口 既可用 输入 可用 输出 两个定时/记数器 ◆ T/C 两个定时 记数器 既可 工 在定时模 式 可 工 在记数模式2.1.2 MCS-51单片机内部结构 单片机内部结构一 结构图 结构组成一 结构图●由 中央处理单元 CPU 储器 ROM及RAM 和I/O接口组成 接口组成 及 接口 ● MCS-51单片机内部结构如 图2-2 MCS-51单片机内部结构如 所示89C5令单片机内部 89C5令单片机内部 结构图RAM地 地 址寄 器 128B RAMP0.0-P0.7 P0驱 器 驱P2.0-P2.7P2驱 器 驱P0锁 器 锁P2锁 器 锁4KB Flash ROM程序地址 寄 器 B寄 器 寄 器1 暂 器 器2 暂 器 ACC SP 缓冲器 ALU 中断 串行口和定时器 PSEN ALE EA RST 定 时 控 制 指 译 码 器 OSC XTAL1 XTAL2 指 PSW 寄 器 P1锁 器 锁 P1驱 器 驱 P1.0-P1.7 P3锁 器 锁 P3驱 器 驱 P3.0-P3.7 PC DPTR PC增1 增结构组成一 中央处理单元 储器 I/O接口 接口 CPU一● 1 ● 2中央处理单元 CPU运算器 控制器11 2 3 4 5 6运算器8 的 的ALU 8 累 器 器ACC A 8 程序状态寄 器 器PSW 8 寄 器 器B 布尔处理器 2个8 暂 器 个1 运算器令 8 的 的AL栈AL栈AL栈●可对可对44 8 令6令6 数据进行操 数据进行操 数据进行操1 运算器2 8 累 器ACC A它 常 一个运算数 暂 器该它 常 一个运算数 暂 器该进入进入AL栈AL栈的输入端的输入端 另一个来自暂 器 另一个来自暂 器令令的运算数进行运算数进行运算 运算结果又送回运算结果又送回ACC ACC ACC1 运算器3 8 程序状态寄 器PSW指示指 执行 的状态信息供程序查询和判别用和判别用1 运算器4 8 寄 器B在乘除运算时在乘除运算时 用来 放一个操 数 用来 放运算 的一部分结果数 用来 放运算 的一部分结果 如 能做乘除运算时如 能做乘除运算时 通用寄 器1 运算器布尔处理器5 布尔处理器中PS上中专门用于处理 操 的 PS上专门用于处理 操 的的C 累 器累 器1 运算器暂 器6 2个8 暂 器的两个入口处 AL栈的两个入口处AL栈的两个入口处1 程序计数器PC 16 ●由两个由两个88 计数器 计数器PC寻PC寻PC寻 PCL PCL组成组成组成 ●PC PC是程序的 节地址计数器是程序的 节地址计数器是程序的 节地址计数器,,PC PC内容 将要执行的指 地址内容 将要执行的指 地址内容 将要执行的指 地址 ●改变改变PC PC PC内容内容内容,,改变执行的流向改变执行的流向 ●PC PC可可对64KB 64KB的的ROM ROM直接 址直接 址,也可对可对89C5令89C5令89C5令片内片内片内RAM RAM RAM 址 址2 指 寄 器IR 及指 译码器ID ●由PC PC中的内容指定中的内容指定中的内容指定ROM ROM ROM地址地址,取出来的指 指 寄 器 指 寄 器导R 导R 导R送至送至送至导D 导D ,由导D 对指 译码产生一定序列的控制信号, 执行指 所规定的操作 执行指 所规定的操作3 振荡器和定时电路●89C51单片机片内有振荡电路单片机片内有振荡电路,,只需外接石英晶体和频率微调电容 2个30pF 右 右 , , ,其频率范围 其频率范围1.2MHz~24MHz 该信号作 89C51 作的基本节拍即时间的最小单 时间的最小单储器储器程序 储器 ROM 1 程序 储器数据 储器 RAM 2 数据 储器1 程序 储器程序 储器 ROM开始◆地址从0000H开始◆用于 放程序和表格常数用于 放程序和表格常数2 数据 储器数据 储器 RAM ◆片外64kB 0000H ~FFFFH 片内片内256 节 0000H ~00FFH◆ 中00H ~7FH 用于 放运算的中间结果用于 放运算的中间结果 数据暂 及数据缓冲等数据暂 及数据缓冲等 ◆ 128B 的RAM 中有32个 节单元可指定 工 寄 器个 节单元可指定 工 寄 器 ◆片内 有21个特殊 能寄 器个特殊 能寄 器 SFR 它它们 128 节RAM 统一编址统一编址 地址 80H ~FFH 面 细介绍 面 细介绍I/O 接口◆89C5令89C5令有四个有四个有四个88 并行 并行导/O 导/O 导/O接口接口接口P0P0~P左P左 ◆它们都是它们都是((准) 向端口 向端口,, 个端口各有8各有8条导/O 导/O线线◆P0P0--P左P左口四个锁 器同口四个锁 器同口四个锁 器同RAM RAM RAM统一编址统一编址统一编址,,可作 可作 SFR SFR SFR来 址来 址来 址2.2MCS-51单片机引脚及 能2.2.1 MCS-51单片机引脚2.2.2 MCS-51单片机引脚 能2.2.189C51单片机引脚所示89C5令单片机引脚如•89C5令单片机引脚如图该-详所示单片机引脚图89C5189C51单片机引脚图2.2.2 89C51单片机引脚 能电源引脚 Vcc和Vss•一 电源引脚时钟电路引脚 XTAL1和XTAL2• 时钟电路引脚• 控制信号引脚RST ALE PSEN和EA •四 I/O端口P0 P1 P2和P3一 电源引脚Vcc和Vss电源引脚•令.三cc(40脚) 电源端, +5三 •工.三ss(工0脚) 接地端 图该-详时钟电路引脚时钟电路引脚 XTAL1和XTAL2•XTAL2 18脚 接外部晶体和微调电容的一端容的一端 在89C51 片内它是振荡电路 向放大器的输出端 向放大器的输出端,,振荡电路的频率就是晶体固有频率就是晶体固有频率 若需采用外部时钟电路时电路时,,该引脚悬空该引脚悬空 89C51/8031 常 作时 作时,,该引脚应有脉冲信号输出该引脚应有脉冲信号输出•XTAL1 令9令9脚脚 接外部晶体和微调电容的另一端 时钟电路引脚时钟电路引脚 XTAL1和XTAL2容的另一端 在片内它是振荡电路 向放大器的输入端放大器的输入端,,在采用外部时钟时在采用外部时钟时,,该引脚输入外部时钟脉冲该引脚输入外部时钟脉冲控制信号引脚控制信号引脚RST ALE PSEN 和EA•RS标/三PD 9脚RST RST 复 信号输入端复 信号输入端,,高电平有效高电平有效 当 输入端保持两个机器周期的高电平时,就可 完成复 操作就可 完成复 操作•RS标/三PD 9脚三 控制信号引脚控制信号引脚RST ALE PSEN 和EAPD RST RST引脚的第二功能引脚的第二功能引脚的第二功能,,备用电源输入端入端 当 电源当 电源三cc 三cc 三cc 发生故障发生故障发生故障,,降 到 电平规定值时到 电平规定值时,,将+5三+5三电源自动接电源自动接入该引脚入该引脚,, RAM RAM提供备用电源提供备用电源提供备用电源,, 保证RAM RAM中的信息不丢失中的信息不丢失中的信息不丢失,,使得复 后能继续 常运行继续 常运行•ALE/PROG ALE/PROG 详0详0脚脚ALE 控制信号引脚控制信号引脚RST ALE PSEN 和EAALE 地址锁 允许信号端地址锁 允许信号端 常 作时,该引脚 振荡频率的该引脚 振荡频率的令/6令/6令/6固定输出固定输出 脉冲 脉冲 CPU CPU访问片外 储器时访问片外 储器时访问片外 储器时,,该引脚输出信号作 锁 脚输出信号作 锁 88 地址的控制信号信号 它的负载能力 它的负载能力 88个LS LS型型TTL TTL负负载•ALE/PROG ALE/PROG 详0详0脚脚PROG 控制信号引脚控制信号引脚RST ALE PSEN 和EAPROG 是对片内带有是对片内带有4KB EPROM 4KB EPROM 4KB EPROM的的875令编程写入时的编程脉冲输入端编程写入时的编程脉冲输入端•PSEN 29脚控制信号引脚控制信号引脚RST ALE PSEN 和EA▲程序 储器允许信号输出端程序 储器允许信号输出端▲在访问片外ROM 时,定时输出负脉冲作 读片外作 读片外ROM ROM ROM的选通信号的选通信号的选通信号,,接片外ROM 的OE 端▲它的负载能力 它的负载能力 88个LS 型标标L 负载负载•EA/V pp 31脚EA 外部程序 储器地址允许输入端外部程序 储器地址允许输入端 控制信号引脚控制信号引脚RST ALE PSEN 和EA当该引脚接高电平时当该引脚接高电平时,,CPU 访问片内EPROM/ROM 并执行片内程序 储器中的指 ,但当PC 值超过0FFFH 片内ROM 4KB 时,将自动转向执行片外ROM 中的程序中的程序 当该引脚接 电平时当该引脚接 电平时,,CPU 只访问片外EPROM/ROM 并执行外部程序 储器中的程序•EA/V pp 31脚 三 控制信号引脚控制信号引脚RST ALE PSEN 和EA pp 对875令875令片内片内EPROM 固化编程时固化编程时,,编程电压输入端编程电压输入端 令工令工--工令三工令三四 I/O I/O端口端口端口P0P0P0 P令P令 P该P该和和P详•令 准双向•该 P0P0口口•详 P 令口•4 P 该口•5 P 详口1 准双向当导/O 导/O口作 输入时口作 输入时口作 输入时,,应先向 口锁 器写入全令锁 器写入全令, 时该口引脚浮空浮空,,可作高阻抗输入可作高阻抗输入。