LPC178x/7x微控制器引导过程详解

需积分: 32 101 下载量 135 浏览量 更新于2024-08-06 收藏 20.23MB PDF 举报
"LPC1788 用户手册 - 引导过程流程图介绍" 本文主要探讨了LPC1788系列微控制器的引导过程流程,这是一个关键的环节,对于理解和调试MCU的启动行为至关重要。LPC1788是一款基于ARMCortex-M3内核的32位微控制器,具有丰富的外设接口如USB、以太网、LCD、CAN、I2C和I2S等,常用于各种嵌入式系统设计。 在"引导过程流程图"中,我们可以看到以下步骤: 1. 复位:系统启动时首先进行复位操作,这可能是由硬件复位或软件复位触发的,复位确保系统从一个已知状态开始。 2. 初始化:复位后,微控制器开始执行初始化序列,包括设置寄存器、配置时钟和其他基本系统设置。 3. 检查CRP(Code Read Protect):LPC1788支持代码保护功能,通过CRP1、CRP2和CRP3设置不同级别的保护。在初始化阶段,系统会检查这些设置,决定是否允许读取和修改用户代码。 4. 使能调试:如果CRP设置允许,系统会检查是否启用调试功能。这可能包括JTAG或SWD(Serial Wire Debug)接口,以便于开发和调试。 5. 看门狗标志检查:系统会检查看门狗定时器的状态,如果看门狗标志被置位,则可能表示先前的运行中发生了错误,导致系统重置。 6. CRP3检查:进一步的代码保护检查,如果CRP3设置为启用,可能会影响ISP(In-System Programming)模式的访问。 7. 用户代码有效性检查:如果前面的检查都通过,系统会验证用户代码的有效性。这通常涉及到检查闪存中的签名或校验和。 8. 进入ISP模式:如果用户代码无效或特定条件满足,系统可能会进入ISP模式,允许通过串行接口更新固件。 9. 自动波特率检测:在ISP模式下,微控制器尝试运行自动波特率检测,以确定与编程设备的最佳通信速率。 10. 接收晶振频率:一旦波特率确定,系统会接收晶振频率信息,这对于正确设置系统时钟至关重要。 11. 执行ISP命令处理:在确认了所有设置和参数后,微控制器开始执行ISP命令,这可能包括擦除、写入或验证闪存操作。 12. 执行内部用户代码:最后,当ISP过程完成且用户代码验证无误,系统将跳转到用户代码的入口点,开始执行应用程序。 关于晶振频率的处理,详细信息可以参考第37.8.9节。而基于CRP设置的可用ISP命令,可以在37.6节找到相关描述。此用户手册提供了全面的信息,涵盖了LPC1788系列微控制器的各个功能和配置选项,对于开发者来说是宝贵的参考资料。 LPC178x/7x用户手册(UM10470)经过多次修订,最新版本1.5在2011年7月6日发布,包含了对PowerBoost功能的描述和其他一些更新和修正,确保开发者能够获取最新的技术和信息。如需获取更多详细信息,建议查阅英文原版用户手册,以避免翻译可能产生的歧义。