这一节写单片机一篇入门,拭目以待,必有惊喜!。
不入门的根本原因?
- 简单问题复杂化,
- 复杂问题简单化,
- 头脑迷糊没框架,
- 无头无尾似散沙。
劝退的单片机框架:
我们的单片机框架:
现在个人、工业化领域的PC、单片机、PLC是电子工程师接触最多的器件。
个人计算机(简称PC),现在的笔记本、台式机、平板、智能手机应该都隶属于PC序列,单片机应属于另一序列。以单片机/CPU为内核,标准化、模块化、特化应用其实就是我们常说的PLC(大部分用于工业领域), PLC这一节不讨论。
实际上单片机是把类似于个人计算机的内存、cpu、固态盘、输入输出接口简化功能集成到一个芯片中。
单片机和个人计算机工作原理是类似的。
个人计算机CPU从固态盘/硬盘调入程序和数据进行计算,然后把计算结果存回固态盘/硬盘。
单片机CPU从闪存(程序存储器)调入程序和数据进行计算,然后把计算结果存回闪存。
但是在实践中发现CPU运算速度非常快,固态盘/硬盘/闪存的速度跟不上,严重影响效率。
后来增加了内存这个器件,内存和CPU是一样的处理速度。程序和数据提前调入到内存中进行存取动作,最后保存时才写入固态盘/硬盘/闪存。
所以CPU和固态盘/闪存之间增加的内存是用于大量计算时的缓冲区。
输入输出接口是用于挂接输入设备、输出设备,只是在单片机内部计算不做输出是没有什么用处的,必须输出控制一些设备或者显示出来才行。输入接口就是我们去控制单片机或者单片机检测一些东西预留的接口。
以上我们可以知道,单片机入门的重点:
- 理解闪存是如何存储程序和数据的
- CPU是如何调入调出数据进行运算的
- 内存的数据是如何存取的
- 输入输出接口如何控制的
上一节我们点亮LED灯,大部分都觉得简单,然后我们一直学单片机编程、硬件电路,有心人会觉得总是浮在空中,实际就是把复杂问题简单化。
只要我们能够理清点亮LED这段程序的流程,一级级的深入下去一直到硬件电路是如何支撑这一行程序的,那么立刻就对嵌入式软硬件有了深入的理解。
我们大部分人怎么学的?
知其然不知其所以然,以为懂了,然后学会了控制LED,然后控制三极管,再去研究串口,但对内部原理不去深究,一旦出错,就不会排查,如果长时间的解决不了问题,就成了从入门到放弃。
千鸟在林不如一鸟在手,我们就以LED点亮为例深入程序与硬件内部彻底学通它。然后你的程序框架和硬件框架就能够建立起来,再学习会有如神助。
用什么符号不重要,用什么句子不重要,重要的是你用它们做到了什么!
某些人自称为“程序猿”,实际上在他们的领域,角色定位非常的高大上,这帮人实际是在做造人的工程。女娲娘娘的名讳自然要尊重的,所以程序员真实的代号应该是"程序蛙"。
为什么叫做“程序蛙”?