你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

单片机是控制电子产品的大脑

[复制链接]
gaosmile 发布时间:2020-9-4 15:04
单片机是控制电子产品的大脑
现如今,我们生活中的许多电器都使用了单片机。例如:手机、电视机、冰箱、洗衣机、以及按下开关,LED就闪烁的儿童玩具。那么,单片机在这些电器中究竟做了些什么呢?

6 I$ I  i; B* ?/ Y) i+ J
单片机是这些电器动作的关键,是指挥硬件运行的。例如:接收按钮或按键的输入信号,按照事先编好的程序,指挥马达和LCD的外围功能电路动作。

# t; p  S: c6 j9 l
那么,单片机是如何构成的呢?如图1所示。
, c, c7 K9 t1 }7 W7 ?
单片机是由CPU、内存、外围功能等部分组成的。如果将单片机比作人,那么CPU是负责思考的,内存是负责记忆的,外围功能相当于视觉的感官系统及控制手脚动作的神经系统。

! U( h) H2 o) k: U0 ~8 w; n- L
微信图片_20200904150259.jpg
图1:单片机的构成要素

- p7 g# v, q" c# c尽管我们说CPU相当于人的大脑,但是它却不能像人的大脑一样,能有意识的、自发的思考。CPU只能依次读取并执行事先存储在内存中的指令组合(程序)。当然CPU执行的指令并不是“走路”、“讲话”等高难度命令,而是一些非常简单的指令,象从内存的某个地方“读取数据”或把某个数据“写入”内存的某个地方,或做加法、乘法和逻辑运算等等。然而这些简单指令的组合,却能实现许多复杂的功能。
+ U2 m) L- e+ n* F
会思考的CPU
让我们从CPU的构成来了解它的作用吧,如图2所示。) A: @0 ^- R* n

