单片机原理与应用李林功著第02章硬件基础2要点详解.pptVIP

单片机原理与应用李林功著第02章硬件基础2要点详解.ppt

  1. 1、本文档共29页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
程序存储器 程序存储器中的特殊地址 片内RAM 工作寄存器区: 字节地址:00H~1FH 位寻址区: 字节地址:20H~2FH 位地址为:00H~7FH 数据缓冲区/堆栈区: 字节地址:00H~7FH 一般使用30H~7FH 特殊功能寄存器SFR 占用字节地址:80H~FFH 位寻址寄存器: 其字节地址可被8整除 专用寄存器: PC、A、B、PSW、DPTR、SP I/O接口寄存器: P0、P1、P2、P3、SBUF 控制寄存器: TMOD、TCON、SCON … 1)程序计数器PC(Program Counter) 程序计数器PC是一个16位计数器,用来存放下一条要执行的指令地址。 单片机启动、复位,PC=0000H。 每取出一个指令字节,PC的内容就自动加1。 当程序遇到转移指令、子程序调用指令、中断时,PC按转移地址转到指定的地方。 2)累加器A 累加器ACC(简称累加器A)为8位寄存器,是算术运算和数据传送中使用频率最高的存储单元。常用于存放被操作数和中间结果。 3)寄存器B B寄存器主要用在乘除运算中。在乘法中,用于存放乘数、积的高8位,而在除法中,用于存放除数、余数。也可作为通用寄存器使用。 4)程序状态字PSW 程序状态字PSW是一个8位的标志寄存器,它保存指令执行结果的特征信息,以供程序查询和判别。它的格式及各位的意义如下: 进位标志位CY(PSW.7):最高位有进位(加法时)或有借位(减法时),则CY=1,否则CY=0,可由软件置位或清零。 辅助进位(或称半进位)标志位AC(PSW.6): 当两个8位数运算时,若D3位向D4位有进位(或借位)时,AC=1,否则AC=0。在BCD码运算时,要用该标志进行十进制调整。 用户自定义标志位F0(PSW.5):用户可根据自己的需要对F0赋予一定的含义,通过软件置位或清零,并根据F0=1或0来决定程序的执行方式,或反映系统某一种工作状态。 工作寄存器组选择位RS1、RS0(PSW.4、PSW.3):可用软件置位或清零,用于选定当前使用的4个工作寄存器组中的某一组。 溢出标志位OV(PSW.2):做加减法时OV= C7⊕C6。由硬件自动形成。OV=1反映运算结果超出了累加器可以表示的数值范围。 乘法:积255时OV =1,否则OV =0。 除法:B中除数为0,OV=1,否则 OV=0。 奇偶标志位P(PSW.0):若累加器A中1的个数为奇数,则P=1,否则P=0。该标志对串行通信的数据传输非常有用,通过奇偶校验可检验传输的正确性。 5)数据地址指针DPTR: 数据指针DPTR是一个16 位的专用寄存器, 其高位字节寄存器用DPH表示、低位字节寄存器用DPL表示。它既可作为一个16 位寄存器DPTR来用, 也可作为两个独立的8位寄存器DPH和DPL来用。DPTR 主要用来存放16位地址,可通过它访问64KB外部数据存储器或外部程序存储器空间。 6)堆栈指针SP(Stack Pointer): 堆栈是指用户在单片机内部RAM中开辟的、遵循“先进后出”原则的一个存储区。 堆栈操作时,用SP来间接指示堆栈中数据存取的位置,常称SP为堆栈指针。 MCS-51的堆栈是向上生成的,堆栈指针SP的初始值称为栈底。在堆栈操作过程中,SP始终指向堆栈的栈顶有效单元。 入栈操作(PUSH)时首先将SP的内容自动增1,将SP间接指示的栈区片内RAM存储单元地址向上调整一次,再把数据压入由SP最新指示的片内RAM单元中; 出栈操作(POP)时,首先将当前栈顶的内容弹出到相应位置,然后把SP的内容自动减1。 2.6 时钟电路及CPU时序 时序定时单位: 定时单位按一个振荡周期为1个最小单位,即P1节拍和P2节拍,2个节拍组成一个状态周期S;6个状态周期S1-S6组成1个机器周期。即: 1个机器周期=6个状态周期=12个振荡周期=2个地址锁存周期。 1个状态周期由P1、P2节拍组成。 也就是说振荡周期的12分频是机器周期、6分频为地址锁存ALE周期、 2分频为状态周期S。 例:若单片机的振荡频率为12MHZ,则振荡周期为1/12微秒,1个机器周期为1微秒。 若单片机的振荡频率为6MHZ,则振荡周期为1/6微秒,1个机器周期为2微秒。 指令时序: 单片机严格安照时序执行每一条指令。CPU读取一条指令后,根据该指令需要几个机器周期才能完成,该条指令编译后产生的机器代码是1个字节还是2个字节,分成不同的指令形式,有: 单字节单周期指令;

文档评论(0)

挺进公司 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档