查看: 4286|回复: 8

[CodeWarrior] kinetic,CW10.3,初始化问题(已解决)

[复制链接]

该用户从未签到

25

主题

104

帖子

0

中级会员

Rank: 3Rank: 3

积分
302
最后登录
1970-1-1
发表于 2013-4-22 22:18:50 | 显示全部楼层 |阅读模式
 在CW10.3环境下新建工程后会自动生成startup code 文件夹,
其下有如下5个文件:__arm_start.c ,__arm_end.c,kinetic_sysinit.c,kinetic_sysinit.h,runtime_configuration.h
仔细分析以后认为程序执行顺序应从__arm_start.c 文件中的void __thumb_startup(void)函数开始执行,该函数中对芯片的初始化顺序应该如下:__init_registers();——>__init_hardware() ——> __init_user()——>main();
其中_init_hardware();函数在kinetic_sysinit.c中,__init_registers()不知道在哪;__init_user()为用户自己添加的函数,在我自己添加的文件中,然后应该再main().
但是实际上我今天连上板子进行硬件仿真后看到的是程序直接从main()开始执行的,拜托哪位高人能给个指点?
我知道答案 目前已有7人回答
回复

使用道具 举报

该用户从未签到

85

主题

790

帖子

0

金牌会员

Rank: 6Rank: 6

积分
2279
最后登录
1970-1-1
发表于 2013-4-23 09:36:55 | 显示全部楼层

回复:kinetic,CW10.3,初始化问题

这个需要你在debugger configuration里面配置。请参考附图。附图中选择的是main,你如果要从程序的入口进入,就请选择上面的那个选项。
main.JPG
回复 支持 反对

使用道具 举报

该用户从未签到

13

主题

86

帖子

0

新手上路

Rank: 1

积分
130
最后登录
1970-1-1
发表于 2013-4-23 09:49:57 | 显示全部楼层

RE:kinetic,CW10.3,初始化问题

学习了!!
回复 支持 反对

使用道具 举报

该用户从未签到

25

主题

104

帖子

0

中级会员

Rank: 3Rank: 3

积分
302
最后登录
1970-1-1
 楼主| 发表于 2013-4-23 10:02:37 | 显示全部楼层

回复:kinetic,CW10.3,初始化问题

啊啊,非常感谢啊,长知识了啊,能不能再问下版主,调试器具体是怎么找到这个程序的入口的啊?
 
回复第 2 楼 于2013-04-23 17:36:55发表:
这个需要你在debugger configuration里面配置。请参考附图。附图中选择的是main,你如果要从程序的入口进入,就请选择上面的那个选项。
 
回复 支持 反对

使用道具 举报

该用户从未签到

85

主题

790

帖子

0

金牌会员

Rank: 6Rank: 6

积分
2279
最后登录
1970-1-1
发表于 2013-4-23 10:34:26 | 显示全部楼层

RE:kinetic,CW10.3,初始化问题

不好意思。这个是IDE本身设计和实现的问题,已经超过了芯片的本身,我就不是很懂了。
回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

30

帖子

0

注册会员

Rank: 2

积分
94
最后登录
1970-1-1
发表于 2013-4-23 15:23:23 | 显示全部楼层

回复:kinetic,CW10.3,初始化问题

实际上不管是在调试环境下,还是芯片独立运行时,程序都是从复位矢量地址入口开始运行。一般复位矢量地址并不是main()函数,而是_Startup()函数。只不过在调试环境下,程序运行到main()函数时,会停下来,让用户进行下一步的操作。
回复 支持 反对

使用道具 举报

该用户从未签到

25

主题

104

帖子

0

中级会员

Rank: 3Rank: 3

积分
302
最后登录
1970-1-1
 楼主| 发表于 2013-4-23 20:53:32 | 显示全部楼层

回复:kinetic,CW10.3,初始化问题

嗯嗯,谢谢了!
回复第 5 楼 于2013-04-23 18:34:26发表:
不好意思。这个是IDE本身设计和实现的问题,已经超过了芯片的本身,我就不是很懂了。
 
回复 支持 反对

使用道具 举报

该用户从未签到

25

主题

104

帖子

0

中级会员

Rank: 3Rank: 3

积分
302
最后登录
1970-1-1
 楼主| 发表于 2013-4-23 20:54:03 | 显示全部楼层

回复:kinetic,CW10.3,初始化问题

嗯嗯,谢谢了!
回复第 6 楼 于2013-04-23 23:23:23发表:
实际上不管是在调试环境下,还是芯片独立运行时,程序都是从复位矢量地址入口开始运行。一般复位矢量地址并不是main()函数,而是_Startup()函数。只不过在调试环境下,程序运行到main()函数时,会停下来,让用户进行下一步的操作。
 
回复 支持 反对

使用道具 举报

  • TA的每日心情
    无聊
    2019-6-28 21:45
  • 签到天数: 8 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    0

    主题

    31

    帖子

    0

    注册会员

    Rank: 2

    积分
    133
    最后登录
    2021-7-29
    发表于 2013-4-28 14:46:55 | 显示全部楼层

    RE:kinetic,CW10.3,初始化问题(已解决)

    这个问题曾经也遇到过,呵呵
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

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

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-21 11:51 , Processed in 0.104920 second(s), 30 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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