![](https://img-blog.csdnimg.cn/20210222105059143.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
嵌入式基础知识文集
文章平均质量分 78
记录嵌入式软件开发涉及的基础理论知识,探索和研究嵌入式软件开发背后的共性。
bug实验室
探索科研之行
展开
-
运行阶段:静态链接---都说重定位必须保证链接地址与运行地址相同,真的吗?
静态链接---都说重定位必须保证链接地址与运行地址相同,真的吗?讨论问题:3.3 静态链接--指令修正3.4 为什么有人说:重定位需要确保链接地址与运行地址一致讨论问题:重定位发生在哪个阶段。实现重定位是否一定是位置相关代码重定位是否一定要保证链接地址与运行地址一致,否则无法正常执行3.3 静态链接–指令修正上一小节回答了重定位发生在链接阶段,本小节来进一步的分析重定位的过程。程序的链接也有静态静态链接和动态链接,我们结合静态链接继续分析前面静态重定位的例子。/* 代码清单1 *//*原创 2021-02-25 11:48:54 · 427 阅读 · 2 评论 -
运行阶段:函数调用的背后---代码重定位
函数调用的背后---代码重定位讨论问题:3.1 重定位3.2 函数调用的背后--代码重定位讨论问题:1.函数调用的背后2. 什么是重定位。3.1 重定位程序是按顺序,从起始地址依次往下运行。当需要破坏这种顺序执行跳转到某一具体目标执行时,需要告知CPU这个目标(符号)所在的具体地址。而这个地址需要通过计算目标符号位于程序中的位置来获得。计算目标地址的过程称为重定位。重定位有静态重定位和动态重定位,在这主要分析的是静态重定位。3.2 函数调用的背后–代码重定位创建一个main.c文件,编写mai原创 2021-02-25 10:39:38 · 216 阅读 · 0 评论 -
时钟系统:时钟系统倍频分频配置--时钟系统分析案例
时钟系统倍频分频配置--时钟系统分析案例讨论问题:2.3 时钟阀门2.4 时钟系统案例2.5 CPU时钟模块案例分析讨论问题:时钟的作用是什么。你有遇到软件配置没出错,但某个外设却无法正常工作的问题?你是否考虑过这种现象可能与时钟系统配置有关?2.3 时钟阀门在51单片机开发中没有时钟系统的配置,但对时钟频率应该不会很陌生吧。例如在定时器计时配置初始值,就会用来时钟频率来计算出这个初始化值。而对于集成度高、功能更复杂的处理器芯片一般都有时钟系统,时钟系统是由许多个时钟域(模块)构成。在时钟系原创 2021-02-24 17:15:23 · 1542 阅读 · 1 评论 -
时钟系统:CPU为啥需要时钟;此时钟非彼时钟,时钟到底是啥玩意
CPU为啥需要时钟;此时钟非彼时钟,时钟到底是啥玩意讨论问题:2.2 时钟的本质讨论问题:1.时钟是什么2. 为什么需要时钟2.2 时钟的本质不知道你有没有过类似的疑惑:CPU不是供电就可以工作,为什么还有时钟;时钟和CPU供电之间又有什么联系?一听到时钟,大多数人都会忍不住抬头看看几点了,把时钟当做是计时器、计数器,你也是这么认为吗?在做单片开发实验过程中,你是否还记得LED闪烁是怎么实现。在没有接触定时器之前,是不是通过软件实现一个延时函数来实现LED闪烁,但是这种闪烁效果如果需要精确闪烁原创 2021-02-23 16:28:02 · 1728 阅读 · 0 评论 -
时钟系统:都说计算机是0和1的世界,为啥不能是0、1、2、3、4、…的世界
都说计算机是0和1的世界,为啥不能是0、1、2、3、4、5、6的世界讨论问题:2.1 为什么只能是0和1讨论问题:计算机为什么只能识别0和1。原创 2021-02-23 16:16:14 · 539 阅读 · 0 评论 -
上电开机:上电能跑就行,可知程序从哪开始执行
上电能跑就行,可知程序从哪开始执行讨论问题:2. 程序从哪开始跑2.1 异常向量表2.2 为什么需要预定义这些异常和中断向量呢?2.3 程序入口讨论问题:CPU/MCU在设备开机后是如何执行到硬件初始化程序。整个固件程序的入口在哪里,是main函数吗?2. 程序从哪开始跑2.1 异常向量表如果有分析过u-boot 源码,应该对异常向量表不会陌生,但是如果没有分析过u-boot源码,那么51单片机和stm32有异常向量表的说法吗?stm32是有异常向量表的,对于51单片机相对应的有中断向量。原创 2021-02-23 11:47:18 · 449 阅读 · 0 评论 -
开机上电:学了那么久的嵌入式,可知程序烧录到哪
学了那么久的嵌入式,可知程序烧录到哪本文讨论问题1. 固件烧录2. 51单片机固件烧录3. STM32固件烧录4. exynos4412固件烧录5. 小结本文讨论问题固件是烧录到哪里。CPU/MCU是从哪个地址开始执行程序。你有遇到烧录固件开机后,除了电源灯常亮,板子却没有任何反应吗,你有考虑过这种现象与烧录的地址有关吗?1. 固件烧录回想一下刚开始学习嵌入式软件开发的时候是怎么进行的。拿到开发板后,跟着商家提供的学习课程一步一步的照敲代码、编译、烧录、启动开发板。奥耶!开发板正常运行且原创 2021-02-22 11:25:23 · 2326 阅读 · 2 评论