济大单片机实验指导书

上传人:鲁** 文档编号:507795938 上传时间:2022-12-23 格式:DOC 页数:39 大小:1,002.01KB
返回 下载 相关 举报
济大单片机实验指导书_第1页
第1页 / 共39页
济大单片机实验指导书_第2页
第2页 / 共39页
济大单片机实验指导书_第3页
第3页 / 共39页
济大单片机实验指导书_第4页
第4页 / 共39页
济大单片机实验指导书_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《济大单片机实验指导书》由会员分享,可在线阅读,更多相关《济大单片机实验指导书(39页珍藏版)》请在金锄头文库上搜索。

1、单片机实验指导书电子信息与通信工程系2014-3-6第一部分 单片机功能及结构介绍MCS-51单片机内部结构 MCS-51的引脚说明:MCS-51系列单片机AT89SXX的引脚配置图如下:Pin19:时钟XTAL1脚,片内振荡电路的输入端。Pin18:时钟XTAL2脚,片内振荡电路的输出端。AT89SXX的时钟有两种方式,一种是片内时钟振荡方式,但需在18和19脚外接石英晶体(0-33MHz)和振荡电容,振荡电容的值一般取10p-30p。另外一种是外部时钟方式,即将XTAL1接地,外部时钟信号从XTAL2脚输入。Pin9:RESET/Vpd复位信号复用脚。8051的初始态如下表:特殊功能寄存器

2、初始态特殊功能寄存器初始态ACC00HB00HPSW00HSP07HDPH00HTH000HDPL00HTL000HIPxxx00000BTH100HIE0xx00000BTL100HTMOD00HTCON00HSCONxxxxxxxxBSBUF00HP0-P31111111BPCON0xxxxxxxB8051的复位方式可以是自动复位,也可以是手动复位,见下图。此外,RESET/Vpd还是一复用脚,Vcc掉电期间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。Pin30:ALE/当访问外部程序器时,ALE(地址锁存)的输出用于锁存地址的低位字节。而访问内部程序存储器时,ALE端将有一

3、个1/6时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。Pin29:当访问外部程序存储器时,此脚输出负脉冲选通信号,PC的16位地址数据将出现在P0和P2口上,外部程序存储器则把指令数据放到P0口上,由CPU读入并执行。Pin31:EA/Vpp程序存储器的内外部选通线,当EA为高电平并且程序地址小于4kB时,读取内部程序存储器指令数据,而超过4kB地址则读取外部指令数据。如EA为低电平,则不管地址大小,一律读取外部程序存储器指令。 MCS-51单片机的指令时序MCS-51的时序单位有四个:节拍、状态、机器周期和指令周期。1个节拍(P)=1个振荡脉冲周期1个

4、状态(S)=2个节拍=2个振荡脉冲周期1个机器周期(T)=6个状态=12个振荡脉冲周期1个指令周期=几个周期周期MCS-51单片机存储器结构程序存储器MCS-51具有64kB程序存储器寻址空间,对于内部有ROM的AT89SXX等单片机,正常运行时,则需接高电平,使CPU先从内部的程序存储中读取程序,当PC值超过内部ROM的容量时,才会转向外部的程序存储器读取程序。0000H0002H单元,系统复位后,PC为0000H,单片机从0000H单元开始执行程序,如果程序不是从0000H单元开始,则应在这三个单元中放一条无条件转移指令,让CPU直接去执行用户指定的程序。 0003H002AH,这40个单

5、元各有用途,它们被均匀地分为五段,它们的定义如下: 0003H000AH外部中断0中断地址区。000BH0012H定时/计数器0中断地址区。0013H001AH外部中断1中断地址区。001BH0022H定时/计数器1中断地址区。0023H002AH串行中断地址区。数据存储器MCS-51单片机的数据存储器在物理上和逻辑上都分为两个地址空间,一个是内部数据存储区和一个外部数据存储区。MCS-51内部RAM有128或256个字节的用户数据存储(不同的型号有分别)。MCS-51的数据存储器均可读写,部分单元还可以位寻址。8051内部RAM共有256个单元,这256个单元分为两部分。其一是地址从00H7

6、FH单元(共128个字节)为用户数据RAM。从80HFFH地址单元(也是128个字节)为特殊寄存器(SFR)单元。从图1中可清楚地看出它们的结构分布。 在00H1FH共32个单元中被均匀地分为四块,每块包含八个8位寄存器,均以R0R7来命名,称为通用寄存器。由程序状态字寄存器(PSW)来管理它们,CPU只要定义PSW的第3和第4位(RS0和RS1),即可选中这四组通用寄存器。对应的编码关系如图2所示。单元地址MSB位地址LSB2FH7FH7EH7DH7CH7BH7AH79H78H2EH77H76H75H74H73H72H71H70H2DH6FH6EH6DH6CH6BH6AH69H68H2CH6

