DSP2812程序启动流程与CMD文件解析

版权申诉
0 下载量 131 浏览量 更新于2024-08-28 收藏 2.72MB PDF 举报
"DSP2812程序运行过程学习总结及CMD文件介绍" 本文主要讨论了Texas Instruments的TMS320F2812 DSP在上电和复位后的运行流程,以及CMD文件在程序开发过程中的作用。首先,我们来看TMS320F2812的上电运行过程: 1. 当设备启动或复位时,它会根据MP/MC引脚的状态确定是从片外还是片内的ROM读取复位向量。如果MC引脚为低电平,将从片内ROM的0x3FFFC0开始执行,而MP方式则是从外部存储器开始。 2. 在MC模式下,程序从片内ROM的0x3FFFC0读取,然后跳转到0x3FFFC00地址。 3. 0x3FFFC00处的代码是initboot过程的起点,用于根据IO管脚状态决定进入哪种引导模式。 4. 如果SCITXA引脚保持高电平,那么系统将进入Flashboot模式,设置程序计数器(PC)为0x3F7FF6。 5. 0x3F7FF6和0x3F7FF7位置有一个跳转指令,它将执行LB_c_int00函数。 6. c_int00函数是C程序的入口点,负责建立C语言运行环境,并最终调用主函数main。 7. main函数的开始标志着用户自定义应用程序的启动。 接下来,我们转向CMD文件的介绍: 1. 在DSP开发中,CMD文件是用户编写的,用于指导链接器如何分配编译器生成的代码和数据到不同的存储空间。TMS320F2812的存储器被划分为程序空间、数据空间和I/O空间。 2. 程序空间存储执行指令和系数,数据空间存储执行产生的数据,而I/O空间则处理与外围接口相关的数据,也可以用作额外的数据存储。 3. TI的COFF目标文件格式允许更灵活的代码管理和存储器映射,CMD文件通过指定各个段的分配策略,确保代码和数据正确地加载到相应的存储区域。 4. 用户可以通过CMD文件详细指定每个段(如.text、.data等)的起始地址、大小以及它们在内存中的位置,这对于正确配置和调试程序至关重要。 通过理解这些基础知识,开发者能够更好地控制和优化TMS320F2812 DSP的程序执行流程,并确保CMD文件的正确配置以支持有效的仿真和开发工作。