完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
一般嵌入式开发流程就是先建立一个工程,再编写源文件,然后进行编译,把所有的*.s 文件和*.c 文件编译成一个*.o 文件,再对目标文件进行链接和定位,编译成功后会生成一个*.hex 文件和调试文件,接下来要进行调试,如果成功的话,就可以将它固化
到 flash 里面去。 启动代码是用来初始化电路以及用来为高级语言写的软件作好运行前准备的一小段汇编语言,是任何处理器上电复位时的程序运 行入口点。比如,刚上电的过程中,我们的 PC 机会对系统的一个运行频率进行锁定在一个固定的值,这个设计频率的过程就是在汇编 源代码中进行的,也就是在启动代码中进行的。 启动代码作用一般是: 堆和栈的初始化; 向量表定义; 地址重映射及中断向量表的转移; 设置系统时钟频率; 中断寄存器的初始化; 进入 C 应用程序。 |
|
相关推荐
1个回答
|
|
对于M451,启动流程如下:
1. 硬件复位:当M451上电或复位时,系统处于复位状态。芯片内部的电源上电复位电路把所有寄存器都清零,并将PC设置为一个预定义的地址,该地址就是系统的复位地址。 2. 启动代码执行:复位后,处理器会跳转到预定义的复位地址,并开始执行启动代码。启动代码是一段汇编语言,主要用于初始化芯片内部的硬件,比如时钟振荡器、中断控制器、GPIO等,以及进行引导程序的加载等操作。 3. 引导程序加载:启动代码执行完毕后,会进行引导程序的加载。引导程序通常是存放在外部存储器中,例如SPI Flash,它负责从外部存储器中读取应用程序的代码,并把它复制到内部RAM或Flash中,然后跳转到应用程序的入口地址。 4. 应用程序执行:引导程序执行完毕后,会跳转到应用程序的入口地址,开始执行应用程序。 总之,M451的启动流程主要包括硬件复位、启动代码执行、引导程序加载和应用程序执行等步骤。这些步骤保证了芯片能够正确地初始化并顺利地运行应用程序。 |
|
|
|
只有小组成员才能发言,加入小组>>
692 浏览 0 评论
1105 浏览 1 评论
2473 浏览 5 评论
2807 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2645 浏览 6 评论
使用eim外接fpga可是端口一点反应都没有有没有大哥指点一下啊
652浏览 9评论
648浏览 7评论
请教大神怎样去解决iMX6Q在linux3.0.35内核上做AP失败的问题呢
781浏览 6评论
628浏览 5评论
668浏览 5评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-21 18:37 , Processed in 0.861062 second(s), Total 81, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号