《单片机学教程t第2章内部硬件架构及资源》由会员分享,可在线阅读,更多相关《单片机学教程t第2章内部硬件架构及资源(76页珍藏版)》请在金锄头文库上搜索。
1、第第2 2章章 单片机单片机内部硬件架构内部硬件架构及及资源资源本讲本讲重点重点: : 1.MCS-511.MCS-51单片机的单片机的内部结构内部结构; ;2.2.单片机的单片机的引脚引脚与与I/OI/O口结构口结构; ;3.3.存储器存储器、堆栈堆栈与与特殊功能寄存器特殊功能寄存器; ;4.4.单片机工作的基本单片机工作的基本时序时序; ;5.5.这一章以一些记忆性的为主这一章以一些记忆性的为主, ,为后续章节提供了实为后续章节提供了实现的内部硬件架构和物质保障现的内部硬件架构和物质保障; ;6 6.(.(复习复习) )自己总结一下自己总结一下,51,51单片机内部涉及哪些寄存单片机内部涉
2、及哪些寄存器器, ,写出这些寄存器的英文全称写出这些寄存器的英文全称, ,写出一些写出一些SFRSFR有哪些位组成有哪些位组成1精品培训课件PPT2.1 2.1 单片机发展史单片机发展史 2.1.1 2.1.1 单片机的产生与发展单片机的产生与发展 2.1.2 2.1.2 单片机与计算机之异同单片机与计算机之异同2.1.3 2.1.3 单片机的特点单片机的特点 2.2 MCS-512.2 MCS-51单片机内部结构单片机内部结构2.2.1 MCS-512.2.1 MCS-51单片机系列区别单片机系列区别2.2.2 MCS-512.2.2 MCS-51单片机基本特性单片机基本特性2.2.3 2.
3、2.3 单片机的引脚定义单片机的引脚定义2.3 2.3 并行输入并行输入/ /输出接口输出接口2.3.1 2.3.1 单片机的引脚单片机的引脚(P1(P1口口) )2.3.2 2.3.2 单片机的引脚单片机的引脚(P0(P0口口) )2.3.3 2.3.3 单片机的引脚单片机的引脚(P2(P2口口) )2.3.4 2.3.4 单片机的引脚单片机的引脚(P3(P3口口) )2精品培训课件PPT2.4 2.4 单片机中几个重要的结构单片机中几个重要的结构 存储器、堆栈、存储器、堆栈、SFRSFR2.4.1 2.4.1 单片机的存储器单片机的存储器几个有关的概念几个有关的概念: :2.4.2 89C
4、512.4.2 89C51单片机存储器配置单片机存储器配置2.4.3 2.4.3 堆栈堆栈2.4.4 89C512.4.4 89C51特殊功能寄存器特殊功能寄存器2.5 2.5 单片机工作的基本时序单片机工作的基本时序2.5.1 2.5.1 机器周期和指令周期机器周期和指令周期2.5.2 MCS-512.5.2 MCS-51指令的取指指令的取指/ /执行时序执行时序2.5.3 2.5.3 访问外部访问外部ROMROM和和RAMRAM的时序的时序2.5.4 2.5.4 读外部数据读外部数据RAMRAM时序时序2.5.5 2.5.5 写外部数据写外部数据RAMRAM的时序的时序2.6 2.6 单片
5、机的工作方式单片机的工作方式2.6.12.6.1 复位方式复位方式 2.6.22.6.2 程序执行方式程序执行方式2.6.3 2.6.3 节电工作方式节电工作方式3精品培训课件PPT2.1 单片机发展史单片机发展史( (了解了解) ) 2.1.1 2.1.1单片机的产生与发展单片机的产生与发展 第第1 1阶段阶段(1971(19711976): 1976): 单片机发展的初级阶段单片机发展的初级阶段第第2 2阶段阶段(1976(19761980): 1980): 低性能单片机阶段低性能单片机阶段 MCS-48MCS-48系列系列第第3 3阶段阶段( (198019801983): 1983):
6、 高性能实用性很强的单片机阶段高性能实用性很强的单片机阶段 MCS-51MCS-51系列系列第第4 4阶段阶段(1983(19838080年代末年代末):16):16位位( (全功能全功能) )单片机阶段单片机阶段. . MCS-96 MCS-96系列系列8098/80968098/8096、80C198/80C198/80C19680C196, ,第第5 5阶段阶段(90(90年代年代):():(量体裁衣量体裁衣) )单片机在集成度、多元化单片机在集成度、多元化, ,功能、功能、速度、可靠性、应用领域等全方位向更高水平发展速度、可靠性、应用领域等全方位向更高水平发展. . DSP,32DSP
7、,32位单片机位单片机ARMARM4精品培训课件PPT单片机与嵌入式单片机与嵌入式: :微控制器微控制器 MCU (Micro-Controller Unit)嵌入式嵌入式微控制器微控制器(Embedded Microcontroller)单片机应用领域单片机应用领域: :测控系统、智能仪表、智能接口、办公自动化、光机测控系统、智能仪表、智能接口、办公自动化、光机电一体化设备、通讯设备、网络设备、汽车电子、消电一体化设备、通讯设备、网络设备、汽车电子、消费类电子产品、智能楼宇设备费类电子产品、智能楼宇设备单片机的多种型号单片机的多种型号: :Intel Atmel(89 AVR) Motoro
8、la(M68HC08) TI(MSP430) Philips Winbond(华邦华邦) Microchip (微芯微芯PIC)5精品培训课件PPTAtmel Atmel 标准型标准型:AT89C51 AT89C52 :AT89C51 AT89C52 AT89lv51 AT89lv52AT89lv51 AT89lv52低档型低档型:AT89C1051 AT89C2051(2Kflash) (20PIN):AT89C1051 AT89C2051(2Kflash) (20PIN)高档型高档型: AT89S51 AT89S52 ISP: AT89S51 AT89S52 ISP功能功能AVRAVR.
9、.Philips Philips P80CXX P87CXX P89CXX P87LPC7XXP80CXX P87CXX P89CXX P87LPC7XXTI MSP430PIC系列系列6精品培训课件PPT1.1.组成组成: : CPU(CPU(进行运算、控制进行运算、控制) RAM() RAM(数据存储器数据存储器) ) I/OI/O口口( (串口、并口等串口、并口等) ROM() ROM(程序存储器程序存储器) ) PCPC机机: :上述部件以独立器件形式安装在主板上上述部件以独立器件形式安装在主板上. .包括包括: :键盘、键盘、显示器、鼠标、硬显示器、鼠标、硬/ /软软/ /光驱、音箱
10、、打印机、扫描仪光驱、音箱、打印机、扫描仪等外设等外设 单片机单片机: :上述部件被集成到上述部件被集成到单芯片单芯片中中, ,只是只是一片集成电路一片集成电路.(8/16/20/28/32/40/48/100.(8/16/20/28/32/40/48/100条引脚条引脚).).2.1.2 2.1.2 单片机单片机与与计算机计算机之异同之异同2.2.功能功能: :PCPC机机: : 数据运算、采集、处理、存储、传输数据运算、采集、处理、存储、传输; ;单片机单片机: :控制控制( (或受控于或受控于) )外设外设, ,测控测控, ,往往往往嵌入某个仪器嵌入某个仪器/ /设备设备/ /系系统中统
11、中, ,使其达到智能化的效果使其达到智能化的效果. .7精品培训课件PPT3.3.应用特点应用特点: :PCPC机机: :体积大体积大, ,功耗大功耗大, ,价格高价格高(3000(3000),),用途较固定用途较固定, ,属通属通用计算机用计算机. .易于学习掌握和使用易于学习掌握和使用, ,但用于控制时必须安装一但用于控制时必须安装一定的应用软件定的应用软件. .单片机单片机: :体积小体积小, ,功耗小功耗小, ,价格低价格低, ,用途灵活用途灵活, ,无处不在无处不在, ,属专属专用计算机用计算机. .是一种特殊器件是一种特殊器件, ,需经过专门学习方能掌握应用需经过专门学习方能掌握应
12、用, ,应用中要应用中要设计专门的硬件和软件设计专门的硬件和软件. .4.4.联系联系单片机的应用开发单片机的应用开发, ,软件编程环境软件编程环境(keil)(keil)、硬件硬件SCH,PCBSCH,PCB的设计的设计(Protel)(Protel)都是在都是在PCPC个人电脑上进行的个人电脑上进行的8精品培训课件PPT2.1.3 2.1.3 单片机的特点单片机的特点 控制功能强控制功能强, ,指令丰富指令丰富. .如转移如转移, ,逻辑判断逻辑判断, ,位操作等位操作等; ; 体积小体积小, ,可靠性高可靠性高, ,结构灵活结构灵活, ,易于组成各种微机应用系统易于组成各种微机应用系统.
13、 . 低功耗、低电压低功耗、低电压; ; 便于制作便携式、网络化等产品便于制作便携式、网络化等产品; ; 外部设备接口外部设备接口集成度高集成度高SOC SOC (System On Chip).如如: :可以集成可以集成AD/DA/LCD AD/DA/LCD 驱动驱动/ /串口串口/USB/CAN/PWM/USB/CAN/PWM等等 单片机与单片机系统单片机与单片机系统: :单片机单片机是指一块芯片是指一块芯片, ,它不能完成特定的应用任务它不能完成特定的应用任务; ;单片机系统单片机系统指在一块单片机芯片的基础上指在一块单片机芯片的基础上, ,扩展了显示、扩展了显示、键盘、以及其它外围芯片
14、键盘、以及其它外围芯片, ,构成的系统构成的系统9精品培训课件PPT系列片内存储器(字节)定时器计数器并行I/O串行I/O中断源片内ROM片内RAM无romless有ROM有EPROMIntelMCS-51子系列803180C31805180C51(4K字节)875187C51(4K字节)128字节2x164x8位15IntelMCS-52子系列803280C32805280C52(8K字节)875287C52(8K字节)256字节3x164x8位16ATEMLATEML89C89C系系列列( (常用常用型型) )1051(1K)/2051(2K)/4051(4K)(FLASHFLASH DI
15、P-20封装)1282151589C51(4K)/89C52(8K)/89S51(40条引脚DIP封装)128/2562/33215/62.2.1 2.2.1 2.2.1 2.2.1 MCS-51MCS-51单片机系列单片机系列区别区别( (强调强调, ,考试考试) )2.2 MCS-512.2 MCS-51单片机单片机内部结构内部结构10精品培训课件PPT 表表中中列列出出了了MCS-51MCS-51系系列列单单片片机机的的两两个个子子系系列列, , 在在4 4个个性性能能上上略略有有差差异异. .在在本本子子系系列列内内各各类类芯芯片片的的主主要要区别在于片内区别在于片内有无有无ROMRO
16、M或或EPROM;EPROM; MCS- MCS-5151与与MCS-MCS-5252子系列间所不同的是子系列间所不同的是: :(1)(1)片内程序存储器片内程序存储器ROMROM从从4KB4KB增至增至8KB; 8KB; (2)(2)片内数据存储器片内数据存储器由由128128个个字节增至字节增至256256个字节个字节; ;(3)(3)定时器定时器/ /计数器增加了计数器增加了1 1个个; ; (3)(3)中断中断源增加了源增加了1 12 2个个. . 对对于于制制造造工工艺艺为为CHMOSCHMOS的的单单片片机机, , 由由于于采采用用CMOSCMOS技技术术制制造造, , 因因此此具
17、具有有低低功功耗耗的的特特点点, ,如如80518051功功耗耗约约为为630mW630mW, , 而而80C5180C51的功耗只有的功耗只有120mW120mW. .11精品培训课件PPT2.2.2 MCS-512.2.2 MCS-51单片机单片机基本特性基本特性( (内部资源内部资源) )1.8位位的的CPU,片内有振荡器和时钟电路片内有振荡器和时钟电路,工作频率为工作频率为 112MHz(Atmel 89Cxx为为024MHz)2.片内有片内有 128字节字节 RAM3.片内有片内有 0K/4K字节字节 程序存储器程序存储器ROM4.可寻址可寻址片外片外64K字节字节 数据存储器数据存
18、储器RAM (216 =65536=1024*64)5.可寻址可寻址片外片外64K字节字节 程序存储器程序存储器ROM(少用了少用了)6.片内片内21个个特殊功能寄存器特殊功能寄存器(SFR-Special Function Register)7.4个个8位并行位并行I/O口口(P0-P3)8.1个全双工串行口个全双工串行口(UART)9.2个个16位位 定时器定时器/计数器计数器(TIMER/COUNTER)10.可处理可处理5个中断个中断源源,两级两级中断优先级中断优先级11.内置内置1个布尔处理器个布尔处理器Cy和和1个累加器个累加器ACC12.MCS-51指令集含指令集含111条指令条
19、指令12精品培训课件PPT内内部部结结构构框框图图( (了解了解) )13精品培训课件PPT MCS-51单片机组成结构中包含单片机组成结构中包含运算器、控制器、片内存储器、运算器、控制器、片内存储器、4个个I/O口、串行口、定时器口、串行口、定时器/计数器、中断系统、振荡器等功能部件计数器、中断系统、振荡器等功能部件. 运算部件以算术逻辑单元运算部件以算术逻辑单元ALU (Arithmetic Logic Unit)为核心为核心,包括包括累累加器加器ACC (Accumulator)、寄存器寄存器B、暂存器、程序状态字、暂存器、程序状态字PSW等许多部等许多部件件.它能实现数据的算术逻辑运算
20、、位变量处理和数据传输操作它能实现数据的算术逻辑运算、位变量处理和数据传输操作.MCS-51单片机单片机(51子系列子系列)内带有内带有两个两个16位定时器位定时器/计数器计数器T0和和T1,它们它们均可作为定时器或计数器使用均可作为定时器或计数器使用.14精品培训课件PPT从一片从一片集成电路集成电路的角度去认识单片机的角度去认识单片机DIP-40封装封装P0.0P0.7(39-32) 8 P1.0P1.7(1-8) 8 P2.0P2.7(21-28) 8 P3.0P3.7(10-17) 8Vcc(40), GND(20) 2XTAL1, XTAL2(18/19) 2RESET(9) 1EA
21、*/Vpp(31) 1ALE/PROG*(30) 1PSEN*(29) 12.2.3 2.2.3 单片机的单片机的引脚引脚(pin)Protel99中的位置中的位置Protel DOS Schematic Libraries.ddbProtel DOS Schematic Intel.lib 803115精品培训课件PPT4444只引脚方形只引脚方形(PLCC)(PLCC)封装方式为封装方式为(4(4只没有用只没有用) )16精品培训课件PPT17精品培训课件PPT(1)(1)Vcc(40), GND(20)Vcc(40), GND(20): : 正电源端正电源端与与接地端接地端( (+5V+
22、5V/3.3V/2.7V)/3.3V/2.7V)不同的单片不同的单片机可以允许不同的工作电压机可以允许不同的工作电压, ,不同的单片机表现出的功耗也不同不同的单片机表现出的功耗也不同. .(2)(2)XTAL1, XTAL2(18,19)XTAL1, XTAL2(18,19):Crystal:Crystal片内振荡电路输入片内振荡电路输入/ /输出端输出端晶振晶振实物图片实物图片18精品培训课件PPT也可以由也可以由 XTAL1XTAL1端接入端接入外部时钟外部时钟, ,此时应将此时应将 XTAL2XTAL2接地接地: :1 112MHz(MCS-51)12MHz(MCS-51)151545p
23、F45pFXTAL1XTAL1XTAL2XTAL2XTAL2XTAL2XTAL1XTAL1外部时钟外部时钟典型晶振电路典型晶振电路(OSC Oscillator)通常通常外接外接一个晶振两个电容一个晶振两个电容19精品培训课件PPTCPUCPU总是按照一定的总是按照一定的时钟节拍时钟节拍与时序工作与时序工作( (后面有详细叙述后面有详细叙述) )1.1.振荡周期振荡周期/ /时钟周期时钟周期Tc:(clockTc:(clock) () (记忆记忆) )对于对于12MHz,112MHz,1个振荡周期个振荡周期1/12 us1/12 us振荡周期振荡周期=1/fosc=1/fosc2.2.状态周期
24、状态周期TsTs: (: (很少用到此概念很少用到此概念) ) Ts(status Ts(status)=2)=2个时钟周期个时钟周期(Tc(Tc) )3.3.机器周期机器周期:Tm(machine:Tm(machine) )=6=6个状态周期个状态周期(Ts)=(Ts)=1212个振荡周期个振荡周期(Tc(Tc) ) ( (记忆记忆) )对于对于12MHz,12MHz,1 1个机器周期个机器周期1us 1us 6MHz6MHz呢呢? ?4.4.指令周期指令周期: : Ti(instructionTi(instruction) ): :执行一条指令所需的机器周期执行一条指令所需的机器周期(Tm
25、)(Tm)数数 ( (如如DJNZ R7,$ DJNZ R7,$ 两个机器周期两个机器周期) )NOTE:NOTE: 1 1个指令周期个指令周期=1=1、2 2、4 4个机器周期个机器周期( (后面提到后面提到) )20精品培训课件PPT(3) RESET(9): 复位端复位端(正脉冲有效正脉冲有效,两个机器周期两个机器周期(2us-12MHz)的高电平信号的高电平信号使系统复位使系统复位)复位使单片机进入某种确定的初始状态复位使单片机进入某种确定的初始状态: (1) PC (Programe Counter)值归零值归零(0000H)(2)各个)各个SFR被赋予被赋予初始初始值值(3)退出处
26、于节电工作方式的停顿状态、退出一切程序)退出处于节电工作方式的停顿状态、退出一切程序进程、退出程序的死循环进程、退出程序的死循环,从头开始从头开始.21精品培训课件PPTPCPC与与SFR(Special Function Register)特殊功能寄存器特殊功能寄存器特殊功能寄存器复位状态表特殊功能寄存器复位状态表( (记忆!记忆!) )寄存器寄存器复位状态复位状态寄存器寄存器复位状态复位状态PC0000HTCON00HA00HT2CON00HB00HTH000HPSW00HTL000HSP07H(特殊特殊,记忆记忆)TH100HDPTR0000HTL100HP0P3FFH (特殊特殊,记忆
27、记忆)SCON00HIPXX000000BSBUFXXHIE0X000000BPCON0XXX0000BTMOD00H22精品培训课件PPT+5V10uF8.2kVccRSTGND上电复位上电复位阻容阻容复位复位10uF10KVccRSTGND手动手动&上电复位上电复位1K+5V有些芯片也需要复位电平有些芯片也需要复位电平, ,如果器要求和单片机相同如果器要求和单片机相同, ,可以和可以和RSTRST相连相连典型典型复位电路复位电路( ( Reset 记忆记忆) )23精品培训课件PPT扩展扩展: :使用使用MAX706MAX706 (24-26 (24-26 自学自学, ,实验用到实验用到)
28、 )upup监控器监控器MAX706MAX706 MAX706 MAX706内部由时基信号发生器内部由时基信号发生器, ,看门狗定时器看门狗定时器, ,复位信号发生器及掉复位信号发生器及掉电电压比较器构成电电压比较器构成, ,其中时基信号发生器提供看门狗定时器定时脉冲其中时基信号发生器提供看门狗定时器定时脉冲, ,芯芯片的引脚如图所示片的引脚如图所示, ,各引脚愈义如下各引脚愈义如下: :PFI(PowerPFI(Power Fail Voltage Monitor Input) Fail Voltage Monitor Input)电源故障电压监控输入电源故障电压监控输入PFO*(Power
29、-Fail Output)PFO*(Power-Fail Output)电源故障输出电源故障输出, ,当监控电压当监控电压PFI1.25V,PFI1.25V, PFO PFO变低变低. .WDI(WatchdogWDI(Watchdog Input) Input)看门狗输入看门狗输入RESETRESET高电平复位信号输出端高电平复位信号输出端MR*(Manual-Reset Input)MR*(Manual-Reset Input)手动复位手动复位WDO*(Watchdog Output)WDO*(Watchdog Output)看门狗输出看门狗输出 MAx706PMAx706P的典型应用电路
30、如图的典型应用电路如图24精品培训课件PPT25精品培训课件PPT复位功能复位功能手动复位手动复位: :当接当接在在MR*MR*引脚上的按键按下引脚上的按键按下,MR*,MR*接收接收低电平信号低电平信号,RESET,RESET变为高电平变为高电平, ,延时时间为延时时间为200ms,200ms,使使8XX518XX51复位复位. .当当电源电压降至电源电压降至4.4V4.4V以下以下, ,内部的电压比较器使内部的电压比较器使RESETRESET变为高电平变为高电平使单片机复位使单片机复位, ,直到直到VccVcc上升到正常上升到正常值值. .26精品培训课件PPT4.4.EA*EA*/Vpp
31、/Vpp: : (External Access) (31 (31脚脚) )寻址寻址外部外部ROMROM控制端控制端/ /编程电源输入端编程电源输入端. .EA*:EA*:低有效低有效 ( (理解记忆!难点理解记忆!难点) )(1)(1)接地接地 GND:GND:使用的是使用的是 ROMlessROMless的的MCUMCU时时(2)(2)接高电平接高电平 VccVcc( (常用常用):):片内有片内有ROM,ROM,对对80518051而言而言 当当PC0FFFH(4k),CPUPC0FFFH,PC0FFFH,且且外部外部有扩展有扩展ROMROM时时,CPU,CPU自动自动转向转向外部外部R
32、OMROM的程序的程序VppVpp: :对片内对片内ROMROM编程时编程正电源加到此端编程时编程正电源加到此端.(.(了解了解) )27精品培训课件PPT(5)ALE (5)ALE (Address Latch Enable) /PROG*: (30/PROG*: (30脚脚) )地址锁存允许地址锁存允许/ /编程脉冲输入端编程脉冲输入端. . ALE:P0ALE:P0口寻址外部口寻址外部低低8 8位位地址时地址时接外部锁存器接外部锁存器 G(LE)G(LE)端端; ; 当当访问外部存储器访问外部存储器时时, ,ALEALE信号的负跳变信号的负跳变将将P0P0口上的口上的低低8 8位位地址送
33、入锁存器地址送入锁存器; ;不不访问外部存储器访问外部存储器时时,ALE,ALE端以端以固定的固定的振荡器振荡频率的振荡器振荡频率的1/61/6速率输出正脉冲信号速率输出正脉冲信号, ,作为作为对外的时钟信号对外的时钟信号或或定时脉冲定时脉冲f f fosc/6 (fosc/6 (记忆记忆!)!) PROG* PROG* 对片内对片内ROMROM编程时编程脉冲由此端加入编程时编程脉冲由此端加入( (了解了解) )28精品培训课件PPT例例1:SRAM62641:SRAM6264的扩展的扩展89C516264P0.0-P0.7ALEP2.7P2.0-P2.48D8QOEA8-A12A0-A7D0
34、-D7G(LE)EAOECE2*RDWRWECE1*+5V锁存器锁存器74LS37329精品培训课件PPT8031锁存器锁存器74LS373P0.0-P0.7ALEPSENP2.0-P2.48D8QOEA8-A12A0-A7D0-D7GEAOECEEPROM(6)PSEN*(6)PSEN* (Program Store Enable) 低有效低有效 (29(29脚脚) )寻址寻址外部程序存储器外部程序存储器时选通时选通外部外部ROMROM的的读控制端读控制端(OE*)(OE*)Note:Note:读取外部读取外部ROMROM时时, ,每个机器周期每个机器周期产生两次产生两次PSENPSEN有效
35、信号有效信号, , 执行执行片内片内ROMROM取指取指时时, ,不产生不产生PSENPSEN信号信号30精品培训课件PPT综述综述( (记忆记忆, ,重要重要, ,记住这几个结论记住这几个结论!)!)P0.0P0.0P0.7:P0.7:双向双向8 8位数据口和输出低位数据口和输出低8 8位地址位地址, ,内部内部无无上拉电阻上拉电阻, ,做做为为普通普通I/OI/O口使用时口使用时, ,外部一般接外部一般接10k10k上拉电阻上拉电阻P1.0-P1.7:P1.0-P1.7:内置了上拉电阻的内置了上拉电阻的8 8位位准双向准双向( () )I/OI/O口口P2.0P2.0P2.7:P2.7:内
36、置了上拉电阻的内置了上拉电阻的8 8位位准双向准双向I/OI/O口口 寻址寻址外部程序存储器外部程序存储器时时, ,输出输出高高8 8位地址位地址; ; 不接外部程序存储器时不接外部程序存储器时, ,可作为可作为8 8位准双向位准双向I/OI/O口使用口使用. .P3.0P3.0P3.7:P3.7:内置了上拉电阻的内置了上拉电阻的8 8位位准双向准双向I/0I/0口口 它具有特定的它具有特定的第二功能第二功能. .不使用它的第二功能时不使用它的第二功能时, ,可作为可作为8 8位准双位准双向向I/OI/O口口. .2.3 2.3 并行输入并行输入/ /输出接口输出接口31精品培训课件PPT排阻
37、的实物图片排阻的实物图片 32精品培训课件PPTP3P3口口第二功能表第二功能表( (重要重要) )引引 脚脚第第 二二 功功 能能 P3.0P3.0RxDRxD (Receive Data): (Receive Data): 串行口接收数据输入端串行口接收数据输入端P3.1P3.1TxDTxD (Transmit Data): (Transmit Data): 串行口发送数据输出端串行口发送数据输出端P3.2P3.2INT0*(External 0 Interrupt): INT0*(External 0 Interrupt): 外部中断申请输入端外部中断申请输入端 0 0P3.3P3.3I
38、NT1*(External 1 Interrupt): INT1*(External 1 Interrupt): 外部中断申请输入端外部中断申请输入端 1 1P3.4P3.4T0(clock source for timer 0): 外部计数脉冲输入端外部计数脉冲输入端 0P3.5P3.5T1(clock source for timer 0): 外部计数脉冲输入端外部计数脉冲输入端 1P3.6P3.6WR*(Write): WR*(Write): 写外设控制信号输出端写外设控制信号输出端P3.7P3.7RD*(Read): RD*(Read): 读外设控制信号输出端读外设控制信号输出端33精
39、品培训课件PPT准双向口:在在输入数据时输入数据时, ,应先把口线置应先把口线置1 1, ,使两个输出使两个输出FETFET关断关断, ,使管脚使管脚“浮置浮置”, ,成为成为高阻状态高阻状态, ,这样才能这样才能正确的输入数据正确的输入数据, ,这就这就是是所谓的准双向口所谓的准双向口 在准双向口作为在准双向口作为输入口时输入口时, ,应先置应先置1 1锁存器锁存器, ,即先向该即先向该I/OI/O口写口写“1 1”, ,使该使该I/OI/O口工作于口工作于输入方式输入方式, ,然后然后再读引脚再读引脚.(.(记忆记忆) ) 比如比如, ,要将要将P1P1口的状态读入到累加器口的状态读入到累
40、加器A A中中, ,软件实现方法如下软件实现方法如下: : MOV P1,#0FFH MOV P1,#0FFH ;P1 ;P1口置为输入方式口置为输入方式 MOV A,P1MOV A,P1; ;读读P1P1口状态到累加器口状态到累加器A A中中34精品培训课件PPT简简单单测测控控实实例例原原理理图图35精品培训课件PPTP1.3P1.3作作输输入入端端口口光路通畅光路通畅,R亮亮 2K 光路阻断光路阻断,R暗暗 400K R亮亮 250K 36精品培训课件PPTJOB3: CLR P1.1 ;JOB3: CLR P1.1 ;亮绿灯亮绿灯REDO: REDO: SETB P1.3SETB P1
41、.3 ; ;P1.3P1.3作输入口必先置作输入口必先置1 1CHECK:JNB P1.3,CHECK ;CHECK:JNB P1.3,CHECK ;检测通道是否被阻断?检测通道是否被阻断?LOOP: LOOP: ; ;有入侵者有入侵者, ,报警!报警!AJMP REDO ;AJMP REDO ;再跳回去检测再跳回去检测任务任务: :红外防盗报警红外防盗报警( (用到后面程序知识了用到后面程序知识了) )P1.3P1.3口用于口用于输入输入状态检测的语句状态检测的语句: : R R亮亮2.2k250k250k , , 红外线光路红外线光路阻断阻断时时,P1.3,P1.3高高电平电平37精品培训
42、课件PPT(4)(4)并行口的并行口的负载能力负载能力 oP0P0、P1P1、P2P2、P3P3口的口的电平与电平与CMOSCMOS和和TTLTTL电平电平兼容兼容. .oP0P0口口的每一位口线可以的每一位口线可以驱动驱动8 8个个LSTTLLSTTL负载负载.(800uA).(800uA)在在作为通用作为通用I/OI/O口口时时, ,由于输出驱动电路是由于输出驱动电路是漏极开漏极开路方式路方式, ,由集电极开路由集电极开路(OC(OC门门) )电路或漏极开路电路驱动电路或漏极开路电路驱动时时需外接上拉电阻需外接上拉电阻; ;当作为当作为地址地址/ /数据总线数据总线使用时使用时, ,口线输
43、出不是开漏口线输出不是开漏的的, ,无须外接上拉电阻无须外接上拉电阻. .38精品培训课件PPTnP1P1、P2P2、P3P3口的每一位能驱动口的每一位能驱动4 4个个LSTTL(400uA)LSTTL(400uA)负载负载. .它们它们的输出驱动电路的输出驱动电路设有内部上拉电阻设有内部上拉电阻, ,所以可以方便地由集电所以可以方便地由集电极开路极开路(OC(OC门门) )电路或漏极开路电路所驱动电路或漏极开路电路所驱动, ,而而无须外接上拉无须外接上拉电阻电阻. .n 由于单片机口线仅能提供由于单片机口线仅能提供几毫安的电流几毫安的电流, ,当作为输出驱动当作为输出驱动一般的一般的晶体管的
44、基极晶体管的基极时时, ,应在口与晶体管的基极之间串接应在口与晶体管的基极之间串接限限流电阻流电阻. .39精品培训课件PPT2.4 2.4 单片机内部几个重要的结构单片机内部几个重要的结构存储器、堆栈、存储器、堆栈、SFRSFR( (重要重要) )40精品培训课件PPT2.4.1 2.4.1 单片机的单片机的存储器存储器几个有关的概念几个有关的概念: :几种存储器类型几种存储器类型:RAM(Random Access Memory) 数据数据存储器存储器,存放检测的数据存放检测的数据,中间变量中间变量(内存内存)(1)SRAM (Static RAM)静态静态存储器存储器(2)DRAM (D
45、ynamic RAM)动态动态存储器存储器ROM(Read Only Memory) 程序程序存储器存储器,存放应用程序存放应用程序(硬盘硬盘)(1)MASK ROM 掩膜大量生产掩膜大量生产(2)OTP (One Time Programmable)一次可编程一次可编程ROM(3)EPROM(UV)(Erasable Programmable ROM) (2764-M2764A) 用用紫外线紫外线擦除的擦除的ROM(芯片中央有圆形的孔芯片中央有圆形的孔,几十分钟几十分钟) 常用常用 (4) EEPROM/E2PROMElectrical Erasable Programmable ROM用用
46、电电擦除的擦除的ROM,掉电保存掉电保存(24LC256 X2816C) 常用常用 (5)Flash Memory 闪速闪速存储器存储器(AT29C256)41精品培训课件PPT2.4.2 89C512.4.2 89C51单片机单片机存储器配置存储器配置( (难点难点 重点重点) ) MCS51 MCS51单片机单片机, ,程序存储器与数据存储器程序存储器与数据存储器分别分别编址编址-冯诺依曼冯诺依曼结构结构8XC196/MSP430 8XC196/MSP430 单片机单片机, ,程序存储器与数据存储器统一编址程序存储器与数据存储器统一编址 普林斯顿结构普林斯顿结构7FH=127,FFH=25
47、5 ,FFFH=4K-1, FFFFH=64K-1 (看懂这张图看懂这张图)42精品培训课件PPT1.1.片内片内RAM RAM 低低128128字节字节(00H(00H7FH)7FH); (; (记忆记忆) ) (1)00H-1FH: (1)00H-1FH:前前3232个单元是个单元是工作寄存器区工作寄存器区 (2)20H-2FH:128(2)20H-2FH:128个可个可按位寻址的位按位寻址的位, ,占占1616个单元个单元, ,位地址编位地址编 号为号为: :00H-7FH00H-7FH (3)30H-7FH: (3)30H-7FH:片内片内一般一般RAM,RAM,只能按字节寻址只能按字
48、节寻址2.2.片内片内RAM RAM 高高128128字节字节(80-FFH)(80-FFH) 离散离散分布着分布着2121个特殊功能寄存器个特殊功能寄存器 SFR (Special Function SFR (Special Function Register) Register) 其中其中: :地址号能被地址号能被8 8整除整除的的SFRSFR中的可以按中的可以按位寻址位寻址3.3.可寻址可寻址片外片外RAM 64KRAM 64K字节字节 (0000H(0000HFFFFH)FFFFH)少用少用4.4.片内片内ROM 4KROM 4K字节字节 (000H(000HFFFH)FFFH)5.5
49、.片外片外ROM 64KROM 64K字节字节 (0000H(0000HFFFFH)FFFFH)少用少用43精品培训课件PPT1.1.片片内内RAM RAM 低低128128字节字节(00H(00H7FH)7FH)00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区SFR分布在分布在80H-FFH其中其中92个位个位可位寻址可位寻址80H80HFFHFFH所有的所有的RAMRAM区区( (包括位寻址包括位寻址区、工作寄存器区区、工作寄存器区) )都可以都可
50、以用于存放数据用于存放数据89C51 128128字节字节44精品培训课件PPT00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区R0R2R1R3R4R5R6R707H02H01H00H06H04H05H03H08H1FH工作寄存器区工作寄存器区3工作寄存器区工作寄存器区2工作寄存器区工作寄存器区1工工作作寄寄存存器器区区00FH10H17H18H(1)(1)工作寄存器区工作寄存器区 片内片内RAMRAM前前32(8*4)32(8*4)个单元个单元 (0
51、0H(00H1FH)1FH)任意时刻只可以使用一组工作寄存器区任意时刻只可以使用一组工作寄存器区默默认认设设置置45精品培训课件PPT00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区(2)(2)可可按位寻址按位寻址的字节单元的字节单元 20H20H2FH2FH单元单元片内片内RAMRAM中中128(8*16)128(8*16)个的位个的位. . 位地址位地址: :00H00H7FH7FH Programming Tip: If your program
52、 does not use bit variables you may use Internal RAM locations 20h through 2Fh for your own use. If you plan to use bit variables be very careful about using addresses from 20h through 2Fh as you may end up overwriting the value of your bits.46精品培训课件PPT00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFF
53、H52子系列才有子系列才有的的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
54、7D 7C 7B 7A 79 78位地址位地址总共总共128个个可按可按位寻位寻址的址的位位(1)FIND BIT 00H(2)FIND BIT 20H.0(3)FLAG DATA 20H FIND BIT FLAG.047精品培训课件PPT00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区可以供编程使用的单元可以供编程使用的单元, ,注意注意, ,只能只能当当字节字节用用, ,一共一共8080个单元个单元(3)30H-7FH:(3)30H-7FH:片内
55、片内一般一般RAM,RAM,只能按字节寻址只能按字节寻址48精品培训课件PPTo片内片内Flash Flash ROM 4KROM 4K字节字节 (0000H(0000H0FFFH);0FFFH);o可寻址可寻址片外片外ROM 64KROM 64K字节字节 (0000H(0000HFFFFH);FFFFH);对比对比: :可寻址可寻址片外片外RAM 64KRAM 64K字节字节 (0000H(0000HFFFFH);FFFFH);FFFFH0000H可寻址可寻址 片外片外RAMRAM 64K字节字节FFFFH0000H可寻址可寻址 片外片外ROMROM 64K字节字节FFFH000H可寻址可寻
56、址 片内片内Flash Flash ROMROM4K 字节字节89C5189C517FH00H片内片内 RAMRAM 128字节字节FFH80H49精品培训课件PPT(1)(1)程序存储器程序存储器存放存放调试好的应用程序和表格常数调试好的应用程序和表格常数(TAB: DB (TAB: DB *H,*H,*H,*H,.).)(2)MCS-51(2)MCS-51采用采用1616位的位的PCPC和和1616位的地址总线位的地址总线(P2+P0),(P2+P0),使使64k64k程序程序存储器空间连续、统一存储器空间连续、统一(3)(3)对于对于内部有内部有ROMROM的的CPUCPU, ,EA*E
57、A*接高电平接高电平, ,程序首先从程序首先从内部内部ROMROM开始开始执行执行, ,当当PC0FFFHPC0FFFH时时, ,自动自动转向转向外部外部ROM(1000-0FFFFH)ROM(1000-0FFFFH)地址空地址空间执行程序间执行程序(4)(4)对于内部没有对于内部没有ROMROM的的CPU,EA*CPU,EA*接低电平接低电平, ,迫使迫使CPUCPU从外部从外部ROMROM取取指令指令;(;(少用少用) )(5)(5)内部内部RAMRAM和和外部外部RAMRAM存在存在地址重叠地址重叠, ,但不会造成操作混乱但不会造成操作混乱, ,通过通过不同的指令来区别不同的指令来区别:
58、 :访问访问内部内部RAM,RAM,用用MOVMOV指令指令, ,访问访问外部外部RAM,RAM,用用MOVXMOVX指令指令NOTE:NOTE:50精品培训课件PPT符号符号 名名 称称 中中 断断 引引 起起 原原 因因 中断服务程序中断服务程序入口入口(ROM(ROM空间空间) )INT0外部外部中断中断0 0 P3.2P3.2引脚的低电平或下降沿信号引脚的低电平或下降沿信号0003HT0定时器定时器0 0溢出溢出中断中断定时计数器定时计数器0 0计数回零溢出计数回零溢出000BHINT1外部外部中断中断1 1P3.3P3.3引脚的低电平或下降沿信号引脚的低电平或下降沿信号0013HT1
59、定时器定时器1 1溢出溢出中断中断 定时计数器定时计数器1 1计数回零溢出计数回零溢出 001BHTI/RI 串行口中断串行口中断 串行通信完成一帧数据发送或接收串行通信完成一帧数据发送或接收引起中断引起中断 0023H几个特殊的几个特殊的ROM空间空间,涉及到后面中断知识涉及到后面中断知识51精品培训课件PPT2.4.3 2.4.3 堆栈堆栈(stack)(stack) 在片内在片内RAMRAM中中, ,常常要指定一个专门的区域来存放某些特常常要指定一个专门的区域来存放某些特别的数据别的数据, ,它遵循它遵循先进后出先进后出oror后进先出后进先出(LIFO/FILO)-Last In (L
60、IFO/FILO)-Last In First OutFirst Out的的, ,顺序存储原则顺序存储原则, ,这个这个RAMRAM区区叫堆栈叫堆栈-子弹夹子弹夹( (flashflash) )1.1.功用功用: :1)1)在调用在调用子程序子程序和和中断服务程序中断服务程序时时CPUCPU自动自动将当前将当前PCPC 值值压栈压栈保存保存, ,返回时返回时自动自动将将PCPC值值弹栈弹栈. .2)2)保护现场保护现场/ /恢复现场恢复现场(PUSH/POP)(PUSH/POP)3)3)数据传输数据传输52精品培训课件PPT复位后复位后 SP=07H,SP=07H,数据进栈时数据进栈时: :首
61、先首先SP+1SP+1指指向向08H08H单元单元, ,第一个放进堆栈的数据将放第一个放进堆栈的数据将放进进08H08H单元单元, ,然后然后SPSP再自动增再自动增1,1,仍指向仍指向栈栈顶顶2.2.堆栈区由堆栈区由SFRSFR的堆栈指针的堆栈指针SP(StackSP(Stack Pointer) Pointer)管理管理, ,就就5151单片机而言单片机而言,SP,SP指示的是堆栈空间指示的是堆栈空间栈顶的地址栈顶的地址( (记忆记忆) )堆栈区可以安排在堆栈区可以安排在RAMRAM区任意位置区任意位置, ,一般不安排在一般不安排在工作寄存器区和可按位寻址的工作寄存器区和可按位寻址的RAM
62、RAM区区, ,通常放在通常放在RAMRAM区的区的靠后的位置靠后的位置(MOV SP,#60H).(MOV SP,#60H).00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区 SP栈顶栈顶下一个进栈的数下一个进栈的数据将存在此据将存在此数据数据进栈进栈已经进栈的数据已经进栈的数据存放在此存放在此初始初始 SP53精品培训课件PPT从堆栈从堆栈取出取出数据时数据时: :取出的数据是取出的数据是最最近近放进去的一个数据放进去的一个数据, ,也就是当前栈也
63、就是当前栈顶的数据顶的数据. .然后然后SPSP再自动减再自动减1 1, ,仍指向仍指向栈顶栈顶00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区 SP栈顶栈顶当前要出栈的数据当前要出栈的数据数据数据出栈出栈SP-1指向下一个将指向下一个将要出栈的数据要出栈的数据初始初始 SP54精品培训课件PPT从堆栈取出数据时从堆栈取出数据时: :取出的数据是最取出的数据是最近放进去的一个数据近放进去的一个数据, ,也就是当前栈也就是当前栈顶的数据顶的数据. .然后
64、然后SPSP再自动减再自动减1,1,仍指向仍指向栈顶栈顶00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区SP-1 指向新的栈指向新的栈顶顶,也就是下一个也就是下一个将要出栈的数据将要出栈的数据数据数据出栈出栈初始初始 SP55精品培训课件PPTProgramming Tip: By default, the 8052 initializes the Stack Pointer (SP) to 07h ,when the microcontroller
65、is booted. This means that the stack will start at address 08h and expand upwards. If you will be using the alternate register banks (banks 1, 2 or 3) ,you must initialize the stack pointer to an address above the highest register bank you will be using, otherwise the stack will overwrite your alter
66、nate register banks. Similarly, if you will be using bit variables, it is usually a good idea to initialize the stack pointer to some value greater than 2Fh to guarantee that your bit variables are protected from the stack.(翻译翻译)56精品培训课件PPT2.4.4 89C512.4.4 89C51特殊功能寄存器特殊功能寄存器(SFR) (SFR) Special Func
67、tion RegisterSpecial Function Register1.1.作用:专用于控制、选择、管理、存放单片机内部各作用:专用于控制、选择、管理、存放单片机内部各部分的工作方式、条件、状态、结果的寄存器部分的工作方式、条件、状态、结果的寄存器. .2.2.不同的不同的SFRSFR管理不同的硬件模块管理不同的硬件模块, ,负责不同的功能负责不同的功能各司其职各司其职, ,换言之换言之: :要让单片机实现预订的功能要让单片机实现预订的功能, ,必须有相必须有相应的硬件和软件应的硬件和软件, ,而软件中最重要的一项工作就是对而软件中最重要的一项工作就是对SFRSFR写命令写命令( (要
68、求要求).).57精品培训课件PPTProgramming Tip #1: SFRs are used to control the way the 8052 functions. Each SFR has a specific purpose and format . Not all addresses above 80h are assigned to SFRs. However, this area may NOT be used as additional RAM memory even if a given address has not been assigned to an SF
69、R. Programming Tip #2: Since direct access to addresses 80h through FFh refers to SFRs, direct access cannot be used to access Internal RAM addresses 80h through FFh. The upper 128 bytes of Internal RAM must be accessed using Indirect Addressing58精品培训课件PPT特点特点: :(看下一页的图)(看下一页的图)1.1.PCPC不是不是一个特殊功能寄存器
70、一个特殊功能寄存器SFR,SFR,但其作用又十分重要和但其作用又十分重要和特殊特殊!2.2.它是系统内部它是系统内部唯一唯一的一个的一个不可寻址不可寻址的的1616位寄存器位寄存器, ,按机按机器周期器周期自动加自动加1 1计数器(记忆)计数器(记忆)3.PC3.PC总是指向总是指向下一条下一条指令所在首地址指令所在首地址( (当前当前PCPC值值) ) 4.4.PCPC没有地址没有地址, ,不可寻址不可寻址, ,用户无法对它进行读写用户无法对它进行读写, ,复位后复位后,PC=0000H,PC=0000H,系统从系统从ROM:0000hROM:0000h单元开始执行程序单元开始执行程序5.5
71、.一切分支一切分支/ /跳转跳转/ /调用调用/ /中断中断/ /复位等操作的复位等操作的本质本质就是就是: :改改变变PCPC值值程序计数器程序计数器PC (Program Counter) PC (Program Counter) 记忆记忆59精品培训课件PPT内内部部结结构构框框图图( (了解了解) )60精品培训课件PPT89C5189C51有有2121个个SFRSFR1-4.1-4. P0P0: P0: P0口口锁存器锁存器(Latch)(Latch) 80h 80hP1P1: P1: P1口锁存器口锁存器 90h90hP2P2: P2: P2口锁存器口锁存器 0A0h0A0hP3P
72、3: P3: P3口锁存器口锁存器 0B0h 0B0h (看上面那张图)(看上面那张图)BIT ADDRESSABLEBIT ADDRESSABLE SETB SETB P1.0P1.05.5.堆栈指针寄存器堆栈指针寄存器 SP (Stack Pointer) SP (Stack Pointer) 81h 81h总是指向总是指向栈顶栈顶, ,压栈时压栈时: :先先(SP)+1,(SP)+1,后后数据进栈数据进栈; ;弹栈时弹栈时: :数据数据先先出栈出栈, ,然后然后(SP)-1(SP)-1. . (注意这个(注意这个顺序顺序)61精品培训课件PPT6.6.累加器累加器 ACC (Accumu
73、lator) ACC (Accumulator) Bit addressable 0E0H0E0H 一个被众多指令一个被众多指令用得最频繁用得最频繁的特殊功能寄存器的特殊功能寄存器( (如如: :运算、数据传输运算、数据传输). JB ). JB ACC.7ACC.7,NEXT,NEXT7.7.寄存器寄存器B B Bit addressable 0F0H0F0H一个经常与一个经常与ACCACC配合在一起使用的特殊功能寄存器配合在一起使用的特殊功能寄存器( (如如: :乘乘法法 MUL ABMUL AB、除法、除法 DIV ABDIV AB),),此外此外, ,它也经常当作它也经常当作普通寄存普
74、通寄存器器使用使用. .62精品培训课件PPT8.8.程序状态字程序状态字寄存器寄存器 PSW (Program Status Word):Bit addressable (0D0h) (0D0h)CyCy(PSW.7 (PSW.7 Carry FlagCarry Flag) ) 进位进位/ /借位标志位借位标志位. .若若ACCACC在运算过程中在运算过程中,D7,D7发生发生了进位或借位了进位或借位, ,则则CY=1;CY=1;否则否则=0.=0.它也是布尔处理器的位累加器它也是布尔处理器的位累加器, ,可用可用于布尔操作于布尔操作. .使用频繁使用频繁,JC/JNC/CJNE/ADDC/
75、SUBB,JC/JNC/CJNE/ADDC/SUBB多条指令多条指令( (常用常用) ) ACAC(PSW.6 (PSW.6 Auxiliary Carry FlagAuxiliary Carry Flag) ) 半进位半进位/ /借位标志位借位标志位. .若若ACCACC在运算在运算过程中过程中,D3,D3位向位向D4D4位发生了进位或借位位发生了进位或借位, ,则则CY=1,CY=1,否则否则=0.=0.机器在执行机器在执行“DA ADA A”指令时自动要判断这一位指令时自动要判断这一位, ,我们可以暂时不关心它我们可以暂时不关心它.(.(少用少用) )F0F0 (PSW.5 (PSW.5
76、 General Purpose Status Flag 0General Purpose Status Flag 0) ) 用户可以根据需要对用户可以根据需要对F0F0赋以一定的含义赋以一定的含义, ,判断标志判断标志( (有时用到有时用到) )CyACF0RS0OVPRS1PSW.7PSW.063精品培训课件PPTRS1RS1(PSW.4)(PSW.4)、RS0RS0(PSW.3) (PSW.3) Register Bank SelectRegister Bank Select 工作寄存器组选择位工作寄存器组选择位RS1,RS0 = RS1,RS0 = 0 00 0 则选择了工作寄存器组则
77、选择了工作寄存器组 0 0 区区 R0R0R7R7分别代表分别代表00H 00H 07H07H单元单元. . mov psw,#00hmov psw,#00hRS1,RS0 = RS1,RS0 = 0 10 1 则选择了工作寄存器组则选择了工作寄存器组 1 1 区区 R0R0R7R7分别代表分别代表08H 08H 0FH0FH单元单元. . mov psw,#08hmov psw,#08hRS1,RS0 = RS1,RS0 = 1 01 0 则选择了工作寄存器组则选择了工作寄存器组 2 2 区区 R0R0R7R7分别代表分别代表10H 10H 17H17H单元单元. . mov psw,#10
78、hmov psw,#10hRS1,RS0 = RS1,RS0 = 1 11 1 则选择了工作寄存器组则选择了工作寄存器组 3 3 区区 R0R0R7R7分别代表分别代表18H 18H 1FH1FH单元单元. . mov psw,#18h mov psw,#18h setb rs1setb rs1 setb setb rs0 rs0CYACF0RS0OVPRS1PSW.7PSW.0PSW.4 PSW.364精品培训课件PPTProgramming Tip: If you only use the first register bank (i.e. bank 0), you may use Int
79、ernal RAM locations 08h through 1Fh for your own use. If you plan to use registerbanks 1, 2, or 3, be very careful about using addresses below 20h as you may end up overwriting the value of R registers from other register banks.65精品培训课件PPTo片内片内RAMRAM前前3232个单元个单元(00H(00H1FH)1FH)是工作寄存器区是工作寄存器区 ( (由由PS
80、WPSW中的中的RS1,RS0RS1,RS0决定决定) ) 系统复位后系统复位后,PSW=00H,PSW=00H,自动选择自动选择00-07h00-07h单元单元, ,工作寄工作寄存器区存器区0,0,默认设置默认设置00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区R0R2R1R3R4R5R6R707H02H01H00H06H04H05H03H08H1FH工作寄存器区工作寄存器区3工作寄存器区工作寄存器区2工作寄存器区工作寄存器区1工工作作寄寄存存器器区
81、区066精品培训课件PPTOV (PSW.2 Overflow Flag) 溢出溢出标志位标志位 OV=1时特指累加器在进行带符号数时特指累加器在进行带符号数(-128- +127)运算运算时出错时出错(超出范围超出范围);OV=0时未出错时未出错. PSW.1 保留位保留位,未定义未定义.P (PSW.0 Parity of accumulator)奇偶标志位奇偶标志位 P=1表示表示累加器中累加器中“1”的个数为奇数的个数为奇数(odd) P=0表示累加器中表示累加器中“1”的个数为的个数为偶数偶数(even) (通信一节提到通信一节提到) CPU随时监视着随时监视着ACC中的中的“1”的
82、个数的个数,并反映在并反映在PSW中中CYACF0RS0OVPRS1PSW.7PSW.0PSW.2PSW.167精品培训课件PPT9-10. DPTR (Data Pointer) 数据指针数据指针寄存器寄存器 82H,83H 单片机内部单片机内部唯一唯一的一个的一个可以供用户使用可以供用户使用的的16位寄存器位寄存器 (比较比较:PC 16位位 不可寻址不可寻址),用来存放用来存放16位位地址值地址值,以便用间接寻址或变址寻址片以便用间接寻址或变址寻址片外存储器外存储器. MOV DPTR,#4000HDPTR可分成可分成DPL(LOW)和和DPH(HIGH)两个两个8位寄存器位寄存器分别使
83、用分别使用.(变形金刚变形金刚) PUSH DPTR (X) Register16-RAM8PUSH DPL (V)PUSH DPH (V)68精品培训课件PPT此外还有如下寄存器此外还有如下寄存器,它们将在后面章节介绍它们将在后面章节介绍(蓝色勾蓝色勾 BIT ADDRESSABLE)11. IP (Interrupt Priorities) 中断优先级控制寄存器中断优先级控制寄存器12. IE (Interrupt Enable)中断允许控制寄存器中断允许控制寄存器 13. TMOD (Timer Mode Register) 定时器定时器/计数器方式控制寄存器计数器方式控制寄存器14.
84、TCON (Timer Control Register) 定时器定时器/计数器控制寄存器计数器控制寄存器.15-16.TH0,TL0 (Timer 0 Low/High) 定时器定时器/计数器计数器017-18.TH1,TL1(Timer 1 Low/High) 定时器定时器/计数器计数器119. SCON (Serial Control Register) 串行端口控制寄存器串行端口控制寄存器20. SBUF (Serial Buffer Register) 串行数据缓冲器串行数据缓冲器21. PCON (Power Control Register) 电源控制寄存器电源控制寄存器69精品
85、培训课件PPT11个可位寻址的寄存器个可位寻址的寄存器,bit addressable70精品培训课件PPT2.5 2.5 单片机工作的基本单片机工作的基本时序时序2.5.1 2.5.1 机器周期和指令周期机器周期和指令周期 (1) (1) 振荡周期振荡周期Tc(ClockTc(Clock):):也称也称时钟周期时钟周期, , 是指为单片机提供时钟脉冲信号是指为单片机提供时钟脉冲信号的振荡源的周期的振荡源的周期.(.(晶振频率的倒数晶振频率的倒数) ) (2) (2) 状态周期状态周期Ts(StatusTs(Status):):每个状态周期为时钟周期的每个状态周期为时钟周期的2 2倍倍, ,
86、是振荡周期经是振荡周期经二分频后得到的二分频后得到的. (. (少用少用) ) (3) (3) 机器周期机器周期Tm(MachineTm(Machine):):一个机器周期包含一个机器周期包含6 6个状态周期个状态周期S1-S6S1-S6, , 也就是也就是1212个时钟周期个时钟周期. . 在一个机器周期内在一个机器周期内, CPU, CPU可以完成一个独立的操作可以完成一个独立的操作. .(12MHz(12MHz1us 6MHz1us 6MHz2us 2us 记忆记忆 在定时器中用到在定时器中用到) ) (4) (4) 指令周期指令周期Ti:Ti: 它是指它是指CPUCPU完成一条操作所需
87、的全部时间完成一条操作所需的全部时间. . 每条指令执每条指令执行时间都是有行时间都是有一个或几个机器周期一个或几个机器周期组成组成. . MCS-51 MCS-51系统中系统中, ,有单周期指令有单周期指令/ /双周期指令双周期指令/ /四周期指令四周期指令. .71精品培训课件PPT 若若MCS-51MCS-51单片机外接晶振为单片机外接晶振为12MHz12MHz时时, ,则单片机的四个周期的具体值为则单片机的四个周期的具体值为: : 振荡周期振荡周期TcTc1/12MHz1/12MHz1/12s1/12s0.0833s 0.0833s 状态周期状态周期TsTs2*Tc2*Tc1/6s0.
88、167s 1/6s0.167s 机器周期机器周期TmTm12*Tc12*Tc1s(1us) 1s(1us) 指令周期指令周期TiTi1 14s(4s(微观微观, ,和和DSPDSP的指令周期比的指令周期比, ,很大了很大了) ) MCS-51 MCS-51的一个机器周期包括的一个机器周期包括1212个时钟周期个时钟周期, ,分为分为6 6个状态个状态(Status):S1(Status):S1S6S6. .每个每个状态又分为状态又分为两拍两拍(Phase):P1(Phase):P1和和P2.P2.因此因此, ,一个机器周期中的一个机器周期中的1212个时钟周期表示个时钟周期表示为为:S1P1:
89、S1P1、S1P2S1P2、S2P1S2P1、S2P2S2P2、S6P2S6P272精品培训课件PPT2.6 2.6 单片机的单片机的工作方式工作方式2.6.1 2.6.1 复位复位方式方式 系统开机后需要复位系统开机后需要复位, ,使使CPUCPU及其他部件处于一个确定的及其他部件处于一个确定的初始状态初始状态. .2.6.2 2.6.2 程序执行方式程序执行方式1.1.单步单步执行方式执行方式 单片机在一定的控制方式下单片机在一定的控制方式下, ,逐条逐条执行用户程序中的指令执行用户程序中的指令, ,用于程用于程序序调试调试过程过程. .2.2.连续连续执行方式执行方式 被执行程序放在被执
90、行程序放在ROMROM中中, ,程序以一种程序以一种循环循环的方式连续执行各条指令的方式连续执行各条指令.(.(运行过程运行过程) )73精品培训课件PPT 除了除了正常的操作方式正常的操作方式外外, ,还具有还具有掉电掉电运行方式和运行方式和空闲空闲运行方式运行方式, ,且后备电源可直接加入且后备电源可直接加入VCCVCC端端, ,掉电数据保护掉电数据保护容易实现容易实现. . 单片机工作方式由特殊功能寄存器单片机工作方式由特殊功能寄存器PCONPCON内的内的b1b1、b0b0位位控制控制, ,该寄存器各位含义如下该寄存器各位含义如下: :SMOD1-GF1GF0PDIDL2.6.3 2.
91、6.3 节电节电工作方式工作方式( (了解了解) ) 低功耗低功耗74精品培训课件PPT1. SMOD1(1. SMOD1(即即b7b7位位) ) 与串行通信有关与串行通信有关, ,其中其中SMOD1SMOD1是波特率倍增位是波特率倍增位, ,当该位为时当该位为时, ,设置的波特率设置的波特率. . GF1 GF1、GF0GF0为通用标志为通用标志, ,由用户置位或复位由用户置位或复位. . PD PD (Power Down)(Power Down)为为掉电操作方式掉电操作方式位位. .当当PD=1PD=1时时, ,进入进入掉电掉电操作操作方式方式. . IDL IDL (Idle)(Idl
92、e)为为空闲操作方式空闲操作方式位位. .当当IDL=1IDL=1时时, ,进入进入节电节电运行方式运行方式. .2.2.当当PDPD和和IDLIDL位同时有效位同时有效, ,即即PDPD、IDLIDL位均为位均为1 1时时, ,进入掉电方式进入掉电方式, ,即即掉电方式优先权高于节电方式掉电方式优先权高于节电方式. . 3.3.复位后复位后,PCON,PCON寄存器初值为寄存器初值为00XX0000B,00XX0000B,即即PDPD、IDLIDL均为均为0,0,处于正处于正常操作方式常操作方式. .4.4.由于由于PCONPCON寄存器不具备位寻址功能寄存器不具备位寻址功能, ,因此只能通过或指令对因此只能通过或指令对PCONPCON寄存器中的某一位进行置位操作寄存器中的某一位进行置位操作, ,如如: : ORL PCON,#01H; ORL PCON,#01H;和立即数和立即数01H01H进行逻辑或运算使进行逻辑或运算使b0b0位位, ,即即IDL=1,IDL=1,迫使机器进迫使机器进 入节电运行状态入节电运行状态75精品培训课件PPTThank You更多精品更多精品 敬请关注!敬请关注!