标签 MCU 下的文章

如何实现MCU更可靠的系统启动

介绍稳定可靠的启动是嵌入式系统设计的一个重要方面。本文档介绍了如何通过使用MCU的看门狗定时器、芯片内部的异常处理机制来实现更可靠的系统启动。MCU的启动过程MCU的启动过程是指MCU上电后,系统从复位状态到进入用户应用程序的过程。这个过程通常包括以下几个步骤:上电复位:MCU上电后,首先会进入复位状态,所有的寄存器和外设都被初始化为默认值。SRAM ECC初始化:在复位状态下,MCU会对S...

继续阅读 »

HardFault调试

本篇应用笔记主要描述Cortex-M系列MCU Hard Fault中断的调试方法。笔记中会分析Hard Fault中断产生的原因以及如何依据Hard Fault中断信息定位软件中的问题。Hard Fault简介Hard Fault 是Cortex-M系列MCU中最为常见的一种故障类中断,Hard Fault属于不可屏蔽中断,并且中断优先级固定为-1,在软件运行过程中如果产生了CPU无法正常...

继续阅读 »

CMU模块介绍

CMU模块CMU模块全称是Clock Monitor Unit,也就是一个时钟监测模块,可以用于实时检测系统的各种时钟工作状态是否正常。我们知道时钟是数字系统的基础,在MCU中时钟工作状态直接关系到整个系统的稳定性,如果系统时钟停止工作,那么整个MCU将不能执行程序,这样就无法实现预期的功能。因此,在设计MCU系统时,时钟的可靠性和稳定性是非常重要的因素,而在传统设计中只能通过WDG来进行时...

继续阅读 »

提高调试效率:从断点的使用开始

断点(break point)是嵌入式调试中最基础的功能,它的基本功能非常简单:在程序运行的某个地方提前设置一个停止操作,CPU运行到该位置之后就会自动暂停,这个时候我们就可以查看CPU各种寄存器的工作状态。根据断点机制不同,断点一般分为如下几种:硬件断点:这个需要CPU/MCU支持,可以直接在CPU内部寄存器写入期望断点的PC位置,硬件断点的数量一般是有限的,当调试器退出或者MCU重新上电...

继续阅读 »

HardFault调试

本篇应用笔记主要描述Cortex-M系列MCU Hard Fault中断的调试方法。笔记中会分析Hard Fault中断产生的原因以及如何依据Hard Fault中断信息定位软件中的问题。Hard Fault简介Hard Fault 是Cortex-M系列MCU中最为常见的一种故障类中断,Hard Fault属于不可屏蔽中断,并且中断优先级固定为-1,在软件运行过程中如果产生了CPU无法正常...

继续阅读 »