在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
芯片精品文章合集(500篇!) 创芯人才网--重磅上线啦!
查看: 2219|回复: 0

[原创] C环境下240x DSP系统初始化

[复制链接]
发表于 2007-3-6 20:42:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 cjsb37 于 2013-4-29 09:29 编辑

在运行C程序之前,必须创建C运行环境。这个任务由C引导程序使用名为c_int0的函数来执行。运行时支持源库(rts.lib)在名为boot.asm的模块中包含了这个程序的源程序。
在系统开始运行时,c_into函数可以被转移或者被调用,但是它通常由硬件复位来调用。必须将c_into函数与其他的目标模块链接起来。当使用-c或者-cr连接器选项并且包含rts2xx.lib作为连接器输入文件之一时,以上调用将自动实现。
当链接C程序时,连接器可以将可执行输出模块中入口点的值赋给_C_INT0。然而在复位时这并不会自动设置硬件到指向c_int0的向量。
c_int0函数执行如下初始化C环境的任务:
(1)为系统堆栈定义一个名位.stack的段,并设置初始化堆栈指针;
(2)初始化全局变量,通常将.cinit段中的初始化表中的数据复制到为.bss段中的变量分配的存储区来实现.如果在加载时为初始化变量(-cr选项),则加载器在程序运行之前执行该步骤;
(3)调用函数main运行C程序.







您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-15 01:53 , Processed in 0.021546 second(s), 10 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表