xx单片机讲稿范文.doc_第1页
xx单片机讲稿范文.doc_第2页
xx单片机讲稿范文.doc_第3页
xx单片机讲稿范文.doc_第4页
xx单片机讲稿范文.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

xx单片机讲稿范文 1CPU微处理器,微型计算机的核心通过执行存储器中的程序实现对计算机的全面管理。 微处理器,微型计算机的核心通过执行存储器中的程序实现对计算机的全面管理。 存储器RAM/ROM,存放程序,数据等信息。 I/O接口输入/输出接口,外设通过I/O接口与计算机连接,实现与计算机的数据交换输入/输出接口,外设通过I/O接口与计算机连接,实现与计算机的数据交换系统总线由地址总线,数据总线,控制总线构成。 地址总线选择存储器或端口(MCS51为16位地址线)。 数据总线传送数据(MCS51为八位数据线)控制总线协调各部分配合工作。 外部设备键盘,显示器,软盘,硬盘等。 一微型计算机组成原理2二MCS-51单片机的内部结构注意MCS-51分两个子系列51子系列52子系列3三MCS-51单片机内部资源1.三MCS-51单片机内部资源1.CPU MCS-51内核内部寄存器PC程序计数器(16位)DPTR地址寄存器(16位)SP堆栈指针(8位)PSW标志寄存器(8位)A累加器(8位)B寄存器(8位)R0-R7工作寄存器组(共有四组)42.内部存储器内部程序存储器4K(51子系列),8K(52子系列)。 内部数据存储器128单元(51子系列),256单元(52子系列)。 内部存储器内部程序存储器4K(51子系列),8K(52子系列)。 内部数据存储器128单元(51子系列),256单元(52子系列)。 3.I/O接口并行口四个八位并行I/O口(P0,P1,P2,P3口)。 串行口一个全双工串行口。 定时器两个T0,T1(51子系列);三个T0,T1,T2(52子系列)。 中断管理器一个。 4.外部存储器扩展可扩展外部程序存储器至64K可扩展外部数据存储器至64K(含I/O端口)5ROM EPROMRAM并口串口定时器中断源闪存8031128412580514K128412587514K12841258032256413680528K256413687528K256413689C5225641368KROM EPROMRAM并口串口定时器中断源闪存8031128412580514K128412587514K12841258032256413680528K256413687528K256413689C5225641368KMCS51系列单片机配置一览表注意MCS51系列单片机配置一览表注意目前可选STC单片机(宏晶单片机)6四MCS-51单片机引脚及功能71.引脚功能RST/VPD复位/备份电源输入。 EA/VPP程序程序存储器选择/编程功率源输入。 ALE/PROG地址锁存允许/编程脉冲输入。 PSEN外部程序存储器允许。 XTAL1振荡器的反相放大器输入端。 XTAL2振荡器的反相放大器输出端。 P0.7-P0.0并口;可时分复用,输出低8位地址线A7-A0和构成外部数据线D7-D0。 P0.7-P0.0并口;可时分复用,输出低8位地址线A7-A0和构成外部数据线D7-D0。 P1.7-P1.0并口,用户使用。 P2.7-P2.0并口;可构成外部地址线A15-A8。 P3.7-P3.0并口;具有第二功能(见下表)。 P3.0RXD串行数据接收P3.1TXD串行数据发送P3.2INT0外部中断0请求信号输入P3.3INT1外部中断1请求信号输入P3.4T0定时器/计数器0计数输入P3.5T1定时器/计数器1计数输入P3.6/WR外部RAM写选通P3.7/RD外部RAM读选通P3.0RXD串行数据接收P3.1TXD串行数据发送P3.2INT0外部中断0请求信号输入P3.3INT1外部中断1请求信号输入P3.4T0定时器/计数器0计数输入P3.5T1定时器/计数器1计数输入P3.6/WR外部RAM写选通P3.7/RD外部RAM读选通82.时钟电路3.复位电路+5V+5VMCS-51工作频率12M(11.0592)复位(PC)0000H;(PSW)00H;(SP)07H;P0,P1,P2,P3输出锁存器均为FFH(即为输入)。 MCS-51工作频率12M(11.0592)复位(PC)0000H;(PSW)00H;(SP)07H;P0,P1,P2,P3输出锁存器均为FFH(即为输入)。 9四MCS-51单片机存储器配置101.PSW标志寄存器CY1.PSW标志寄存器CY进位标志AC半进位标志F0用户标志RS1RS0工作寄存器组选择0V溢出标志P奇偶标志(奇标志,奇数个1时,P=1)112.工作寄存器组R0,R1,R2,R3,R4,R5,R6,R72.工作寄存器组R0,R1,R2,R3,R4,R5,R6,R7寄存器0组1组2组3组R000H08H10H18HR101H09H11H19HR202H0AH12H1AHR303H0BH13H1BHR404H0CH14H1CHR505H0DH15H1DHR506H0EH16H1EHR707H0FH17H1FH寄存器0组1组2组3组R000H08H10H18HR101H09H11H19HR202H0AH12H1AHR303H0BH13H1BHR404H0CH14H1CHR505H0DH15H1DHR506H0EH16H1EHR707H0FH17H1FHRS11RS00选择000区011区102区113区选择000区011区102区113区CPU复位启动时RS11RS0=00,选择组。 123.可位寻址的RAM单元单元地址MSB位地址LSB2FH7FH7EH7DH7CH7BH7AH79H78H2EH77H76H75H74H73H72H71H70H2DH6FH6EH6DH6CH6BH6AH69H68H2CH67H66H65H64H63H62H61H60H2BH5FH5EH5DH5CH5BH5AH59H58H2AH57H56H55H54H53H52H51H50H29H4FH4EH4DH4CH4BH4AH49H48H28H47H46H45H44H43H42H41H40H27H3FH3EH3DH3CH3BH3AH39H38H26H37H36H35H34H33H32H31H30H25H2FH2EH2DH2CH2BH2AH29H28H24H27H26H25H24H23H22H21H20H23H1FH1EH1DH1CH1BH1AH19H18H22H17H16H15H14H13H12H11H10H21H0FH0EH0DH0CH0BH0AH09H08H20H07H06H05H04H03H02H01H00H2FH7FH7EH7DH7CH7BH7AH79H78H2EH77H76H75H74H73H72H71H70H2DH6FH6EH6DH6CH6BH6AH69H68H2CH67H66H65H64H63H62H61H60H2BH5FH5EH5DH5CH5BH5AH59H58H2AH57H56H55H54H53H52H51H50H29H4FH4EH4DH4CH4BH4AH49H48H28H47H46H45H44H43H42H41H40H27H3FH3EH3DH3CH3BH3AH39H38H26H37H36H35H34H33H32H31H30H25H2FH2EH2DH2CH2BH2AH29H28H24H27H26H25H24H23H22H21H20H23H1FH1EH1DH1CH1BH1AH19H18H22H17H16H15H14H13H12H11H10H21H0FH0EH0DH0CH0BH0AH09H08H20H07H06H05H04H03H02H01H00H134.特殊功能寄存器寄存器符号地址寄存器名称P080H I/O口0SP81H堆栈指示器DPL82H数据指针低八位DPH83H数据指针高八位PCON87H电源控制及波特率选择寄存器TCON88H定时器控制寄存器TMOD89H定时器方式选择寄存器TL08AH定时器0低8位TL18BH定时器1低8位TH08CH定时器0高8位TH18DH定时器1高8位特殊功能寄存器表14寄存器符号地址寄存器名称P190H I/O口1SCON98H串行口控制寄存器SBUF99H串行口数据缓冲寄存器P2A0H I/O口2IE A8H中断允许控制寄存器P3B0H I/O口3IP B8H中断优先控制寄存器PSW D0H程序状态字ACC E0H累加器B F0H B寄存器特殊功能寄存器表15寄存器符号D7D6D5D4D3D2D1D0字节地址P0878685848382818080HP0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0SP81HDPL82HDPH83HPCON SMODGF1GF0PD IDL87HTCON8F8E8D8C8B8A898888HTF1TR1TF0TR0IE1IT1IE0IT0TMOD GATE C/T M1M0GATEC/T M1M089HTL08AHTL18BHTH08CHTH18DH可位寻址的专用寄存器的每一位的位地址 (1)16寄存器符号D7D6D5D4D3D2D1D0字节地址P1979695949392919090HP1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0SCON9F9E9D9C9B9A999898HSM0SM1SM2REN TB8RB8TI RISBUF99HP2A7A6A5A4A3A2A1A0A0HP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0IE AFAE ADAC ABAA A9A8A8HEA ET2ES ET1EX1ET0EX0P3B7B6B5B4B3B2B1B0B0HP3.7P3.6P3.5P3.4P3.3P3.2P3.1P3.0IP BFBE BDBC BBBA B9B8B8HPS PT1PX1PT0PX0PSW D7D6D5D4D3D2D1D0D0HCY ACF0RS1RS0OV PACCE7E6E5E4E3E2E1E0E0HB F7F6F5F4F3F2F1F0F0H可位寻址的专用寄存器的每一位的位地址( (2)17五.MCS-51寻址方式(源操作数的寻址方式)五.MCS-51寻址方式(源操作数的寻址方式)寄存器寻址源操作数在寄存器中。 寄存器R0R7(Rn,n=07)、A、B、DPTR等寄存器寻址源操作数在寄存器中。 寄存器R0R7(Rn,n=07)、A、B、DPTR等【例】MOV A,R2直接寻址源操作数在某直接字节地址所指定的单元中。 【例】MOV A,20HMOV A,90H;P2口输入数据MOV A,20HMOV A,90H;P2口输入数据立即寻址源操作数是立即数【例】MOV A,#20H寄存器间接寻址源操作数的地址在寄存器中。 Ri i=或DPTRA+PCA+DPTR【例】MOV A,R0寄存器间接寻址源操作数的地址在寄存器中。 Ri i=或DPTRA+PCA+DPTR【例】MOV A,R0位寻址源操作数在某直接位地址所指定的位单元中。 【例】MOV C,3AH;MOV C,PSW.5MOV C,3AH;MOV C,PSW.518六.MCS-51指令系统六.MCS-51指令系统传送类指令(28条)算术运算类指令(24条)逻辑运算指令(25条)位操作指令(17条)控制转移类指令(17条)?机器周期和指令周期振荡周期机器周期和指令周期振荡周期时钟周期状态周期状态周期MCS-51状态周期是时钟周期的两倍。 机器周期一个机器周期包括6个状态(S1S6),CPU完成一个独立的操作。 一个机器周期包括6个状态(S1S6),CPU完成一个独立的操作。 指令周期完成一条指令所需的全部时间(14个机器周期构成)。 19?MCS-51指令的取指/执行时间S1P1P2S2P1P2S3P1P2S4P1P2S5P1P2S6P1P2S1P1P2S2P1P2S3P1P2S4P1P2S5P1P2S6P1P2P1P2P1P2P1P2P1P2P1P2P1P2P1P2S1S2S3S4S5S6a INC AP1P2P1P2P1P2P1P2P1P2P1P2P1P2S1S2S3S4S5S6b ADD A20HP1P2P1P2P1P2P1P2P1P2P1P2S1S2S3S4S5S6P1P2P1P2P1P2P1P2P1P2P1P2S1S2S3S4S5S6P1P2S1c INC DPTRP1P2P1P2P1P2P1P2P1P2P1P2S1S2S3S4S5S6P1P2P1P2P1P2P1P2P1P2P1P2S1S2S3S4S5S6P1P2S1d MOVX201.数据传送指令(28条)指令助记符功能说明字节数振荡周期MOV A,Rn112MOV A,direct212MOV A,Ri112MOV A,#data212MOV Rn,A112MOV Rn,direct224MOV Rn,#data212MOV direct,A212MOV direct,Rn224MOV direct,direct324MOV direct,Ri224MOV direct,#data324MOVRi,A112MOVRi,direct224MOVRi,#data212MOV DPTR,#data16324数据传送指令16条21指令助记符功能说明字节数振荡周期MOVC A,A+DPTR124MOVC A,A+PC124MOVX A,Ri124MOVX A,DPTR124MOVXRi,A124MOVXDPTR,A124PUSH direct224POP direct224XCH A,Rn A的数据和Rn的数据交换112XCH A,direct212XCH A,Ri112XCHD A,Ri A的低四位和Ri的低四位交换112数据传送指令12条1.数据传送指令(28条)222.算术指令(24条)指令助记符功能说明字节数振荡周期ADD A,Rn不带进位加112ADD A,direct212ADD A,Ri112ADDA,#data212ADDC A,Rn带进位加112ADDC A,direct212ADDC A,Ri112ADDC A,#data212SUBB A,Rn带借位减112SUBB A,direct212SUBB A,Ri112SUBB A,#data212INCA112INC Rn112INC direct212INCRi112算术指令16条23指令助记符功能说明字节数振荡周期INC DPTR124DEC A212DEC Rn112DEC direct212DECRi112MUL AB无符号数相乘,积在BA中148DIV ABA/B,商在A中,余数在B中148DA A组合BCD加调整112算术指令8条2.算术指令(24条)注意算术指令8条2.算术指令(24条)注意MOVX A,Ri;未使用高8位地址线INC P0;读修改写指令243.逻辑运算指令(25条)指令助记符功能说明字节数振荡周期ANL A,Rn112ANL A,direct212ANL A,Ri112ANL A,#data212ANL direct,A212ANL direct,#data324ORL A,Rn112ORL A,direct212ORL A,Ri112ORL A,#data212ORL direct,A212ORL direct,#data324逻辑运算指令12条253.逻辑运算指令(25条)指令助记符功能说明字节数振荡周期XRL A,Rn112XRL A,direct212XRL A,Ri112XRL A,#data212XRL direct,A212XRL direct,#data324CLR AA清112CPL AA求反112RL AA不带进位循环左移112RLC AA带进位循环左移112RR AA不带进位循环右移112RRC AA带进位循环右移112SWAP AA高四位与低四位交换112逻辑运算指令13条264.位操作指令(17条)指令助记符功能说明字节数振荡周期CLR C112CLR bit212SETB C112SETB bit212CPL C112CPL bit212ANL C,bit224ANL C,/bit224ORL C,bit224ORL C,/bit224MOV C,bit224MOV bit,C224位操作指令12条274.位操作指令(17条)指令助记符功能说明字节数振荡周期JC rel224JNC rel224JB bit,rel324JNB bit,rel324JBC bit,rel如(bit)=1,则转移且使(bit)=0324位操作指令5条285.控制转移指令(17条)指令助记符功能说明字节数振荡周期ACALL addr11短调用224LCALL addr16长调用324RET子程序返回124RETI中断返回124AJMP addr11短转移224LJMP addr16长转移224SJMP rel相对转移224JMPA+DPTR间接转移124控制转移指令8条AJMP addr11指令为二字节(操作码5位,操作数11位)控制转移指令8条AJMP addr11指令为二字节(操作码5位,操作数11位)29指令助记符功能说明字节数振荡周期JZ rel若(A)则转移(51无Z标志)224JNZ rel若(A)则转移224CJNE A,direct,rel324CJNE A,#data,rel324CJNERi,#data,rel324CJNE Rn,#data,rel324DJNZ Rn,rel224DJNZ direct,rel324NOP1125.控制转移指令(17条)控制转移指令9条30七.汇编语言程序设计1.伪指令七.汇编语言程序设计1.伪指令ORG程序定位】【例】ORG1000HEQU赋值】【例】TT EQU1234H;常量后没有冒号!DB定义字节】【例】TBL DB34HDW定义字】【例】TBL1DW1234H,TT312.程序设计2.程序设计外部数据存储器50单元清(子程序)CLEAR CLRA;清累加器AMOV DPTR,#8000H;DPTR指向外部数据RAMMOV R7,#50;数据区长度CLE00MOVXDPTR,A;数据单元清INC DPTR;修改地址DJNZ R7,CLE00;长度减一,不为0转CLE00单元清(子程序)CLEAR CLRA;清累加器AMOV DPTR,#8000H;DPTR指向外部数据RAMMOV R7,#50;数据区长度CLE00MOVXDPTR,A;数据单元清INCDPTR;修改地址DJNZ R7,CLE00;长度减一,不为0转CLE00RET;如加RET即构成字程序子程序的调用LCALL CLEARLCALL CLEAR32延迟子程序DEL1MS MOV R6,#02H;延迟1MS/12MDEL02MOV R7,#230DEL01DJNZ R7,DEL01DJNZ R6,DEL02RET延迟子程序DEL1MS MOVR6,#02H;延迟1MS/12MDEL02MOVR7,#230DEL01DJNZ R7,DEL01DJNZ R6,DEL02RET33复位启动程序ORG0000HAJMP START;复位启动后转主程序MON00ORG0003H;INT0中断入口地址LJMP INT00ORG0023H;SIO中断入口地址LJMP SIO00START:MOV SP,#7FH;堆栈设置区8HMOV R0,#20H;(20H-7FH)=00H MOVR7,#60HCLR00:MOVR0,#00HINC R0DJNZ R7,CLR00MON00:ACALL DE03SMON01:ACALL DEL2MSMON03:ACALL JSM00;调键扫描子程序JNC MON01;无键按下转MON01ACALL JSM10;调用键处理子程序(键值在A中)AJMP MON00复位启动程序ORG0000HAJMP START;复位启动后转主程序MON00ORG0003H;INT0中断入口地址LJMP INT00ORG0023H;SIO中断入口地址LJMP SIO00START:MOV SP,#7FH;堆栈设置区8HMOV R0,#20H;(20H-7FH)=00H MOVR7,#60HCLR00:MOVR0,#00HINC R0DJNZ R7,CLR00MON00:ACALL DE03SMON01:ACALL DEL2MSMON03:ACALL JSM00;调键扫描子程序JNC MON01;无键按下转MON01ACALL JSM10;调用键处理子程序(键值在A中)AJMP MON0034八.并行输入输出接口P1口八.并行输入输出接口P1口为用户输入/输出口,漏极输出,上拉电阻为200K左右。 作为输入使用时,务必使Q1,场效应管截止;作为输出使用时,高电平输出负载能力有限。 为用户输入/输出口,漏极输出,上拉电阻为200K左右。 作为输入使用时,务必使Q1,场效应管截止;作为输出使用时,高电平输出负载能力有限。 MOV A,P1;引脚输入INC P1;读修改写指令P0口MOV A,P1;引脚输入INC P1;读修改写指令P0口可时分复用,输出低8位地址线A7-A0和构成外部数据线D7-D0。 作为输出口使用时为OC输出,可在外部加上拉电阻。 可时分复用,输出低8位地址线A7-A0和构成外部数据线D7-D0。 作为输出口使用时为OC输出,可在外部加上拉电阻。 35P2口可构成外部地址线A15-A8。 P3口具有第二功能。 36九.MCS-51系统总线构成37十.MCS-51系统外部程序存储器扩展38十一.MCS-51系统外部数据存储器扩展39十二.MCS-51系统外部I/O口的扩展 (1)CG1BA/G2A/G2B

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论