找回密码
 注册
关于网站域名变更的通知
查看: 349|回复: 1
打印 上一主题 下一主题

利用DSP/BIOS实现滴答时钟及烧写Flash(下)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-8-13 10:48 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
DSP/BIOS操作系统启动过程
! T+ ~: R+ w$ n2 Y1 |/ H7 p  Q
, a( [2 L4 Y  ^6 ?5 _" X( j7 V6 g% k; ^

& l: o, v- a. x4 \2 S* |" Y. s其实在上一篇中已经讲过DSP/BIOS的启动过程,这里不妨再唠叨一下:# R4 v% Y; b9 o
! d0 L( T9 O: C
7 J" Y- O% e0 K! J) }( e
  • 系统上电复位,从Flash装载完程序后,首先从C/C++环境入口_c_int00开始执行
  • 利用.cinit记录初始化.bss段
  • 调用BIOS_init初始化用到的各个模块
  • 处理.pinit表,如C++中的全局对象的构造函数就在这个时候执行
  • 进入main函数执行
  • main函数返回,调用BIOS_start启动DSP/BIOS操作系统
    2 _4 T! T3 D+ ]

% b/ S9 Z$ `3 ^  \# u2 k) r1 k, \
9 b7 W: X8 b: @1 \/ g% X
7 M$ L9 `* B; R- L5 L
其实除了其中第1步对我们烧写Flash有指导意义外,其它各步骤都是无关紧要的(当然,仅就这里讨论的问题而言)。基于此,这里烧写Flash的思路就是:在系统复位后,程序跳转到_c_init00之前,写一段从Flash拷贝应用程序到内存的代码就好了!
' D" a6 K+ C% ~8 i' o
7 P/ S& |3 B0 R5 h3 n0 D迁移到操作系统的Flash烧写& v" ], y. ~0 X5 O+ R
4 l8 c$ _% p* H; n' @
" r. Y# }8 h7 y, a6 T7 `* m4 |
在之前“TMS320C6713烧写Flash的通用方法”一文中,已经详述了如何烧写裸机的代码,这里只需要对DSP/BIOS工程做很少的改动,就可无缝的将之前的烧写方法用在这里,下面还是按步骤来,主要描述一些不同的地方(这样清晰些):* h1 O- j" z* c. S$ M

8 _) i4 l" p4 T8 ?1 ]
( s0 S; X7 s/ w4 d- J# D" g
游客,如果您要查看本帖隐藏内容请回复

5 ^7 _" p, J0 A
% l  x! n1 y" u* v; m1 i! g8 M

该用户从未签到

2#
发表于 2019-8-13 18:43 | 只看该作者
学习一下,谢谢楼主分享。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 23:34 , Processed in 0.156250 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表