微控 微型控制器的基本功用

微型控制器(微控)的基本功用
【微控 微型控制器的基本功用】

微控 微型控制器的基本功用

文章插图

微控制器(MicroController)又可简称MCU或μC , 也有人称为单芯片微控制器(Single Chip Microcontroller) , 将ROM、RAM、CPU、I/O集合在同一个芯片中,为不同的应用场合做不同组合控制 。 微控制器在经过这几年不断地研究、发展 , 历经4位、8位 , 到如今的16位及32位 , 甚至64位 。 产品的成熟度 , 以及投入厂商之多、应用范围之广 , 真可谓之空前 。 在国外大厂因开发较早、产品线广 , 所以技术领先 , 而本土厂商则以多功能为产品导向取胜 。
基本功能
数据缓冲:由于I/O设备的速率较低而CPU和内存的速率却很高 , 故在控制器中必须设置一缓冲器 。 在输出时 , 用此缓冲器暂存由主机高速传来的数据 , 然后才以I/O设备所具有的速率将缓冲器中的数据传送给I/O设备;在输入时 , 缓冲器则用于暂存从I/O设备送来的数据 , 待接收到一批数据后 , 再将缓冲器中的数据高速地传送给主机 。
差错控制:设备控制器还兼管对由I/O设备传送来的数据进行差错检测 。 若发现传送中出现了错误 , 通常是将差错检测码置位 , 并向 CPU报告 , 于是CPU将本次传送来的数据作废 , 并重新进行一次传送 。 这样便可保证数据输入的正确性 。
数据交换:这是指实现CPU与控制器之间、控制器与设备之间的数据交换 。 对于前者 , 是通过数据总线 , 由CPU并行地把数据写入控制器 , 或从控制器中并行地读出数据;对于后者 , 是设备将数据输入到控制器 , 或从控制器传送给设备 。 为此 , 在控制器中须设置数据寄存器 。
状态说明:标识和报告设备的状态控制器应记下设备的状态供CPU了解 。 例如 , 仅当该设备处于发送就绪状态时 , CPU才能启动控制器从设备中读出数据 。 为此 , 在控制器中应设置一状态寄存器 , 用其中的每一位来反映设备的某一种状态 。 当CPU将该寄存器的内容读入后 , 便可了解该设备的状态 。
接收和识别命令:CPU可以向控制器发送多种不同的命令 , 设备控制器应能接收并识别这些命令 。 为此 , 在控制器中应具有相应的控制寄存器 , 用来存放接收的命令和参数 , 并对所接收的命令进行译码 。 例如 , 磁盘控制器可以接收CPU发来的Read、Write、Format等15条不同的命令 , 而且有些命令还带有参数;相应地 , 在磁盘控制器中有多个寄存器和命令译码器等 。
地址识别:就像内存中的每一个单元都有一个地址一样 , 系统中的每一个设备也都有一个地址 , 而设备控制器又必须能够识别它所控制的每个设备的地址 。 此外 , 为使CPU能向(或从)寄存器中写入(或读出)数据 , 这些寄存器都应具有唯一的地址 。