DSP2812上电与Flash启动流程解析
需积分: 10 102 浏览量
更新于2024-09-26
收藏 68KB PDF 举报
"DSP2812处理器在上电时的启动流程涉及到多个关键步骤,包括硬件或软件复位、微计算机模式检查、引导程序的加载以及根据GPIO状态确定启动模式。在编程和调试过程中,需要注意对CMD文件的修改、.MAP文件的检查、RAM初始化错误以及正确设置启动选项。在确保所有条件满足后,才能断开仿真器并进行上电自动运行。"
DSP2812是一款高性能数字信号处理器,其上电处理过程主要包括以下几个环节:
1. **硬件或软件复位**:系统在上电或复位后,会进入一个初始状态,此时程序计数器PC指向固定的复位地址。
2. **微计算机模式检查**:DSP2812会检查MP/MC寄存器的值。若MP/MC为0,系统将进入微计算机模式,从内部BootROM启动;若MP/MC为1,则表示微处理器模式,此时不使用BootROM,而是从外部设备加载引导程序。
3. **BootROM启动**:在微计算机模式下,程序计数器PC指向0x3FFFC0,从BootROM的复位向量开始执行。BootROM中包含了一个名为Iniboot的引导程序。
4. **Iniboot功能**:Iniboot会分析GPIO引脚的状态,如SPICLKA、SCITXA、GPIO34等,以确定系统应采用的启动模式。例如,当这些引脚都为高电平时,系统将选择从内部Flash启动。
5. **启动模式判断**:根据GPIO引脚电平的不同组合,2812支持多种启动模式,包括Flash启动、SPI启动、SCI启动和并行启动。
6. **执行引导程序**:确定启动模式后,Iniboot会跳转到相应的引导程序入口地址,执行后续的初始化和加载操作。
在编程和调试过程中,需要注意以下几点:
- 不必更换GEL.LIB文件,通常使用默认的即可。
- 修改FLASH的CMD文件后,查看.MAP文件,确保0X3F7FF8处没有写入内容,以防止意外覆盖BootROM。
- 如果.MAP文件显示0X3FFFC0处有内容,可能需要调整CMD文件,直至该位置无内容。
- 确保在正确模式下烧录程序,并在烧录后通过RESETCPU检查是否能正确跳转到0X3FFFC0。
- 如果出现RAM初始化错误或找不到BOOT.ASM的提示,这通常是配置问题,可以通过检查项目构建选项来解决。
- 烧录完成后,断电并拔掉仿真器接口(注意拔掉USB线),然后重新上电,系统应能自动运行。
了解并掌握这些步骤和注意事项,有助于避免在开发过程中遇到不必要的问题,确保DSP2812能够顺利地从内部Flash启动并执行程序。对于新手来说,遵循这些步骤可以减少出错的概率,提高开发效率。
2020-07-14 上传
2020-12-07 上传
2015-05-27 上传
2010-09-05 上传
2010-12-20 上传
2011-01-02 上传
点击了解资源详情
2014-11-22 上传
Augusdi
- 粉丝: 1w+
- 资源: 5752
最新资源
- SSM动力电池数据管理系统源码及数据库详解
- R语言桑基图绘制与SCI图输入文件代码分析
- Linux下Sakagari Hurricane翻译工作:cpktools的使用教程
- prettybench: 让 Go 基准测试结果更易读
- Python官方文档查询库,提升开发效率与时间节约
- 基于Django的Python就业系统毕设源码
- 高并发下的SpringBoot与Nginx+Redis会话共享解决方案
- 构建问答游戏:Node.js与Express.js实战教程
- MATLAB在旅行商问题中的应用与优化方法研究
- OMAPL138 DSP平台UPP接口编程实践
- 杰克逊维尔非营利地基工程的VMS项目介绍
- 宠物猫企业网站模板PHP源码下载
- 52简易计算器源码解析与下载指南
- 探索Node.js v6.2.1 - 事件驱动的高性能Web服务器环境
- 找回WinSCP密码的神器:winscppasswd工具介绍
- xctools:解析Xcode命令行工具输出的Ruby库