- 博客(7)
- 收藏
- 关注
原创 英飞凌XMC4000系列开发板软件系统复位死机的问题
英飞凌XMC4000系列开发板一般都带有J-link仿真器,该仿真器连接了调试对象XMC4000微处理器的启动模式控制引脚。当开发板的DEBUG USB接口通电后开发板上的XMC4200为控制器开始工作,提供J-link仿真功能,此时XMC4200的引脚控制调试对象XMC4000系列处理器的启动模式控制引脚,并将启动模式设置成非正常启动模式,而且估计在启动时就对调试对象XMC处理...
2019-01-03 15:24:47
1443
原创 XMC汇编启动代码中文详解
/********************************************************************************************************************* * @file startup_XMC4800.S * @brief CMSIS Core Device Startup File for In...
2019-01-02 17:28:30
1346
转载 ARM GNU 汇编伪指令简介
分类: LINUX2013-08-09 20:45:43 1 ARM GNU 汇编伪指令简介 (1)abort .abort 停止汇编 (2)align .align absexpr1,absexpr2 以某种对齐方式,在未使用的存储区域填充值. 第一个值表示对齐方式,4, 8,16或32. 第二个表达式值表示填充的值 (3...
2019-01-02 16:38:01
229
转载 GNU ARM指令简介
第一部分 Linux下ARM汇编语法尽管在Linux下使用C或C++编写程序很方便,但汇编源程序用于系统最基本的初始化,如初始化堆栈指针、设置页表、操作 ARM的协处理器等。初始化完成后就可以跳转到C代码执行。需要注意的是,GNU的汇编器遵循AT&T的汇编语法,可以从GNU的站点 (www.gnu.org)上下载有关规范。一. Linux汇编行结构任何汇编行都是如下结构:[:]...
2019-01-02 16:12:37
676
原创 XMC启动文件中的“Entry“”理解
先看<startup_XMC4800.S>文件中的最前面的一段宏:.macro Entry Handler .long \Handler.endm这个宏使用的应该是Linux汇编程序宏定义的格式,如下:.macro 宏名 参数名列表 @伪指令.macro定义一个宏 宏体.endm @.endm表示宏结束如果宏使用参数,那么在宏体中使用该参数时添加前缀“\”。宏...
2019-01-02 16:00:02
731
原创 XMC启动代码中stack_size 和 __initial_sp的问题
和启动代码卯了五天终于搞明白DAVE集成环境下启动代码是怎么修改sp值的了。网上全是keil MDK集成环境的启动代码分析,这英飞凌太坑了。。。。。。,言归正传: 英飞凌XMC4400单片机的ROM固化引导程序中将SP的值赋为0x2000Fyyy(记不清了,用yyy代替),而进入main()后SP的值变为0x1FFFC800。这一过程是这样实现的:Startup文件夹...
2018-12-14 01:47:48
3267
1
原创 ARM Cortex-M4微处理的总线简单理解
看了很久的《ARM Cortex-M3与Cortex-M4权威指南》,其中关于总线以及数据传输的描述零散而难以理解,看过AHB-Lite总线协议后恍然大悟(不一定正确,可我将这样认为),现在把它写下来: 1.ARM Cortex-M3与Cortex-M4中的总线总体可以分为三类, 第一类 D-CODE、I-CODE总线, ...
2018-07-13 16:51:33
6277
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人