最新单片机硬件基础知识PPT课件.ppt
2MCS-51系列单片机配置一览表系列片内存储器(字节)定时器计数器并行I/O串行I/O中断源片内ROM片内RAM无有ROM有EPROMIntelMCS-51子系列803180C31805180C51(4K字节)875187C51(4K字节)128字节2x164x8位15IntelMCS-52子系列803280C32805280C52(8K字节)875287C52(8K字节)256字节3x164x8位16注意:今后将会经常提到ATMEL的AT89C2051/51/52等MCU!ATEML89C系列(常用型)1051(1K)/ 2051(2K)/ 4051(4K)(20条引脚DIP封装)1282151589C51(4K)/ 89C52(8K)(40条引脚DIP封装)128/2562/33215/69单片机的引脚(晶振端)lVccVcc, GND: , GND: 正电源端与接地端(正电源端与接地端(+5V/3.3V/2.7V)+5V/3.3V/2.7V)不同的单片机可以允许不同的工作电压,不同不同的单片机可以允许不同的工作电压,不同的单片机表现出的功耗也不同。的单片机表现出的功耗也不同。XTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入片内振荡电路输入/ /输出端输出端10单片机的引脚(晶振端)lVccVcc, GND:, GND:正电源端与接地端正电源端与接地端 (+5V/3.3V/2.7V)(+5V/3.3V/2.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入片内振荡电路输入/ /输出端输出端151545pf45pfx2x21 112MHz12MHz(MCS-51MCS-51) 0 024MHz24MHz(Atmel-89CAtmel-89C)XTAL1XTAL1XTAL2XTAL2通常外接通常外接一个晶体一个晶体两个电容两个电容(1 1)内部时钟方式)内部时钟方式11常见无源晶振外形和种类常见无源晶振外形和种类12单片机的引脚(晶振端)lVccVcc, GND:, GND:正电源端与接地端正电源端与接地端 (+5V/3.3V/2.7V)(+5V/3.3V/2.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入片内振荡电路输入/ /输出端输出端1 112MHz12MHz(MCS-51MCS-51) 0 024MHz24MHz(Atmel-89CAtmel-89C)可以根据情况由可以根据情况由 XTAL1XTAL1或或XTAL2XTAL2端接入外部时端接入外部时钟,当一个引脚接时钟钟,当一个引脚接时钟时,另一个引脚此时应时,另一个引脚此时应将接地或悬空:将接地或悬空:XTAL2/XTAL1XTAL2/XTAL1XTAL1/XTAL2XTAL1/XTAL2外部时钟外部时钟(2 2)外部时钟方式)外部时钟方式13单片机的引脚(晶振端)lVccVcc, GND:, GND:正电源端与接地端正电源端与接地端 (+5V/3.3V/2.7V)(+5V/3.3V/2.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入片内振荡电路输入/ /输出端输出端HMOSHMOS(高密度沟道高密度沟道MOSMOS)芯片芯片XTAL2XTAL2端接外部时钟,端接外部时钟,XTAL1XTAL1接接地,如:地,如:80518051。XTAL1XTAL1XTAL2XTAL2外部时钟外部时钟(2 2)外部时钟方式)外部时钟方式CHMOSCHMOS(互补金属氧化物互补金属氧化物HMOS HMOS )芯片芯片XTAL1XTAL1端接外部时钟,端接外部时钟,XTAL2XTAL2悬空悬空,如:,如:89C5189C51。XTAL2XTAL2XTAL1XTAL1外部时钟外部时钟14常见有源晶振外形常见有源晶振外形15单片机的引脚(晶振端)lVccVcc, GND:, GND:正电源端与接地端(正电源端与接地端(+5V/3.3V/2.7V)+5V/3.3V/2.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入、输出端片内振荡电路输入、输出端CPUCPU总是按照一定的时钟节拍与时序工作:总是按照一定的时钟节拍与时序工作:振荡周期振荡周期/ /时钟周期:时钟周期: TcTc= =晶振频率晶振频率foscfosc(或外加频率)的倒数(或外加频率)的倒数状态周期:状态周期:TsTs= =2 2个时钟周期个时钟周期( (TcTc) )(很少用到此概念)(很少用到此概念)机器周期:机器周期:TmTm= =6 6个状态周期个状态周期( (TsTs)=)=1212个振荡周期个振荡周期( (TcTc) )指令周期指令周期: : Ti:Ti:执行一条指令所需的机器周期执行一条指令所需的机器周期( (TmTm) )数数牢牢记住牢牢记住:振荡周期振荡周期 = = 晶振频率晶振频率foscfosc的倒数;的倒数; 1 1个机器周期个机器周期 = 12= 12个振荡周期;个振荡周期; 1 1个指令周期个指令周期 = 1= 1、2 2、4 4个机器周期个机器周期16单片机的引脚(复位端)lVccVcc, GND: , GND: 电源端电源端 (+5V/3.3V/2.7V)+5V/3.3V/2.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入、输出端片内振荡电路输入、输出端lRESET: RESET: 复位端(正脉冲有效,宽度复位端(正脉冲有效,宽度 8 ms8 ms)17复位使单片机进入某种确定的复位使单片机进入某种确定的初始状态初始状态: PC PC值归零(值归零(0000H0000H);); 各个各个SFRSFR被赋予初始值(见被赋予初始值(见P.42P.42):): P0P0P3 = 0FFHP3 = 0FFH,Acc = 0Acc = 0,B = 0B = 0,TH0=0TH0=0,TL0=0TL0=0,TH1=0TH1=0,TL0=0TL0=0,SP=7SP=7,PSW=0 PSW=0 退出处于节电工作方式的停顿状态、退出一切退出处于节电工作方式的停顿状态、退出一切程序进程、退出程序的死循环,程序进程、退出程序的死循环,从头开始从头开始。单片机的引脚(复位端)lVccVcc, GND: , GND: 电源端电源端 (+5V/3.3V/2.7V)+5V/3.3V/2.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入、输出端片内振荡电路输入、输出端lRESET: RESET: 复位端(正脉冲有效,宽度复位端(正脉冲有效,宽度 8 ms8 ms)18PC与SFR复位状态表寄存器复位状态寄存器复位状态PC0000HTCON00HA00HT2CON00HB00HTH000HPSW00HTL000HSP07HTH100HDPTR0000HTL100HP0P3FFHSCON00HIPXX000000BSBUFXXHIE0X000000BPCON0XXX0000BTMOD00H19单片机的引脚(复位端)A.上电复位上电复位B.手动手动&上电复位上电复位lVccVcc, GND: , GND: 电源端电源端 (+5V/3.3V/2.7V)+5V/3.3V/2.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入、输出端片内振荡电路输入、输出端lRESET: RESET: 复位端复位端 (正脉冲有效,宽度(正脉冲有效,宽度 8 ms8 ms)+5V10uF10KVccRSTGND10uF10KVccRSTGND1K+5V20单片机的引脚(复位端)C.同步复位电路同步复位电路lVccVcc, GND: , GND: 电源端电源端 (+5V/3.3V/2.7V)+5V/3.3V/2.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入、输出端片内振荡电路输入、输出端lRESET: RESET: 复位端复位端 (正脉冲有效,宽度(正脉冲有效,宽度 8 ms8 ms)22uF200KVccRSTGND74HC14+5V接低电平复位芯片接低电平复位芯片21D.专用复位芯片专用复位芯片l应用于可靠性要求较高应用于可靠性要求较高的嵌入式系统中。的嵌入式系统中。22单片机的引脚(EA端)lVccVcc, GND: , GND: 电源端电源端 (+5V/3.3V/2.7V)+5V/3.3V/2.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入、输出端片内振荡电路输入、输出端lRESET: RESET: 复位端复位端 (正脉冲有效,宽度(正脉冲有效,宽度 8 ms8 ms)lEA/EA/VppVpp: : 寻址外部寻址外部ROMROM控制端控制端/ /编程电源输入端。编程电源输入端。 低有效低有效,片内,片内无无ROMROM时时必须必须接地接地; 片内片内有有ROMROM时时应当应当接高电平接高电平; 对片内对片内ROMROM编程时编程正电源加到此端。编程时编程正电源加到此端。23单片机的引脚(ALE端)lVccVcc, GND: , GND: 电源端电源端 (+5V/3.3V/2.7V)+5V/3.3V/2.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入、输出端片内振荡电路输入、输出端lRESET: RESET: 复位端复位端 (正脉冲有效,宽度(正脉冲有效,宽度 8 ms8 ms)lEA/EA/VppVpp: : 寻址外部寻址外部ROMROM控制端控制端/ /编程电源输入端。编程电源输入端。lALE/PROG: ALE/PROG: 地址锁存允许地址锁存允许/ /编程脉冲输入端。编程脉冲输入端。 P0P0口寻址外部低口寻址外部低8 8位地址位地址时时接外部锁存器接外部锁存器 G G端;端; ALEALE端端平时会输出周期正脉冲平时会输出周期正脉冲:f f fosc/6fosc/6 ; 对片内对片内ROMROM编程时编程脉冲由此端加入。编程时编程脉冲由此端加入。 24单片机的引脚(PSEN端)lPSENPSEN:寻址外部程序存储器时选通外部寻址外部程序存储器时选通外部EPROMEPROM的的 读控制端读控制端(OEOE)低有效。低有效。25单片机单片机锁存器锁存器74LS373P0.0-P0.7ALEPSENP2.0-P2.48D8QOEA8-A12A0-A7D0-D7GEAOECEEPROM单片机的引脚(PSEN端)lPSENPSEN:寻址外部程序存储器时选通外部寻址外部程序存储器时选通外部EPROMEPROM的的 读控制端读控制端(OEOE)低有效。低有效。26单片机的I/O引脚结构众多功能各异的I/O引脚源于它结构的不同27单片机的引脚(P1口)lP1.0P1.7: P1.0P1.7: 准双向准双向I/OI/O口口(内置内置了上拉电阻)了上拉电阻) 输出时一切照常,输出时一切照常,仅在作仅在作输入口输入口用时要先对其用时要先对其 写写“1 1”。21DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线Vcc引脚引脚P1.X内部上拉电阻内部上拉电阻2821DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线Vcc引脚引脚P1.X内部上拉电阻内部上拉电阻输输出出数据数据 = 1 时时110截截止止=1单片机的引脚(P1口)lP1.0P1.7: P1.0P1.7: 准双向准双向I/OI/O口口(内置内置了上拉电阻)了上拉电阻) 输出时一切照常,输出时一切照常,仅在作仅在作输入口输入口用时要先对其用时要先对其 写写“1 1”。2921DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线Vcc引脚引脚P1.X内部上拉电阻内部上拉电阻输输出出数据数据 = 0 时时001=0导导通通单片机的引脚(P1口)lP1.0P1.7: P1.0P1.7: 准双向准双向I/OI/O口(口(内置内置了上拉电阻了上拉电阻) 输出时一切照常,输出时一切照常,仅在作仅在作输入口输入口用时要先对其用时要先对其 写写“1 1”。3021DQCK/Q读引脚读引脚 =1读锁存器读锁存器写锁写锁存器存器内部内部总线总线Vcc引脚引脚P1.X内部上拉电阻内部上拉电阻输输入入数据时,要先对其写数据时,要先对其写“1”110截截止止单片机的引脚(P1口)lP1.0P1.7: P1.0P1.7: 准双向准双向I/OI/O口(口(内置内置了上拉电阻了上拉电阻) 输出时一切照常,输出时一切照常,仅在作仅在作输入口输入口用时要先对其用时要先对其 写写“1 1”。31简单测控实例原理图32P1.3作输入端口光路通畅,光路通畅,R亮亮 2K 光路阻断,光路阻断,R暗暗 400K 33JOB3: CLR P1.1 ;亮绿灯REDO: SETB P1.3 ;P1.3作输入口必先置1CHECK:JNB P1.3,CHECK ;检测通道是否被阻断?LOOP: ;有入侵者,报警!AJMP REDO ;再跳回去检测任务:红外防盗报警P1.3口用于输入状态检测的语句: 红外线光路通畅时,P1.3端低电平红外线光路阻断时,P1.3端高电平34单片机的引脚(P0口)lP0.0P0.7: P0.0P0.7: 双向双向I/O I/O (内置内置场效应管场效应管上拉)上拉) 寻址外部程序存储器时寻址外部程序存储器时分时分时作为作为双向双向8 8位数据口位数据口和和输出低输出低8 8位地址位地址复用口复用口;不接外部程序存储器不接外部程序存储器时可时可作为作为8 8位位准双向准双向I/OI/O口口使用。使用。21DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址地址/数据数据 控制控制引脚引脚P0.X34Vcc3521DQCK/Q读引脚读引脚 =1读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址地址/数据数据 控制控制引脚引脚P0.X34控制控制=0 时时,此脚作,此脚作输入口输入口(事先必须对它写(事先必须对它写“1”)00100截截止止截截止止=0Vcc单片机的引脚(P0口)lP0.0P0.7: P0.0P0.7: 双向双向I/O I/O (内置内置场效应管场效应管上拉)上拉) 寻址外部程序存储器寻址外部程序存储器时分时作为时分时作为双向双向8 8位数据口位数据口和和输出低输出低8 8位地址位地址复用口;不接外部程序存储器复用口;不接外部程序存储器时可作为时可作为8 8位位准双向准双向I/OI/O口口使用。使用。3621DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址地址/数据数据 控制控制引脚引脚P0.X34控制控制=0 时时,此脚作,此脚作输出口输出口(输出引脚必须加上拉电阻)(输出引脚必须加上拉电阻)00100截截止止截截止止=0Vcc单片机的引脚(P0口)lP0.0P0.7: P0.0P0.7: 双向双向I/O I/O (内置内置场效应管场效应管上拉)上拉) 寻址外部程序存储器寻址外部程序存储器时分时作为时分时作为双向双向8 8位数据口位数据口和和输出低输出低8 8位地址位地址复用口;不接外部程序存储器复用口;不接外部程序存储器时可作为时可作为8 8位位准双向准双向I/OI/O口口使用。使用。3721DQCK/Q读引脚读引脚 =0读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址地址/数据数据 控制控制=1引脚引脚P0.X34控制控制=1时,此脚作地址时,此脚作地址/数据数据复用口复用口:(1)输出地址输出地址/数据数据 =0 时时1011=0导导通通截截止止=0Vcc单片机的引脚(P0口)lP0.0P0.7: P0.0P0.7: 双向双向I/O I/O (内置内置场效应管场效应管上拉)上拉) 寻址外部程序存储器时分时作为寻址外部程序存储器时分时作为双向双向8 8位数据口位数据口和和输出低输出低8 8位地址位地址复用口;不接外部程序存储器复用口;不接外部程序存储器时可作为时可作为8 8位位准双向准双向I/OI/O口口使用。使用。3821DQCK/Q读引脚读引脚 =0读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址地址/数据数据 控制控制=1引脚引脚P0.X34控制控制=1时,此脚作地址时,此脚作地址/数据数据复用口复用口:(2)输出地址输出地址/数据数据 =1 时时1100=1截截止止导导通通=1Vcc单片机的引脚(P0口)lP0.0P0.7: P0.0P0.7: 双向双向I/O I/O (内置内置场效应管场效应管上拉)上拉) 寻址外部程序存储器时分时作为寻址外部程序存储器时分时作为双向双向8 8位数据口位数据口和和输出低输出低8 8位地址位地址复用口;不接外部程序存储器复用口;不接外部程序存储器时可作为时可作为8 8位位准双向准双向I/OI/O口口使用。使用。3921DQCK/Q读引脚读引脚 =1读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址地址/数据数据 控制控制=1引脚引脚P0.X34控制控制=1时,此脚作地址时,此脚作地址/数据数据复用口复用口: (3)输入数据时,输入指令将使引脚与内部总线直通输入数据时,输入指令将使引脚与内部总线直通Vcc单片机的引脚(P0口)lP0.0P0.7: P0.0P0.7: 双向双向I/O I/O (内置内置场效应管场效应管上拉)上拉) 寻址外部程序存储器时分时作为寻址外部程序存储器时分时作为双向双向8 8位数据口位数据口和和输出低输出低8 8位地址位地址复用口;不接外部程序存储器复用口;不接外部程序存储器时可作为时可作为8 8位位准双向准双向I/OI/O口口使用。使用。40单片机的引脚(P2口)lP2.0P2.7: P2.0P2.7: 双向双向I/O I/O (内置了上拉电阻)内置了上拉电阻) 寻址外部程序存储器时寻址外部程序存储器时输出高输出高8 8位地址位地址;不接外不接外部程序存储器时可部程序存储器时可作为作为8 8位位准双向准双向I/OI/O口口使用。使用。21DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址高地址高8位位 控制控制引脚引脚 P2.X3内部上拉电阻内部上拉电阻Vcc4121DQCK/Q读引脚读引脚 =0读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址高地址高8位位 控制控制 引脚引脚P2.X控制控制=0时,此脚作通用时,此脚作通用输出口输出口:输出输出=0时时001导导通通3内部上拉电阻内部上拉电阻00Vcc=0=0单片机的引脚(P2口)lP2.0P2.7: P2.0P2.7: 双向双向I/O I/O (内置了上拉电阻)内置了上拉电阻) 寻址外部程序存储器时寻址外部程序存储器时输出高输出高8 8位地址位地址;不接外;不接外部程序存储器时可作为部程序存储器时可作为8 8位位准双向准双向I/OI/O口口使用。使用。4221DQCK/Q读引脚读引脚 =0读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址高地址高8位位 控制控制=1 引脚引脚P2.X控制控制=1 时,此脚作时,此脚作高高8位地址位地址A8A15输出口:输出口:当当输出输出 =1 时时10截截止止3内部上拉电阻内部上拉电阻1=1Vcc=1单片机的引脚(P2口)lP2.0P2.7: P2.0P2.7: 双向双向I/O I/O (内置了上拉电阻)内置了上拉电阻) 寻址外部程序存储器时寻址外部程序存储器时输出高输出高8 8位地址位地址;不接外;不接外部程序存储器时可作为部程序存储器时可作为8 8位位准双向准双向I/OI/O口口使用。使用。4321DQCK/Q读引脚读引脚 =0读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址高地址高8位位 控制控制=1 引脚引脚P2.X01导导通通3内部上拉电阻内部上拉电阻0=0Vcc=0控制控制=1 时,此脚作时,此脚作高高8位地址位地址A8A15输出口:输出口:当当输出输出 =0 时时单片机的引脚(P2口)lP2.0P2.7: P2.0P2.7: 双向双向I/O I/O (内置了上拉电阻)内置了上拉电阻) 寻址外部程序存储器时寻址外部程序存储器时输出高输出高8 8位地址位地址;不接外;不接外部程序存储器时可作为部程序存储器时可作为8 8位位准双向准双向I/OI/O口口使用。使用。44单片机的引脚(P3口)lP3.0P3.7: P3.0P3.7: 双功能口双功能口(内置了上拉电阻)(内置了上拉电阻) 它它具有特定的第二功能具有特定的第二功能。在不使用它的第二功。在不使用它的第二功能时它就是普通的能时它就是普通的通用准双向通用准双向I/OI/O口口。21DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线第二功能输出第二功能输出引脚引脚 P3.X3内部上拉电阻内部上拉电阻Vcc第二功能输入第二功能输入44521DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线第二功能输出第二功能输出(WRWR,RDRD,TxDTxD)引脚引脚 P3.X3内部上拉电阻内部上拉电阻Vcc4第二功能输出时,内部自动第二功能输出时,内部自动 D=1D=1111反相器反相器单片机的引脚(P3口)lP3.0P3.7: P3.0P3.7: 双功能口双功能口(内置了上拉电阻)(内置了上拉电阻) 它它具有特定的第二功能具有特定的第二功能。在不使用它的第二功。在不使用它的第二功能时它就是普通的能时它就是普通的通用准双向通用准双向I/OI/O口口。4621DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线此端自动此端自动1 1引脚引脚 P3.X3内部上拉电阻内部上拉电阻Vcc 第二功能输入第二功能输入(RxDRxD,T0T0,T1T1,INT0INT0,INT1INT1)4第二功能输入时,信号经第二功能输入时,信号经缓冲器缓冲器4 4 直接进入内总线直接进入内总线1 11 11 10 0截截止止单片机的引脚(P3口)lP3.0P3.7: P3.0P3.7: 双功能口双功能口(内置了上拉电阻)(内置了上拉电阻) 它它具有特定的第二功能具有特定的第二功能。在不使用它的第二功。在不使用它的第二功能时它就是普通的能时它就是普通的通用准双向通用准双向I/OI/O口口。47P3口第二功能表(P.31 表2-3)引引 脚脚第第 二二 功功 能能 P3.0P3.0RxD: RxD: 串行口接收数据输入端串行口接收数据输入端P3.1P3.1TxD:TxD: 串行口发送数据输出端串行口发送数据输出端P3.2P3.2INT0:INT0: 外部中断申请输入端外部中断申请输入端 0 0P3.3P3.3INT1:INT1: 外部中断申请输入端外部中断申请输入端 1 1P3.4P3.4T0:T0: 外部计数脉冲输入端外部计数脉冲输入端 0 0P3.5P3.5T1:T1: 外部计数脉冲输入端外部计数脉冲输入端 1 1P3.6P3.6WR:WR: 写外设控制信号输出端写外设控制信号输出端P3.7P3.7RD:RD: 读外设控制信号输出端读外设控制信号输出端4851单片机的8个特殊引脚lVccVcc, GND, GND: : 电源端电源端lXTAL1, XTAL2XTAL1, XTAL2: : 片内振荡电路输入、输出端片内振荡电路输入、输出端lRESETRESET: : 复位端复位端 正脉冲有效(正脉冲有效(宽度宽度 8 ms8 ms)lEAEA/ /VppVpp: : 寻址外部寻址外部ROMROM控制端控制端。低有效。低有效 片内有片内有ROMROM时应当接高电平。时应当接高电平。lALEALE/PROG/PROG: : 地址锁存允许地址锁存允许控制端控制端。lPSENPSEN:选通外部选通外部ROMROM的读的读(OE)(OE)控制端控制端。 低有效低有效4951单片机的4个8位的I/O口P0.0P0.7:P0.0P0.7:8 8位数据口位数据口和和输出低输出低8 8位地址位地址复用口复用口 ( (复用时是复用时是双向口双向口;不复用时也是;不复用时也是准双向口准双向口) )P1.0P1.7: P1.0P1.7: 通用通用I/OI/O口口(准双向口)(准双向口)P2.0P2.7:P2.0P2.7: 输出高输出高8 8位地址位地址(用于寻址时是(用于寻址时是输出口;输出口;不寻址时是不寻址时是准双向口准双向口)P3.0P3.7: P3.0P3.7: 具有特定的第二功能具有特定的第二功能(准双向口)(准双向口)注意:注意:在不外扩在不外扩ROM/RAMROM/RAM时,时,P0P0P3P3均可作通用均可作通用I/OI/O口使用,而且口使用,而且都是都是准双向准双向I/OI/O口口( (例如例如: :AT89C51AT89C51) )!50P3口第二功能表 (P.31 表2-3)引引 脚脚第第 二二 功功 能能 P3.0P3.0RxD: RxD: 串行口接收数据输入端串行口接收数据输入端P3.1P3.1TxD:TxD: 串行口发送数据输出端串行口发送数据输出端P3.2P3.2INT0:INT0: 外部中断申请输入端外部中断申请输入端 0 0P3.3P3.3INT1:INT1: 外部中断申请输入端外部中断申请输入端 1 1P3.4P3.4T0:T0: 外部计数脉冲输入端外部计数脉冲输入端 0 0P3.5P3.5T1:T1: 外部计数脉冲输入端外部计数脉冲输入端 1 1P3.6P3.6WR:WR: 写外设控制信号输出端写外设控制信号输出端P3.7P3.7RD:RD: 读外设控制信号输出端读外设控制信号输出端51存储器、堆栈、SFR52程序存储器程序存储器ROMROM(Read Only MemoryRead Only Memory)MASK ROMMASK ROMPROMPROMProgrammable ROMProgrammable ROMEPROMEPROM(UVUV)Erazible Programmable ROMErazible Programmable ROMEEPROM/EEEPROM/E2 2PROMPROMElectrical Erasable Electrical Erasable Programmable ROM Programmable ROM闪速存储器闪速存储器Flash MemoryFlash Memory按字节寻址:每个字节按字节寻址:每个字节(8(8个位个位) )占一个地址占一个地址按位寻址:有的存储器每一个位就有一个地址按位寻址:有的存储器每一个位就有一个地址单片机的存储器几个有关的概念:53数据存储器数据存储器RAMRAM(Random Access MemoryRandom Access Memory)静态存储器静态存储器 SRAMSRAMStatic RAMStatic RAM动态存储器动态存储器 DRAMDRAMDynamic RAMDynamic RAM单片机的存储器几个有关的概念:5489C51单片机存储器配置单片机存储器配置l单片机的存储器系统采用哈佛结构,单片机的存储器系统采用哈佛结构,ROMROM空空间和间和RAMRAM空间是分开的。空间是分开的。l片内片内Flash Flash ROMROM 4K 4K字节字节 (000HFFFH000HFFFH)l片内片内RAMRAM 128 128字节(字节(00H7FH00H7FH)l可寻址片外可寻址片外ROMROM 64K 64K字节字节 (0000HFFFFH0000HFFFFH)l可寻址片外可寻址片外RAMRAM 64K 64K字节字节 (0000HFFFFH0000HFFFFH)5589C51单片机存储器配置单片机存储器配置 ROM程序存储器编址原则:(P37) 先片内,后片外,片内、片外连续,先片内,后片外,片内、片外连续,二者一般不二者一般不重叠。重叠。片内ROM4KB/EA=1片外ROM片外ROM/EA=00000H0FFFH0000HFFFFH0FFFH1000H(A)51子系列子系列片内ROM8KB/EA=1片外ROM片外ROM/EA=00000H1FFFH0000HFFFFH1FFFH2000H(B)52子系列子系列5689C51单片机存储器配置单片机存储器配置 ROMROMROM中中7 7个特殊入口地址(个特殊入口地址(P37P37)入口地址入口地址操作操作0000H0000H复位复位0003H0003H外部中断外部中断0 0000BH000BH定时器定时器/ /计数器计数器0 0溢出溢出0013H0013H外部中断外部中断1 1001BH001BH定时器定时器/ /计数器计数器1 1溢出溢出0023H0023H串行口中断串行口中断002BH002BH定时器定时器/ /计数器计数器0 0溢出或溢出或T2EXT2EX端负跳变端负跳变5789C51单片机存储器配置 RAMRAMl片内片内RAMRAM 128 128字节(字节(00H7FH00H7FH):): 片内片内RAMRAM前前3232个单元是工作寄存器区个单元是工作寄存器区(00H1FH)(00H1FH) 片内片内RAMRAM有有128128个可按位寻址的位,占个可按位寻址的位,占1616个单元。个单元。 位地址编号为:位地址编号为:00H7FH00H7FH, 分布在分布在20H2FH20H2FH单元单元 片内片内RAMRAM有有8080个单元是数据缓冲区(个单元是数据缓冲区(30H7FH30H7FH) (5252有有208208个单元,个单元,30HFFH30HFFH)l片内片内18/2118/21(51/5251/52)个特殊功能寄存器)个特殊功能寄存器( (SFRSFR) )中:中:地址号能被地址号能被8 8整除的整除的 SFRSFR中的各位中的各位也可也可按位寻址按位寻址(P.3940P.3940)58存储器配置(片内RAM)l片内片内RAMRAM 128128字节字节(00H7FH00H7FH)00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区SFR分布在分布在80H-FFH其中其中93个位个位可位寻址可位寻址80H80HFFHFFH所有的所有的RAMRAM区区( (包括包括位位寻址区、工作寄存器寻址区、工作寄存器区)都可以用于存放区)都可以用于存放数据,故也称为数据,故也称为数据数据缓存寄存器缓存寄存器89C51 128128字节字节59l片内片内RAMRAM前前3232个单元是个单元是工作寄存器区工作寄存器区 (00H1FH)(00H1FH)00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区存储器配置(片内RAM)6000H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区R0R2R1R3R4R5R6R707H02H01H00H06H04H05H03H08H1FH工作寄存器区工作寄存器区3工作寄存器区工作寄存器区2工作寄存器区工作寄存器区1工作寄存器区工作寄存器区00FH10H17H18Hl片内片内RAMRAM前前3232个单元是个单元是工作寄存器区工作寄存器区 (00H1FH)(00H1FH)存储器配置(片内RAM)61R0R2R1R3R4R5R6R707H02H01H00H06H04H05H03H08H1FH工作寄存器区工作寄存器区3工作寄存器区工作寄存器区2工作寄存器区工作寄存器区1工作寄存器区工作寄存器区00FH10H17H18Hl工作寄存器选择工作寄存器选择( (通过通过PSWPSW中第中第4 4位、第位、第3 3位,位,即即RS1RS1、RS0RS0两位的值进行选择两位的值进行选择) )存储器配置(片内RAM)RS1RS1RS2RS2寄存器组寄存器组片内片内RAMRAM地址地址0 00 0第第0 0组组00H07H00H07H0 01 1第第1 1组组08H0FH08H0FH1 10 0第第2 2组组10H17H10H17H1 11 1第第3 3组组18H1FH18H1FH6200H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区l片内片内RAMRAM中有中有128128个可按位寻址的位。个可按位寻址的位。 位地址位地址: :00H7FH 00H7FH 分布在分布在: :20H2FH20H2FH单元单元存储器配置(片内RAM)6300H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区27H22H21H20H26H24H25H23H28H2FH单元地址单元地址07 06 05 04 03 02 01 000F 0E 0D 0C 0B 0A 09 0817 16 15 14 13 12 11 101F 1E 1D 1C 1B 1A 19 1827 26 25 24 23 22 21 202F 2E 2D 2C 2B 2A 29 2837 36 35 34 33 32 31 303F 3E 3D 3C 3B 3A 39 3847 46 45 44 43 42 41 407F 7E 7D 7C 7B 7A 79 78位地址位地址总共总共128个可个可按位按位寻址寻址的位的位l片内片内RAMRAM中有中有128128个可按位寻址的位。个可按位寻址的位。 位地址位地址: :00H7FH 00H7FH 分布在分布在: :20H2FH20H2FH单元单元存储器配置(片内RAM)6400H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区27H22H21H20H26H24H25H23H28H2FH单元地址单元地址07 06 05 04 03 02 01 000F 0E 0D 0C 0B 0A 09 0817 16 15 14 13 12 11 101F 1E 1D 1C 1B 1A 19 1827 26 25 24 23 22 21 202F 2E 2D 2C 2B 2A 29 2837 36 35 34 33 32 31 303F 3E 3D 3C 3B 3A 39 3847 46 45 44 43 42 41 407F 7E 7D 7C 7B 7A 79 78位地址位地址总共总共128个可个可按位按位寻址寻址的位的位存储器配置(片内RAM)注意:注意:MOV C,00HMOV A,00HMOV A,20H的区别的区别65堆栈: 在在片内片内RAMRAM中,常常要指定一个专门的区域来中,常常要指定一个专门的区域来存放某些存放某些特别的特别的数据数据, ,它遵循它遵循顺序存取顺序存取和和后进后进先出先出(LIFO/FILO(LIFO/FILO)的原则的原则, ,这个这个RAMRAM区区叫叫堆栈堆栈。功用功用:1 1)子程序调用)子程序调用和和中断服务中断服务时时CPUCPU自动将当前自动将当前PCPC 值值压栈保存,返回时自动将压栈保存,返回时自动将PCPC值弹栈。值弹栈。2 2)保护现场)保护现场/ /恢复现场恢复现场3 3)数据传输)数据传输6600H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普