7、7H66H65H64H63H62H61H60H2BH5FH5EH5DH5CH5BH5AH59H58H2AH57H56H55H54H53H52H51H50H29H4FH4EH4DH4CH4BH4AH49H48H28H47H46H45H44H43H42H41H40H27H3FH3EH3DH3CH3BH3AH39H38H26H37H36H35H34H33H32H31H30H25H2FH2EH2DH2CH2BH2AH29H28H24H27H26H25H24H23H22H21H20H23H1FH1EH1DH1CH1BH1AH19H18H22H17H16H15H14H13H12H11H10H21H0FH0

8、EH0DH0CH0BH0AH09H08H20H07H06H05H04H03H02H01H00HMCS-51单片机存储器结构特殊功能寄存器MCS-51有21个特殊功能寄存器,它们被离散地分布在内部RAM的80HFFH地址中,用户不能修改其结构。表2是特殊功能寄存器分布一览表。标识符号地址寄存器名称ACC0E0H累加器B0F0HB寄存器PSW0D0H程序状态字SP81H堆栈指针DPTR82H、83H数据指针(16位)含DPL和DPHIE0A8H中断允许控制寄存器IP0B8H中断优先控制寄存器P080HI/O口0寄存器P190HI/O口1寄存器P20A0HI/O口2寄存器P30B0HI/O口3寄存器

9、PCON87H电源控制及波特率选择寄存器SCON98H串行口控制寄存器SBUF99H串行数据缓冲寄存器TCON88H定时控制寄存器TMOD89H定时器方式选择寄存器TL08AH定时器0低8位TH08CH定时器0高8位TL18BH定时器1低8位TH18DH定时器1高8位程序计数器PC(program Counter)PC是一个16位的计数器,用于存放一条要执行的指令地址,寻址范围为64kB,PC有自动加1功能,即完成了一条指令的执行后,其内容自动加1。PC本身并没有地址,因而不可寻址,用户无法对它进行读写,但是可以通过转移、调用、返回等指令改变其内容,以控制程序按我们的要求去执行。累加器ACC(

10、Accumulator)累加器A是一个最常用的专用寄存器,大部分单操作指令的一个操作数取自累加器,很多双操作数指令中的一个操作数也取自累加器。加、减、乘、除法运算的指令,运算结果都存放于累加器A或AB累加器对中。寄存器B在乘除法指令中,乘法指令中的两个操作数分别取自累加器A和寄存器B,其结果存放于AB寄存器对中。除法指令中,被除数取自累加器A,除数取自寄存器B,结果商存放于累加器A,余数存放于寄存器B中。程序状态字(Program Status Word)程序状态字是一个8位寄存器,用于存放程序运行的状态信息,这个寄存器的一些位可由软件设置,有些位则由硬件运行时自动设置的。寄存器的各位定义如下

11、,其中PSW.1是保留位,未使用。下表是它的功能说明,并对各个位的定义介绍如下:程序状态字位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位标志CYACF0RS1RS0OV-PPSW.7(CY)进位标志位,此位有两个功能:一是存放执行某写算数运算时,存放进位标志,可被硬件或软件置位或清零。二是在位操作中作累加位使用。PSW.6(AC)辅助进位标志位,当进行加、减运算时当有低4位向高4位进位或借位时,AC置位,否则被清零。AC辅助进位位也常用于十进制调整。PSW.5(F0)用户标志位,供用户设置的标志位。PSW.4、PSW.3(RS1和 RS0)寄存器组选择位

12、。可参见本章的图2定义。PSW.2(OV)溢出标志。带符号加减运算中,超出了累加器A所能表示的符号数有效范围(-128+127)时,即产生溢出,OV=1。表明运算运算结果错误。如果OV=0,表明运算结果正确。PSW.0(P)奇偶校验位。声明累加器A的奇偶性,每个指令周期都由硬件来置位或清零,若值为1的位数奇数,则P置位,否则清零。数据指针(DPTR)数据指针为16位寄存器,编程时,既可以按16位寄存器来使用,也可以按两个8位寄存器来使用,即高位字节寄存器DPH和低位字节DPL。堆栈指针SP(Stack Pointer)堆栈是一种数据结构,它是一个8位寄存器,它指示堆栈顶部在内部RAM中的位置。

13、系统复位后,SP的初始值为07H,使得堆栈实际上是从08H开始的。I/O口专用寄存器(P0、P1、P2、P3)I/O口寄存器P0、P1、P2和P3分别是MCS-51单片机的四组I/O口锁存器。数据传送都统一使用MOV指令来进行,这样的好处在于,四组I/O口还可以当作寄存器直接寻址方式参与其他操作。定时/计数器(TL0、TH0、TL1和TH1)MCS-51单片机中有两个16位的定时/计数器T0和T1,它们由四个8位寄存器组成的,两个16位定时/计数器却是完全独立的。我们可以单独对这四个寄存器进行寻址,但不能把T0和T1当作16位寄存来使用。定时/计数器方式选择寄存器(TMOD)TMOD寄存器是一个专用寄存器,用于控制两个定时计数器的工作方式。串行数据缓冲器(SBUF)串行数据缓冲器SBUF用来存放需发送和接收的数据,它由两个独立的寄存器组成,一个是发送缓冲器,另一个是

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 模板/表格 > 财务表格

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号