在线情况
楼主
  • 头像
  • 级别
    • 积分22
    • 经验1056
    • 文章57
    • 注册2006-08-09
    讨论上电复位POR与上电清除PUC的区别
    我查过其他论坛的帖子,介绍如下:
    POR是上电复位信号,它只在以下两个事件发生时产生:
    1、芯片上电。
    2、RST/NMI设置成复位模式,在RST/NMI引脚上出现低电平信号。
    PUC信号是上电清除信号,POR信号的产生总会产生PUC信号,但PUC信号的发生不会产生POR信号。产生它的事件为:
    1、发生POR信号。
    2、处于看门狗模式下,看门狗定时时间到。
    3、看门狗定时器写入错误的安全键值。
    4、RST/NMI设置成NMI模式,在RST/NMI引脚上出现低电平信号,
    5、FLASH存储器写入错误的安全键值。
    当因为POR或PUC信号引起设备复位后,系统的初始状态如下:
    1、I/O引脚切换成输入模式
    2、I/O标志位清除。
    3、其它外围模块及寄存器实现初始化,
    4、状态寄存器复位。
    5、PC装入0FFFE处的地址值,CPU从这一地址开始执行。
    [ 此贴最后由DC在2008-10-9 23:52:30编辑过 ]
    很简单
    在线情况
    2
    • 头像
    • 级别
      • 积分22
      • 经验1056
      • 文章57
      • 注册2006-08-09
      但我还是不明白POR和PUC产生后引起的设备变化有什么不同!
      我在看TIMER_A的时候,书上说“POR信号后后TACTL的所有位都自动复位,但在PUC信号后不受影响”,我想知道POR同PUC在实质上有什么不同!
      很简单
      在线情况
      3
      • 头像
      • 级别
      • 门派
      • 职务总版主
      • 声望+9
      • 财富5
      • 积分3065
      • 经验390701
      • 文章6744
      • 注册2006-03-07
      你这个问题确实问得有意思,也许有部分读者也没搞清是什么回事。这是一个不错的讨论话题。讨论前我们看看这附图:

      [IMGA]http://www.microcontrol.cn/430images/msp430-reset.gif[/IMGA]

      MSP430单片机复位电路可以生产输出两个复位信号,分别是POR和PUC。而这个信号所生的条件和作用都有所不同的。正如上贴所述。
      从图中生产和条件可知,POR生产主要由两个条件产生的:
       1-芯片上电。
       2-NMI引脚低电平生产。
       看来这都是[COLOR=blue]外部[/COLOR]产生的条件。
      而PUC主要由:
       1-内部看门犬
       2-内部POR生产
       3-内FLASH写入错误
       4-NMI产生低电平
       看来这些生产PUC的条件大部分是由[COLOR=blue]内部[/COLOR]信号产生的。
       
       总的来说,POR与PUC这两个信号的产生将会导至内部部分寄存器不同的复位情况。[em07]

       欢迎各位发表不同的意见。[em13]
      [COLOR=#0000ff]欢迎发贴分享设计心得、开源DIY...[/COLOR]
      在线情况
      4
      • 头像
      • 级别
        • 积分22
        • 经验1056
        • 文章57
        • 注册2006-08-09
        刚在网上查到的:
        POR和PUC两者的关系:POR信号的产生会导致“系统复位”并“产生PUC信号”。而PUC信号不会引起POR信号的产生。
            无论是POR信号还是PUC信号触发的复位,都会使MSP430从地址0xFFFE处读取复位中断向量,程序从中断向量所指的地址处开始执行。触发PUC信号的条件中,除了POR产生触发PUC信号外,其他的豆科一通过读取相应的中断向量来判断是何种原因引起的PUC信号,以便作出相应的处理。
            系统复位(指POR)后的状态为:(1)RST/NMI管脚功能被设置为复位功能;(2)所有I/O管脚被设置为输入;(3)外围模块被初始化,其寄存器值为相关手册上的默认值;(4)状态寄存器SR复位;(5)看门狗激活,进入工作模式;(6)程序计数器PC载入0xFFFE处的地址,微处理器从此地址开始执行程序。
            典型的复位电路有一下3种:
        (1)  在RST/NMI管脚上接100K欧的上拉电阻。
        (2)在(1)的基础上再接0.1uf的电容,电容的一端接地,可以使复位更加可靠。
        (3)在(2)的基础上,再在电阻上并接一个型号为IN4008的二极管,可以可靠的实现系统断电后立即上电。
        很简单
        在线情况
        5
        • 头像
        • 级别
        • 门派
        • 职务总版主
        • 声望+9
        • 财富5
        • 积分3065
        • 经验390701
        • 文章6744
        • 注册2006-03-07
        嗯,看来我们这个贴子还是真的比较有价值呀!这次贴子加“精”还是正确的。
        [COLOR=#0000ff]欢迎发贴分享设计心得、开源DIY...[/COLOR]
        在线情况
        6
        • 头像
        • 级别
          • 积分10
          • 经验2077
          • 文章22
          • 注册2006-09-22
          我想问一下:一般的编程的时候是不是都需要考虑设置时钟,定时器,I/O口,FLASH等一些外围模块,谢谢!
          微控网感谢您的参与
          在线情况
          7
          • 头像
          • 级别
            • 积分1
            • 经验100
            • 文章1
            • 注册2007-06-07
            PUC复位后那些寄存器会不变呢?
            微控网感谢您的参与
            在线情况
            8
            • 头像
            • 级别
              • 积分31
              • 经验13407
              • 文章152
              • 注册2006-12-15
              非常有价值!!收藏
              微控网感谢您的参与
              在线情况
              9
              • 头像
              • 级别
                • 积分16
                • 经验1095
                • 文章43
                • 注册2007-03-14
                顶,很经典
                严肃点,打劫!
                Powered by LeadBBS 9.2 .
                Page created in 0.2676 seconds with 8 queries.