我需要理清楚思路于是写了这篇文章。
我学习嵌入式有一段时间始终不知道该如何学习。某天一个疑问出现在我的脑海什么是芯片我思考了好久,我看着电路板上的芯片始终不能理解,尤其是看了stm32上的程序之后。当出现片上外设和片外外设时我发现芯片似乎里面还有东西。这个关系是内核,片上外设也叫片内内设,以及片外外设。
片外外设好理解就是画的电路板上除主芯片之外所有电路的总称,可以理解为芯片以外的外部设备。
。内核是一个什么东西,我从好几个地方听过它。linux的shell命令就是架构在内核上的指令。但似乎概念有点抽象,无法理解是一个什么东西。而单片机的内核是实实在在的存在的。单片机的内核是一个单晶硅加工成的圆晶片,在圆晶片上面刻录凹槽,填充介质,使芯片可以形成千万级或者更多的三极管最后成为内核,经过ARM等公司的二次加工成为我们现在看到的芯片。而芯片在进行外部电路设计才成为我们看到的电路板。
芯片跟外界连接的途径只有一种,那就是引脚。引脚只有两种功能:
一种是输入,用来监控外界的状态。无论是外部中断,还是串口接收…都是输入的一种特殊状态;
一种是输出,用来操控外界。无论是串口输出,PWM… 也都只不过是输出的一种特殊形式而已。
我们编写的程序,最后也都是由编译软件将我们的代码翻译成各种二进制文件,用来控制控制三极管的开启和关闭,那么芯片的世界就按照我们设定的逻辑运行起来了,编译软件就相当于有道词典,这种语言翻译软件。