MSP430系列超低功耗单片机原理与系统设计 教学课件 作者 李智奇 1 3 第3章.pptVIP

MSP430系列超低功耗单片机原理与系统设计 教学课件 作者 李智奇 1 3 第3章.ppt

  1. 1、本文档共47页,可阅读全部内容。
  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文档。上传文档
查看更多
第3章 MSP430系列单片机结构 3.1 MSP430系统复位与中断的结构   1. 系统复位的产生   POR是设备复位信号,它只在下面3种情况时产生,即:   ? 芯片上电。   ? /NMI设置成复位模式,在 /NMI引脚上出现低电平信号。   ? 在PORON=1,SVS为低的条件下(对个别有供电电压管理模块的器件有效),POR信号的发生总是会产生PUC信号,但是PUC信号的发生不会产生POR信号。下面几种情况会触发PUC:   (1) 发生POR信号。   (2) 处于看门狗模式下,看门狗定时器时间到。   (3) 在看门狗模式下,看门狗定时器溢出。   (4) FLASH存储器写入错误的安全键值。   (5) 看门狗定时控制器写入错误安全键值。   POR信号与PUC信号。若POR信号有效,则必然产生一个系统复位中断,PUC信号的产生并不一定产生系统复位中断。当PUC信号有效时,系统可能发生复位中断,也可能不发生复位中断,而产生一个较低优先级的中断,这取决于引起PUC的事件。每一型号的技术手册中都详细说明了产生中断的原因,这些产生中断的因素是恰当的处理全部中断请求时所要考虑的。   如果VCC的加载上升时间较慢(如图3-2所示),则POR检测电路保持POR信号有效,直到VCC上升超过POR电平。这样,同样也保证了正确的初始化。如果供电VCC加载的是快速上升时间,则POR信号会提供足够长的延时时间,以保证各部分的电路在上电后的正确初始化。当RST/NMI设置成复位模式时,在RST/NMI引脚上出现低电平信号。   3.1.2 MSP430的中断系统结构   MSP430有3类中断:   ? 系统复位。   ? 可屏蔽中断(maskable)。   ? 非屏蔽中断(non-maskable)。   引起可屏蔽中断的来源有:   ? 当看门狗定时器选定时器模式,发生定时器溢出。   ? 其它具有中断能力的模式发生中断事件。   (非)屏蔽中断是无法屏蔽的,即无中断允许控制位,通用中断允许位(GIE)也不会对它产生影响。  图3-4 中断优先级结构   3. 振荡器失效控制   振荡器失效信号对可能由晶振引起的错误发出警告。当LFXT1振荡器设置成高速模式但未起振、振荡器工作停止或者将振荡器关闭时,都会触发振荡器失效信号。对于有XT2振荡器的型号,也会因同样的条件引起振荡器失效。一次PUC 信号会触发一次振荡器失效,因为PUC信号会将LFXT1切换到低速模式,即关闭了高速模式。同样,PUC信号也会将XT2振荡器关闭。   用SFR中的OFIE位允许振荡器失效信号产生NMI。可以在NMI的中断服务程序中通过对SFR中的OFIFG位的测试来判断NMI是否由时钟实效引起。 3.2 MSP430系列单片机的结构特点 表3-1 MSP430 CPU中的16个寄存器 续表 3.2.1 程序计数器PC   程序计数器PC是CPU中最基本的寄存器,它的宽度决定了程序存储器可以直接寻址的范围。在MSP430中,程序存储器PC是16位的计数器,最多可以直接寻址64 KB存储空间。PC中存放的是将要执行的下一条指令的地址。指令根据其操作数的多少,其长度分别为1、2或3字长。 PC内容总是偶数,指向偶地址。程序计数器PC可以像其它寄存器一样用所有指令和所有的寻址方式访问,但对程序存储器的访问必须以字为单位,否则会清除高位字节。PC变化的轨迹决定程序的流程,一般情况下,程序计数器PC自动增2,只有执行条件或无条件转移指令、调用指令或响应中断时,程序计数器PC才被置入新的数值,程序的流程发生变化。 3.2.2 堆栈指针SP   MSP430的堆栈遵循的是先进后出的原则,可以在中断处理、子程序调用或者函数调用过程中保存程序的指针、参数寄存器等。   在系统调用子程序或响应中断时,系统堆栈用来保护当前指令地址程序计数器PC中的内容,即断点地址。程序断点16位地址会自动压入堆栈,由于系统堆栈指针SP总是对准偶地址的,因此,在中断服务中以字访问堆栈。堆栈采用先减后加的方案,当数据入栈时,总是先将堆栈指针SP值减2,然后再将数据送到SP所指的RAM单元。   在中断服务程序或子程序结束时,执行中断返回或子程序返回指令,原断点地址会自动从堆栈中弹出送回到程序计数器PC中,使程序从原断点处继续顺序执行下去。堆栈中每弹出一个数据,SP会自动加2。用户也可以使用PUSH和POP指令操作SP,但必须考虑CPU也在使用SP。   堆栈的大小受可用RAM的限制,程序中每个使用堆栈的部分必须保证只有相关的信息保存在堆栈中,而所有无关的数据需要整理清除,否则,堆栈可能发生上溢或下溢。堆栈指针的任何定位错误,

您可能关注的文档

文档评论(0)

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

1亿VIP精品文档

相关文档