概述
因而广泛用于电子设备中作控制器之用.大到飞弹火箭国防尖端武器,小至电视机微波炉等现代家用电器,内中都毫无例外地运用单片计算机作为控制器.因此,从控制的观点,我们也常称它为单片控制器.
单片微控制器的工作离不开软体,即固化在存储器中的已设计好的程式.
所有带单片微控制器的电子设备,它的工作原理当然与具体设备有关.但它的最基本的原理是一样的,即:
1)从输入接口接收来自外界的信息存入存储器.
这些信息主要包括二部分:来自诸如温度压力等感测器的信息;来自人工干预的一些手动信息,如开关按钮等操作.
2)单片微控制器中的中央处理器根椐程式对输入的数椐进行高速运算处理.
3)将运算处理的结果通过输出接口送去控制执行机构,如继电器,电机,灯泡等.
这个过程不断重複着,即系统中的微电脑不断监视着各种信息,并及时作出不同的处理使系统正常运行.
硬体特性
1、主流单片机包括CPU、4KB容量的ROM、128 B容量的RAM、 2个16位定时/计数器、4个8位并行口、全双工串口行口、ADC/DAC、SPI、I2C、ISP、IAP。
2、系统结构简单,使用方便,实现模组化;
3、单片机可靠性高,可工作到10^6 ~10^7小时无故障;
4、处理功能强,速度快。
5、低电压,低功耗,便于生产携带型产品
6、控制功能强
7、环境适应能力强。
基本结构
1.运算器
运算器由运算部件——算术逻辑单元(Arithmetic & Logical Unit,简称ALU)、累加器和暂存器等几部分组成。ALU的作用是把传来的数据进行算术或逻辑运算,输入来源为两个8位数据,分别来自累加器和数据暂存器。ALU能完成对这两个数据进行加、减、与、或、比较大小等操作,最后将结果存入累加器。例如,两个数6和7相加,在相加之前,运算元6放在累加器中,7放在数据暂存器中,当执行加法指令时,ALU即把两个数相加并把结果13存入累加器,取代累加器原来的内容6。
运算器有两个功能:
(1) 执行各种算术运算。
(2) 执行各种逻辑运算,并进行逻辑测试,如零值测试或两个值的比较。
运算器所执行全部操作都是由控制器发出的控制信号来指挥的,并且,一个算术操作产生一个运算结果,一个逻辑操作产生一个判决。
2.控制器
控制器由程式计数器、指令暂存器、指令解码器、时序发生器和操作控制器等组成,是发布命令的“决策机构”,即协调和指挥整个微机系统的操作。其主要功能有:
(1) 从记忆体中取出一条指令,并指出下一条指令在记忆体中的位置。
(2) 对指令进行解码和测试,并产生相应的操作控制信号,以便于执行规定的动作。
(3) 指挥并控制CPU、记忆体和输入输出设备之间数据流动的方向。
微处理器内通过内部汇流排把ALU、计数器、暂存器和控制部分互联,并通过外部汇流排与外部的存储器、输入输出接口电路联接。外部汇流排又称为系统汇流排,分为数据汇流排DB、地址汇流排AB和控制汇流排CB。通过输入输出接口电路,实现与各种外围设备连线。
3.主要暂存器
(1)累加器A
累加器A是微处理器中使用最频繁的暂存器。在算术和逻辑运算时它有双功能:运算前,用于保存一个运算元;运算后,用于保存所得的和、差或逻辑运算结果。
(2)数据暂存器DR
数据暂存器通过数据汇流排向存储器和输入/输出设备送(写)或取(读)数据的暂存单元。它可以保存一条正在解码的指令,也可以保存正在送往存储器中存储的一个数据位元组等等。
(3)指令暂存器IR和指令解码器ID
指令包括操作码和运算元。
指令暂存器是用来保存当前正在执行的一条指令。当执行一条指令时,先把它从记忆体中取到数据暂存器中,然后再传送到指令暂存器。当系统执行给定的指令时,必须对操作码进行解码,以确定所要求的操作,指令解码器就是负责这项工作的。其中,指令暂存器中操作码栏位的输出就是指令解码器的输入。
(4)程式计数器PC
PC用于确定下一条指令的地址,以保证程式能够连续地执行下去,因此通常又被称为指令地址计数器。在程式开始执行前必须将程式的第一条指令的记忆体单元地址(即程式的首地址)送入PC,使它总是指向下一条要执行指令的地址。
(5)地址暂存器AR
地址暂存器用于保存当前CPU所要访问的记忆体单元或I/O设备的地址。由于记忆体与CPU之间存在着速度上的差异,所以必须使用地址暂存器来保持地址信息,直到记忆体读/写操作完成为止。
显然,当CPU向存储器存数据、CPU从记忆体取数据和CPU从记忆体读出指令时,都要用到地址暂存器和数据暂存器。同样,如果把外围设备的地址作为记忆体地址单元来看的话,那幺当CPU和外围设备交换信息时,也需要用到地址暂存器和数据暂存器。