# u) K9 G) ^# k: l' j( `
微信图片_20200904150302.jpg
图2:CPU的作用
& V0 R3 v; V0 U
程序计数器
4 V! J3 x7 C& ]/ JCPU读取指令时需要知道要执行的指令保存在内存的什么位置,这个位置信息称为地址(相当于家庭住址)。程序计数器(PC)就是存储地址的寄存器。通常,PC是按1递增设计的,也就是说,当CPU执行了0000地址中的指令后,PC会自动加1,变成0001地址。每执行一条指令PC都会自动加1,指向下一条指令的地址。可以说,PC决定了程序执行的顺序。

) y( e& P8 h# }: C* @: i) j& P指令解码电路指令解码电路是解读从内存中读取的指令的含义。运算电路是根据解码结果操作的。确切地讲,指令解码电路就是我们在“数字电路入门(2)”中学过的解码电路,只不过电路结构稍微复杂些,所以,指令解码电路的工作原理就是从被符号化(被加密)的指令中,还原指令。
, H9 G6 Z# |2 s& E+ v4 g
8 J& }3 |1 y' E3 o( j. `运算电路
  W% n$ f1 c0 {0 D运算电路也称为ALU(Arithmetic and Logic Unit),是完成运算的电路。能进行加法、乘法等算术运算、也能进行AND、OR 、BIT-SHIFT等逻辑运算。运算是在指令解码电路的控制下进行的。通常运算电路的构成都比较复杂。$ A3 H, A2 D/ ^8 y3 r- I# _1 x5 x
7 P: `! S( _1 ?9 L
CPU内部寄存器
6 L6 ?6 [9 v8 b3 i: E+ oCPU内部寄存器是存储临时信息的场所。有存储运算值和运算结果的通用寄存器,也有一些特殊寄存器,比如存储运算标志的标志寄存器等。也就是说,运算电路进行运算时,并不是在内存中直接运算的,而是将内存中的数据复制到通用寄存器,在通用寄存器中进行运算的。* O8 E+ W/ h) m0 ^
0 @2 l% l. N0 K) w
CPU的工作原理
让我们通过一个具体运算3+4,来说明CPU的操作过程吧。

; l& Z+ |. i% I1 h/ X) g' V% F假设保存在内存中的程序和数据如下。

0 H& n- n) t; b# [7 E
微信图片_20200904150306.jpg
9 Q" j2 \9 N7 s3 Z, y# Z! S$ B
步骤1:当程序被执行时,CPU就读取当前PC指向的地址0000中的指令(该操作称为指令读取)。经过解码电路解读后,这条指令的意思是“读取0100地址中的内容,然后,保存到寄存器1”。于是CPU就执行指令,从0100地址中读取数据,存入寄存器1。

% {8 x6 s- A  a8 x( f% n; g
寄存器1:0→3(由0变为3)3 E( t4 x) [6 V5 b5 f
由于执行了1条指令,因此,PC的值变为0001
; m6 Z7 W" G0 U/ [) E' q/ I. G) v, P! F6 x% ~2 U7 Y% w
步骤2:由于PC的值为0001,因此CPU就读取0001地址中的指令,经解码电路解码后,CPU执行该指令。然后PC再加1。

9 s  S2 x) y$ Z+ V- c
寄存器2:0→4(由0变为4)
/ F7 o7 v5 w6 B6 P  ePC:0001→0000
. E7 J6 Y4 U0 w" S) p0 q
2 C1 t5 ~& G( k$ m. Z# b
步骤3:由于PC的值为0002,因此CPU从0002地址中读取指令,送给指令解码电路。解码结果是:将寄存器1和寄存器2相加,然后将结果存于寄存器1。

7 |& Y4 j) c' ^1 m, k0 u+ Y
, C: |$ L$ G; l' j) B0 }
寄存器1:3→7
PC:2→3

/ T  o) Y: D" l
于是3+4的结果7被存于寄存器1,加法运算结束。CPU就是这样,依次处理每一条简单的指令。

0 [& r4 [2 P: i: j
能记忆的内存
内存是单片机的记忆装置,主要记忆程序和数据,大体上分为ROM和RAM两大类。
- t# e) M0 `" m% E8 |
- e7 x2 v5 r$ e$ L0 w
ROM
ROM(Read Only Memory)是只读内存的简称。保存在ROM中的数据不能删除,也不会因断电而丢失。ROM主要用于保存用户程序和在程序执行中保持不变的常数。

1 ]3 r3 H1 g9 I* B
大多数瑞萨(Renesas)的单片机都用闪存作为ROM。这是因为闪存不仅可以象ROM一样,即使关机也不会丢失数据,而且还允许修改数据。# u5 T0 o3 m8 x* Q
  \/ W; t  {: `
RAM
" _6 h# s2 ]! \% \9 p
RAM(Random Access Memory)是可随机读/写内存的简称。可以随时读写数据,但关机后,保存在RAM中的数据也随之消失。主要用于存储程序中的变量。
; ?) F5 O4 r! O# |. I
在单芯片单片机中(*1),常常用SRAM作为内部RAM。SRAM允许高速访问,但是,内部结构太复杂,很难实现高密度集成,不适合用作大容量内存。  c6 g1 G  w9 w1 h

1 @! Z/ t( x% K
除SRAM外,DRAM也是常见的RAM。DRAM的结构比较容易实现高密度集成,因此,比SRAM的容量大。但是,将高速逻辑电路和DRAM安装于同一个晶片上较为困难,因此,一般在单芯片单片机中很少使用,基本上都是用作外围电路。
2 Q% {4 @' G3 |& h& h! m8 E: n
5 G6 \! }* \/ N
(*1)单芯片单片机是指:将CPU,ROM,RAM,振荡电路,定时器和串行I/F等集成于一个LSI的微处理器。单芯片单片机的基础上再配置一些系统的主要外围电路,而形成的大规模集成电路称为系统LSI。
4 T* A" v: O. E( a( z
“为何要使用单片机……”

* E( i. C3 j5 {/ [; |9 s+ h7 n为什么很多电器设备都要使用单片机呢?
+ q8 [9 f4 C5 Z- K$ J  Q
让我们用一个点亮LED的电路为例,来说明。如图3所示,不使用单片机的电路是一个由LED,开关和电阻构成的简单电路。
) P; I- S0 U! B3 y
微信图片_20200904150308.png

6 j7 u! j- u1 S- v$ H, B4 ]' Q
图3:不安装单片机的LED电路

  t5 l4 J* C; \0 p, ~
使用单片机的电路如图4所示。3 c9 u  F/ q7 }* I0 t. L
微信图片_20200904150311.png
图4:安装单片机的LED电路图
4 @+ _9 x6 P& o- \$ |
很显然,使用单片机的电路要复杂得多,而且设计电路还要花费精力与财力。好象使用单片机并没有什么优点。但是,现在下结论还为时尚早。
. e# f$ H; b3 ]
如果我们让这个电路做一些比较复杂的操作,会怎么样呢。例如:如果希望LED在按下开关后,经过一段时间再点亮或熄灭,那么,对于安装有单片机的电路来说,只需更改单片机中的程序就可以了,并不需更改原电路。另一方面,对于没有单片机的电路来说,就必须在元电路中加入定时器IC,或者用标准逻辑IC和FPGA构成逻辑电路,才能实现这个功能。
5 G$ `; y9 B, ]7 y
也就是说,在更改和添加新功能时,带有单片机的电路显然更加容易实现。这正是电器设备使用单片机的原因。单片机可真是个方便的东西哦!
, Z4 I, ^6 n& u4 A8 \5 U
收藏 评论0 发布时间:2020-9-4 15:04

举报

0个回答
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版