有了电子电路和数字电路的基础知识,就可以开始学习嵌入式系统的核心部件——单片机。从本期开始,我们就来介绍一下单片机的基础知识。
在单片机入门系列讲座中,我们先学习单片机的基本结构、工作原理和外围功能电路,然后挑战一个实际单片机的操作。
单片机是控制电子产品的大脑。
现在,我们生活中的许多电器都使用单片机。比如:手机、电视、冰箱、洗衣机、按下开关LED闪烁的儿童玩具。那么,这些电器中的MCU做了什么呢?
单片机是这些电器动作的关键,它指挥硬件运行。例如,接收按钮或按键的输入信号,并指示电机和LCD的外围功能电路根据预先编程的程序进行动作。
那么,单片机是如何构成的呢?
单片机由CPU、存储器、外围功能等组成。如果把单片机比作一个人,那么CPU负责思考,内存负责记忆,外围功能相当于视觉感觉系统和控制手脚动作的神经系统。
虽然我们说CPU相当于人脑,但它不能像人脑一样有意识地自发思考。CPU只能顺序读取和执行预先存储在内存中的指令(程序)组合。当然,CPU执行的指令并不是“走”、“说”这种高难度的命令,而是一些非常简单的指令,比如从内存的某个地方“读取数据”或者将一些数据“写入”内存的某个地方,或者做加法、乘法、逻辑运算等等。然而,这些简单指令的组合可以实现许多复杂的功能。
当CPU读取指令时,它需要知道要执行的指令存储在内存的什么位置。这个位置信息叫做地址(相当于家庭地址)。程序计数器(PC)是存储地址的寄存器。通常PC机是以1为增量设计的,也就是说,当CPU执行0000地址中的指令时,PC机会自动加1成为0001地址。执行每条指令PC机将自动加1,指向下一条指令的地址。可以说PC决定了程序执行的顺序。
指令解码电路
指令解码电路解释从存储器读取的指令的含义。运算电路根据解码结果进行操作。具体来说,指令解码电路就是我们在数字电路导论(2)中学到的解码电路,只是电路结构稍微复杂一点。因此,指令解码电路的工作原理是从符号化(加密)的指令中恢复指令。
◇操作电路
算术电路,也称为ALU(算术逻辑单元),是完成运算的电路。它可以执行算术运算,如加法和乘法,以及逻辑运算,如与,或和位移。该操作在指令解码电路的控制下执行。通常,运算电路的结构是复杂的。
◇CPU内部寄存器
CPU内部寄存器是存储临时信息的地方。有存储运算值和运算结果的通用寄存器,也有一些特殊寄存器,比如存储运算标志的标志寄存器。也就是说,运算电路在进行运算时,并不是直接在存储器中进行运算,而是将存储器中的数据复制到通用寄存器中,在通用寄存器中进行运算。
