乐鑫技术交流
直播中

尚文清

7年用户 1518经验值
私信 关注
[问答]

LPC1768快速重置周期后崩溃了怎么解决?

我最近遇到了 LPC1768 的一个非常奇怪的行为。当我在短时间内(~0.5sek 或什至更长)将重置按钮/电源从高切换到低时,控制器进入没有任何运行的状态,并且在新的重置(更长的持续时间)时,控制器的唯一响应正在发送,是当 ISP 引脚保持低电平并通过复位引脚复位控制器时。为了退出此状态,关闭控制器电源,暂停并再次插入电源。
我们的固件是暂存的,第一个是辅助引导加载程序,第二个是实际固件,交换第二个固件时,不会出现问题。遗憾的是,在这种状态下附加调试器也不起作用,比较两个固件,LPC_SC(系统配置)寄存器是相同的。
出现此问题后,µC 既不在第一阶段运行,也不在第二阶段运行。

                                       
                                
                        
                        
                                
                        
                        
                                
        
                        
                                
                                       
                                                解决了!
                                       
                                        转到解决方案。
                                

                        

               


                        
                        
                        
                        
                        
                        
               

               
               
        

        
        






                        
                                
                                       
                                                

                                       
                                       
                                                斜坡上升电压是正确的。
使用调试器并连接到正在运行的系统,我能够确定问题所在。事实证明,如果控制器在 I2C 通信期间被重置,而从属设备将
数据线拉低并保持低电平,我们的引导加载程序的自动硬件检测无法识别 I2C 总线,这一切都是在 systick 之前完成的已初始化,因此不会触发超时并执行无限循环。
当然,这些事件只会在控制器初始化并且所有参数都从 I2C FRAM 中获取时发生,这就是快速重置会中断通信的原因。
一如既往,这是一个 PICNIC 错误
无论如何,感谢您的帮助!

更多回帖

发帖
×
20
完善资料,
赚取积分