第一章:概念
主要描述一些技术术语与概念。内容不重要,看看就好。
本章内容规划:
1.1节,模拟电子与数字电子
1.2节,MCU和CPU
1.3节,PCB
1.4节,编程语言
1.5节,操作系统
1.6节,Android
1.7节,智能机器人
1.1节,模拟电子与数字电子
电磁理论的发展支撑了近代文明,电成为一种普及能源开始服务大众。但直到半导体技术出现,控制理论和人工智能才真正大爆发。半导体,指的是导电性可变的材料。利用半导体稳定可控的伏安特性曲线,人们实现了信号放大器,发展出了模拟电子技术。声音信息第一次以电压信号的方式存在、传递、转换。人们发明了电话、收音机、对讲机。在模拟技术中,非线性放大的失真的问题,给信息的传递造成了很大麻烦。为了避开该问题,人们决定以电位信号表示信息,以高电压表示1,低电压表示0,用010101、111000这样不同的数字组合表示信息含义。信息不再局限是声音,利用通信编码协议,它可以是文字、可以是图像、视频......这就是数字技术。随着标准的下降,更复杂的电路更容易制作出。人们利用半导体做出了加法器、减法器,再由加法器实现乘法器、除法器等“逻辑门处理电路”。在数字技术里,人们第一次利用电路实现了数字逻辑计算,而这种计算只要接通电源就可以完成,不需要人工干预,全自动化的。这是自动控制和人工智能的基础。
1.2节,MCU和CPU
1.2节,MCU和CPU
随着半导体技术的发展,单个芯片集成的电路越来越多,终于从简单的逻辑电路发展出超大规模集成电路芯片MCU。MCU(Micro Control Unit)指的是微型控制单元,又称单片机、微控制器。MCU功能强大,集成了CPU(Central Processing Unit)中央处理单元、随机存储器RAM、只读存储器ROM、中断、计数/计时器、AD模拟数字转换电路、DA数字模拟转换电路。MCU与数字电子技术早期的门电路芯片最大的区别是可编程。使用门电路芯片设计的控制电路,控制逻辑固化在电路当中,不可改变。而使用MCU芯片设计的控制电路,控制逻辑可以通过编程修改。MCU是为控制而生的,虽然集成了中央处理单元CPU,但该CPU往往性能较差。MCU后面发展出更大集成规模的MPU (Micro Processor Unit)微处理器,专注于通用计算,现在往往称为CPU中央处理器。MCU与CPU都可以提供计算,它们的区别在用途上,MCU用于控制电路,运算速度较慢,注重于数字逻辑处理,比如让一盏灯在天黑时亮起,天亮时关闭;CPU用于制作个人计算机、服务器,运算速度非常快,注重于为人们提供辅助的计算能力,相当于电子大脑。
1.3节,PCB
早期的电子线路通过导线连接,复杂的电路,接线工序非常繁琐,一个地方的接触不良,就容易导致整个电路失效或损毁。这种方式制作的电路,极容易发生错误的同时又难以规模制作。PCB(Printed Circuit Board)印制电路板,将电子线路封装在一块绝缘底板上,通过焊盘连接MCU芯片等电子元器件。线路原理图绘制,PCB设计是硬件工程师的基本工作。
1.4节,编程语言
逻辑门芯片接收的0101可以理解为广义的二进制程序,二进制程序可以在电路上直接运行,二进制程序可以被机器直接理解,称为机器语言。在CPU出现以后,根据芯片可执行的基本机器指令操作,实现了汇编编程语言。汇编程序需要经过编译器,转换成二进制程序以后才能在电路上运行。二进制程序和汇编程序,均是根据电路或者芯片定义的,并不易于阅读和分享。随着代码量增加和代码功能变得越来越复杂。人们需要易于编写,容易维护的程序设计。C语言是区分机器语言和汇编语言的高级编程语言,其针对人而设计,易于理解和阅读。高级编程语言种类有很多,C/C++、Python、Java等,并且不断地推陈出新。但它们基本的结构,编程思想是一样的。
1.5节,操作系统
人们在MCU上实现了逻辑控制程序,在CPU上编写了操作系统。逻辑控制程序,现在一般称为嵌入式程序,是针对硬件电路资源开发的控制代码。嵌入式程序由嵌入式软件工程师开发,需要了解编程、理解电路。但随着代码功能的增加,很多代码的编写并不一定需要了解硬件电路。基于CPU强大的能力,人们编写了一个超大的嵌入式程序——操作系统。操作系统对硬件层,封装了处理硬件资源的代码,对软件应用层提供调用的接口函数协议。软件工程师只需要了解操作系统的接口函数,就能实编写一个计算应用软件,降低了编程要求。由于操作系统接口协议的不一致性,一个操作系统上开发的程序,并不能在另一个操作系统上直接运行。当前主流的操作系统有微软的Windows、苹果的MacOS、IOS,谷歌的Android,还有广泛存在但非专业中并不知名的Linux。
1.6节,Android
1.7节,智能机器人