LPC178x/7x微控制器引导过程详解
需积分: 32 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功能的描述和其他一些更新和修正,确保开发者能够获取最新的技术和信息。如需获取更多详细信息,建议查阅英文原版用户手册,以避免翻译可能产生的歧义。
269 浏览量
561 浏览量
139 浏览量
2021-11-08 上传
2021-10-20 上传
185 浏览量
142 浏览量
167 浏览量
菊果子
- 粉丝: 50
- 资源: 3764
最新资源
- 微信小程序-点餐
- ionicStudyWithTabs:带有 ngCordova 的离子模板项目
- note-taker
- XIANDUAN.rar
- 一种基于高通量测序的拷贝数变异检测自动化分析解读及报告系统.rar
- rasaxproject1
- GitHub Open All Notifications-crx插件
- gatsby-remark-component-images:一个Gatsby注释插件,将gatsby-plugin-sharp处理应用于html样式的markdown标签
- 易语言开关音频服务实现开关声音-易语言
- ComposeKmmMoviesApp
- HistogramComponentDemo.7z
- UA GPU-able Search-crx插件
- MYSQL数据库管理器(易语言2005年大赛三等奖)2010-10-27.rar
- native-api-notification-[removed]JavaScript中的本机通知API
- 将超像素作为输入MATLAB代码-laplacianseg:种子图像分割的拉普拉斯坐标
- MyDroid