单片机原理学习.pptx
《单片机原理学习.pptx》由会员分享,可在线阅读,更多相关《单片机原理学习.pptx(175页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、逻辑0与逻辑1逻辑运算的值为1代表真。逻辑运算的值为0代表假。第1页/共175页二进制运算 100110011 001000110101111001第2页/共175页二进制数与十进制数第3页/共175页二进制与十六进制十六进制 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F10110101B5表示为十六进制0 xB5,8位为一字节第4页/共175页BCD码00110101十位09个位09以上BCD码表示十进制数35第5页/共175页逻辑运算逻辑与&A*B 有0得0,全1得1逻辑或|A+B 有1得1,全0得0逻辑非!!A 取反1011010111011111第6页/共175页脉冲
2、上升沿下降沿脉冲宽度第7页/共175页数字电路逻辑运算电路编码器译码器数显电路数模、模数转换(D/A,A/D)Digital/Analoge加法器触发电路时序电路第8页/共175页几个概念与术语ROM(Read Only Memerry)只读存贮器RAM(Read Access Memerry)可读写存贮器Rom主要用来存贮程序,RAM用来存贮计算数据单片机是集CPUCPU、存储器、I/OI/O接口于一体的大规模集成电路芯片。MCS-51MCS-51系列单片机是目前市场上应用最广泛的单片机机型。第9页/共175页存贮器D0D1D2D3D4D5D6D700H01H02H03H04H05HD0D1
3、D2D3D4D5D6D7D0D1D2D3D4D5D6D7数据总线A0A1A2A3A4A5A6A7地址译码电路控制电路A0A1A2A3A4A5A6A7地址总线地址锁存器CS(片选)RD(读取)WR(写入)控制总线第10页/共175页三大总线数据总线地址总线控制总线第11页/共175页MCS-51系列单片机普通型(51子系列)8051、8031、8751、89C51、89S51等。增强型(52子系列)8032、8052、8752、89C52、89S52等。结构基本相同,主要差别在存储器的配置上。8031片内没有程序存储器8051内部设有4KB的掩模ROM程序存储器8751是将8051片内的ROM换
4、成EPROM89C51则换成4KB的闪速EEPROM89S51结构同89C51,4KB的闪速EEPROM可在线编程增强型的存储容量为普通型的一倍 第12页/共175页 51系列单片机内部结构P3P1P2 可编程 串行I/O口P0外部中断基准频率源控制128B RAM数据存储器 4KB ROM程序存储器 2个16位定时/计数器 振荡器及 定时电路 CPU 64KB总线扩展控制 可编程并行I/O口内部中断计数脉冲串行输出串行输入第13页/共175页CPUCPU CPU是单片机的核心部件。它由运算器和控制器等部件组成。1.运算器 运算器的功能是 进行算术运算:加、减、乘、除、加1、减1、比较BCD码
5、十进制调整等逻辑运算:与、或、异或、求反、循环等逻辑操作位操作:内部有布尔处理器,它以进位标志位C为位累加器,用来处理位操作。可对位置“1”、对位清零、位判断等。操作结果的状态信息送至状态寄存器PSW。第14页/共175页运算器组成1.算术逻辑运算单元ALU 用于对数据进行算术和逻辑操作的执行部件,由加法 器和其它逻辑电路(移位电路和判断电路等)组成。2.累加器A 使用最频繁的寄存器,可写为Acc。A的作用:(1)是ALU单元的输入之一,又是运算结果存放单元。(2)数据传送大多都通过累加器A。(3)A的进位标志Cy同时又是位处理机的位累加器。第15页/共175页2.2.程序计数器PCPC 程序
6、计数器PCPC是1616位的寄存器,用来存放即将要执行的指令地址,可对64KB64KB程序存储器直接寻址。3.3.指令寄存器 指令寄存器中存放指令代码。CPUCPU执行指令时,由程序存储器中读取的指令代码送入指令存储器,经指令译码器译码后由定时与控制电路发出相应的控制信号,完成指令功能。第16页/共175页MCS-51的引脚 40脚塑料双列直插封装(PDIP)P1P3P0P2第17页/共175页4444脚脚“J J”型脚的方形封装(型脚的方形封装(PLCCPLCC)第18页/共175页引脚逻辑图8051单片机为40脚双列直插式封装引脚可分为三个部分控制引脚并行I/O口引脚电源及时钟引脚第19页
7、/共175页控制引脚控制引脚 (1)RST/VPD(9脚):复位与备用电源(2)ALE/PROG*(30脚):第一功能ALE:地址锁存允许 第二功能PROG*:编程脉冲输入端。(3)PSEN*(29脚):读外部程序存储器的选通信号。(4)EA*/VPP(31脚):EA*为内外程序存储器选择控制 EA*=1,访问片内程序存储器,EA*=0,单片机则只访问外部程序存储器。第二功能VPP,用于施加编程电压。第20页/共175页8051有4组8位I/O口:P0、P1、P2和P3口,其中 P1、P2和P3为准双向口,P0口则为双向三态输入输出口。MCS-51系列单片机的基本I/O口l双向三态输入输出端口
8、。lP0口身兼两职,既可作为地址总线(AB0-AB7),也可作为数据总线(DB0-DB7)。l作为通用I/O时,是一个漏极开路电路。需外接上拉电阻。l作为地址/数据总线使用时,不需接上拉电阻。lP0可驱动8个LSTTL,其它P口可以驱动4个LSTLL。并行输入和输出端口P0第21页/共175页v注意在P0口作为通用的I/O口时,必须外接上拉电阻(如下图)。12345678P0口VCC第22页/共175页 P1口某位结构并行输入和输出端口P1lP1口为8位准双向输入输出端口。l作为输入口使用时,有两种情况。其一是:首先是读锁存器的内容,进行处理后再写到锁存器中,这种操作即读修改写操作,象JBC(
9、逻辑判断)、CPL(取反)、INC(递增)、DEC(递减)、ANL(与逻辑)和ORL(逻辑或)指令均属于这类操作。其二是:读P1口线状态时,打开三态门G,将外部状态读入CPU。第23页/共175页注意在P1P1口作为通用的I/OI/O口使用时,在从I/OI/O端口读入数据时,应该首先向相应的I/OI/O口内部锁存器写“1 1”。v举例:从P1P1口的低四位输入数据 MOV P1,#00001111b;MOV P1,#00001111b;先给P1P1口底四位写1 1 MOV A,P1 ;MOV A,P1 ;再读P1P1口的底四位第24页/共175页并行输入和输出端口P2lP2口作为通用I/O时,
10、准双向输入输出端口。lP2口作为高8位地址总线,AB8-AB15。lP2口与P0一起构成单片机与外电路相连接的扩展端口。通常可以用来扩展存储器、及与其它总线型连接方式的外设。lP2可以驱动4个标准的TTL负载电路。第25页/共175页利用P0、P2端口扩展SRAM、EPROM存储器8051EAP2P0ALEPSENRD74LS373ROMA15A0PD/PGMA15A0A7A0A7A0RAMRD WRWR第26页/共175页并行输入和输出端口P3lP3口作为通用I/O时,为准双向输入输出端口。lP3口的第二功能。P3.0串行输入口(RXD)P3.1串行输出口(TXD)P3.2外中断0(INT0
11、)P3.3外中断1(INT1)P3.4定时/计数器0的外部输入口(T0)P3.5定时/计数器1的外部输入口(T1)P3.6外部数据存储器写选通(WR)P3.7外部数据存储器读选通(RD)第27页/共175页v注意在P3口的使用时,首先要考虑第二功能的要求。第28页/共175页MCS-51MCS-51单片机P3口的第二功能引脚引脚第二功能第二功能P3.0P3.0RXD(RXD(串行口输入串行口输入)P3.1P3.1TXD(TXD(串行口输出串行口输出)P3.2P3.2INT0(INT0(外部中断外部中断0 0输入输入)P3.3P3.3INT1(INT1(外部中断外部中断1 1输入输入)P3.4P
12、3.4T0(T0(定时器定时器0 0的外部输入的外部输入)P3.5P3.5T1(T1(定时器定时器1 1的外部输入的外部输入)P3.6P3.6WR(WR(片外数据存储器写选通控制输出片外数据存储器写选通控制输出)P3.7P3.7RD(RD(片外数据存储器读选通控制输出片外数据存储器读选通控制输出)第29页/共175页举例1:P1口作为输出口,原本无需接上来电阻,这里是为了增强P1口的驱动能力。ORG0000HSTART:MOVP1,#00HACALLDELAYMOVP1,#0FFHACALLDELAYSJMPSTARTDELAY:MOVR3,#0FFHDEL2:MOVR4,#0FFHDEL1:
13、NOPDJNZR4,DEL1DJNZR3,DEL2RETEND0000000011111111ALEWR RDP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7+5V00000000第30页/共175页1111111111111111PX口输入举例S0S0+5 V+5 V4.7 k4.7 k WWALEWR RDP3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7读端口:MOVP3,#11111111BMOVA,P389C51 寄存器寄存器A A注:注:当当I/OI/O端口作为输入使端口作为输入使用时,需先向端口写入用时,需先向端口写入“1 1”,使内部的,使内部的F
14、ETFET截止,截止,再读入引脚的状态。再读入引脚的状态。你知道你知道P3.4P3.4对应寄存器对应寄存器A A哪一位吗?哪一位吗?P3.41 1 1 1 1 1 1 10 1第31页/共175页程序状态字寄存器程序状态字寄存器PSWPSW (1)Cy(PSW.7)进位标志位(2)Ac(PSW.6)辅助进位标志位(3)F0(PSW.5)标志位 由用户使用的一个状态标志位。(4)RS1、RS0(PSW.4、PSW.3)4组工作寄存器区选择控制位1和位0。第32页/共175页工作寄存器区的选择 181FH3区1 11017H2区1 0080FH1区0 10007H0区0 0R0R7地址寄存器组RS
15、1 RS0第33页/共175页(5)OV(PSW.2)溢出标志位 指示运算是否产生溢出。(6)PSW.1位 保留位,未用(7)P(PSW.0)奇偶标志位 P=1,A中“1”的个数为奇数P=0,A中“1”的个数为偶数第34页/共175页MCS-51MCS-51存储器的结构存储器的结构 存储器空间可划分为5类:1.程序存储器空间 2.内部数据存储器空间 3.特殊功能寄存器 4.位地址空间 5.外部数据寄存器空间 第35页/共175页内部数据存储器(a)外部数据存储器(b)MCS-51单片机存储器空间分配特殊功能寄存器00H1FH20H2FH30H7FH 80HFFH80H88H90H98HA0HA
16、8HB0HB8HD0HE0HF0H特殊功能寄存器中位寻址外部ROM内部ROM(EA=1)外部ROM(EA=0)0000H0000H0FFFH0FFFH1000HFFFFH外 部RAM(I/O口地址)0000HFFFFH程序存储器(c)工作寄存器区位寻址区通用RAM区第36页/共175页程序存储器 l 存放应用程序和表格之类的固定常数。l 分为片内和片外两部分,由EA*引脚上所接电平确定 程序存储器中的0000H地址是系统程序的启动地址 在程序存储器中,以下7个单元具有特殊功能,是留给系统用的。表3-1 5种中断源的中断入口地址外中断0 0003H定时器T0溢出 000BH外中断1 0013H
17、定时器T1溢出 001BH 串行口 0023H 定时器T2溢出(89C52/S52)002BH 第37页/共175页内部数据存储器 共128128个字节,字节地址为00H00H7FH7FH。00H00H1FH1FH:3232个单元,是4 4组通用工作寄存器区 20H20H2FH2FH:1616个单元,可进行128128位的位寻址 30H30H7FH7FH:用户RAMRAM区,只能进行字节寻址,用作数据缓冲区以及堆栈区。第38页/共175页特殊功能寄存器(SFR)CPU对 各 种 功 能部件的控制采用特殊功能寄存器集中控制方式,共21个。有 的 SFR可 进 行位寻址,其字节地址的末位是0H或8
18、H。表3-2 SFR的名称及其分布第39页/共175页SFRSFR中的某些寄存器中的某些寄存器 1堆栈指针SP(Stack Point)指示出堆栈顶部在内部RAM块中的位置 复位后,SP中的内容为07H。(1)保护断点(2)现场保护 2.数据指针DPTR 16位特殊功能寄存器,高位字节寄存器用DPH表示,低位 字节寄存器用DPL表示。3.I/O端口P0P3 专用寄存器P0P3分别为I/O端口P0P3的锁存器。第40页/共175页4.寄存器B 在执行乘法和除法操作中,用B寄存器暂存数据。在不执行乘、除的情况下,可当作一个普通寄存器来使用。5.串行数据缓冲器SBUF 存放欲发送或已接收的数据,一个
19、字节地址物理上是由两个独立的寄存器组成,一个是发送缓冲器,另一个是接收缓冲器。6.定时器/计数器 两个16位定时器/计数器T1和T0,各由两个独立的8位寄存器组成:TH1、TL1、TH0、TL0,只能字节寻址,但不能把T1或T0当作一个16位寄存器来寻址访问。第41页/共175页位地址空间位地址空间 211211个(128128个+83+83个)寻址位。位地址范围为:00H00HFFHFFH。内部RAMRAM的可寻址位128128个(字节地址20H20H2FH)2FH)见表3-33-3。特殊功能寄存器SFRSFR为8383个可寻址位,见表3-43-4。第42页/共175页表3-3 内部的可寻址
20、位及位地址第43页/共175页表3-4 SFR中的位地址分布第44页/共175页 外部数据存储器外部数据存储器 最多可外扩64K字节的RAM或I/O。几点注意:(1)地址的重叠性 程序存储器与数据存储器全部64K字节地址空间重叠(2)程序存储器与数据存储器在使用上是严格区分的(3)位地址空间共有两个区域(4)片外与片内数据存储器由指令来区分(5)片外数据存储区中,RAM与I/O端口统一编址。所有外围I/O端口的地址均占用RAM地址单元,使用与访问外部数据存储器相同的传送指令。第45页/共175页内部数据存储器(a)外部数据存储器(b)MCS-51单片机存储器空间分配特殊功能寄存器00H1FH2
21、0H2FH30H7FH 80HFFH80H88H90H98HA0HA8HB0HB8HD0HE0HF0H特殊功能寄存器中位寻址外部ROM内部ROM(EA=1)外部ROM(EA=0)0000H0000H0FFFH0FFFH1000HFFFFH外 部RAM(I/O口地址)0000HFFFFH程序存储器(c)工作寄存器区位寻址区通用RAM区第46页/共175页时钟电路与时序时钟电路与时序 时钟电路用于产生单片机工作所必需的时钟控制信号。时钟电路 时钟频率直接影响单片机的速度,电路的质量直接影响系统的稳定性。常用的时钟电路有两种方式:内部时钟方式和外部时钟方式。第47页/共175页内部时钟方式内部时钟方
22、式 内部有一个用于构成振荡器的高增益反相放大器,其输入端:XTAL1,输出端:XTAL2。C1和C2典型值通常选择为30pF左右。晶体的振荡频率在1.2MHz12MHz之间。某些高速单片机芯片的时钟频率已达40MHz。第48页/共175页时钟电路与复位电路XTAL1XTAL2GND8XX51C01C02第49页/共175页机器周期、指令周期与指令时序机器周期、指令周期与指令时序一、时钟周期(振荡周期)单片机的基本时间单位。定义为时钟脉冲频率的倒数在一个时钟周期内,中央处理器仅完成一个最基本的动作若时钟的晶体的振荡频率为fosc,则时钟周期Tosc=1/fosc。二、状态周期在系列单片机中把一个
23、时钟周期定义为一个节拍(用表示),两个节拍定义为一个状态周期(用表示)三、机器周期CPU完成一个基本操作所需要的时间。执行一条指令分为几个机器周期。每个机器周期完成一个基本操作。MCS-51单片机每12个时钟周期为一个机器周期第50页/共175页一个机器周期又分为6 6个状态:S1S1S6S6。每个状态又分为两拍:P1P1和P2P2。因此,一个机器周期中的1212个时钟周期表示为:S1P1S1P1、S1P2S1P2、S2P1S2P1、S2P2S2P2、S6P2S6P2。第51页/共175页指令周期指令周期指令周期是执行一条指令所需要的时间一般由若干个机器周期组成执行一条指令时,可分为取指令阶段
24、和指令执行阶段。取指令阶段,PC中地址送到程序存储器,并从中取出需要执行指令的操作码和操作数。指令执行阶段,对指令操作码进行译码,以产生一系列控制信号完成指令的执行。ALE信号是为地址锁存而定义的,以时钟脉冲1/6的频率出现,在一个机器周期中,ALE信号两次有效(注意,在执行访问外部数据存储器的指令MOVX时,将会丢失一个ALE脉冲)第52页/共175页8051X2X1VssTTL外接时钟源Vcc时钟电路需外接晶振的频率1.212MHZ,C1和C2取3010PFX1X2C2C1X8051振荡电路S1S2S3S4S5S6S1S2P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P
25、2 P1 P2 P1 P2fosc一个状态周期一个机器周期T=12*(1/fosc)X2CPU的时序(时钟周期、状态周期、机器周期)第53页/共175页若外接晶振为12MHz时,则单片机的四个周期的具体值为:时钟周期1/12MHz1/12s0.0833s 状态周期1/6s0.167s 机器周期1s 指令周期14s可用于计算指令、程序的执行时间,以及定时器的定时时间 MCS51单片机的CPU取指令和执行指令的时序如下图所示:第54页/共175页第55页/共175页 复位:是单片机初始化操作,其主要功能是把包括PC在内的一些专用寄存器赋予初始数据,使单片机从这些出值开始工作。单片机运行出错或进入死
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 学习
限制150内