永发信息网

为什么单片机不需要编写启动代码?

答案:5  悬赏:0  手机版
解决时间 2021-11-10 11:25
  • 提问者网友:我没有何以琛的痴心不悔
  • 2021-11-09 20:07
为什么单片机不需要编写启动代码?
最佳答案
  • 五星知识达人网友:洎扰庸人
  • 2021-11-09 21:36
启动代码一般是指那种可以加载操作系统和内部资源很多的的芯片。比如计算机的微处理器、ARM芯片、部分DSP芯片和部分高端单片机芯片。
所有芯片包括上述需要启动代码的芯片,都是从0地址开始执行的。而一般中低端单片机用C语言编程的,在编译过程中,C编译器也要把所编译的汇编语句的开头地址指向MAIN函数所在的位置(也就是说在0地址上放一句GOTO xxx,xxx即是MAIN的开头地址)。而如果你写过单片机的汇编就知道,它必须指定代码的起始位置,否则执行程序会出错。
而需要启动代码的芯片,因为程序一般较为复杂,内部资源需要很多的配置,程序编译器根本不能完全根据人的意愿来配置这些芯片的资源。所以需要启动代码来配置芯片。又因为像计算机微处理器和高端的ARM芯片是给芯片上电后,芯片需要把控制权交给操作系统OS,就必须要先有一个引导程序。
全部回答
  • 1楼网友:爱难随人意
  • 2021-11-10 00:30
编译软件keil,把这个问题解决了,所以不用.....
  • 2楼网友:十年萤火照君眠
  • 2021-11-09 23:01
其实是有启动代码的 尤其是ARM核的单片机

只不过这部分工作编译器帮你做了 就不用你费心了……
  • 3楼网友:三千妖杀
  • 2021-11-09 22:44
有启动代码的,而且可以改的,就是那个startup.asm文件,是个汇编程序
  • 4楼网友:鱼芗
  • 2021-11-09 22:36
启动代码一般是指那种可以加载操作系统和内部资源很多的的芯片。比如计算机的微处理器、ARM芯片、部分DSP芯片和部分高端单片机芯片。
所有芯片包括上述需要启动代码的芯片,都是从0地址开始执行的。而一般中低端单片机用C语言编程的,在编译过程中,C编译器也要把所编译的汇编语句的开头地址指向MAIN函数所在的位置(也就是说在0地址上放一句GOTO xxx,xxx即是MAIN的开头地址)。而如果你写过单片机的汇编就知道,它必须指定代码的起始位置,否则执行程序会出错。
而需要启动代码的芯片,因为程序一般较为复杂,内部资源需要很多的配置,程序编译器根本不能完全根据人的意愿来配置这些芯片的资源。所以需要启动代码来配置芯片。又因为像计算机微处理器和高端的ARM芯片是给芯片上电后,芯片需要把控制权交给操作系统OS,就必须要先有一个引导程序。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