无论是通信还是电子电路,仅发送和接收一个信号是不够的。现在的电子设备需要处理大量数据,如果每次都发送每个信号,它会非常慢,并且需要为该信号布线,从而使设备变得庞大。所以,这就有了移位寄存器的用武之地。
移位寄存器在一条线上接收传输的4位和8位信号,并一一发送出去。反之亦然,它的作用是将海量的数据分拣到每一位,进行转换和传输数据,移位寄存器允许高速传输大量信号而无需大量布线。在本文中,英锐恩单片机工程师将解释此类移位寄存器。
一、什么是移位寄存器?
正如文章开头介绍的那样,移位寄存器是一种对信号进行重新排列和转换的器件,可以通过一根线实现海量信号的传输。
移位寄存器是一种集成在微处理器内部的寄存器。它用于模拟和数字电路,但一般来说,术语移位寄存器通常指的是数字移位寄存器。移位寄存器的结构是级联几个触发器,触发器是许多电路中结构最简单、最基本的一种逻辑电路,它保持“0”和“1”两种状态。
这种触发器可以分为几种类型,但移位寄存器中使用的是D触发器。D触发器在从输入端发送 1 位信号时读取(锁存)1 位信号。数据输入由时钟控制,但它会保留该 1 位信号,直到添加另一个时钟。此外,当时钟变为高电平时,输出保持信号。
在移位寄存器中,这些多个D触发器以级联方式连接。多个信号的传输方式称为并行,一个信号的传输方式称为串行。需要多少触发器取决于要保存的位数,特别是8位移位寄存器被广泛使用。
这种移位方法可以是从左到右、从右到左和双向的。然而,要移动哪种信号以及如何移动依连接方法来确定。
二、移位寄存器连接方法及其类型
移位寄存器根据输入/输出连接方式大致可分为四种,下面将做详细介绍:
①串联输入串联输出类型(SISO)
串行传输到移位寄存器的in(输入端)和out(输出端)并通过时钟控制移位1位的连接类型称为串联输入串联输出类型或SISO。
移位方向为左或右,这是移位寄存器的最基本形式,它在每次施加时钟信号时逐位移动触发器。由于每个触发器锁存1位数据,因此使用其中的4个是4位移位寄存器。这也意味着它们将按照与输入信号相同的顺序输出。
对于普通的SISO移位寄存器,每次将数据输入到输入侧的第一个触发器时,最后一个触发器中存储的1位数据都会丢失。然而,也可以创建一个保持锁存指定数据的电路。
②并联输入串联输出类型(SIPO)
串行传输输入和并行传输输出的移位寄存器称为串行输入、并行输出型或SIPO。从字面上看,它用于转换串行和并行信号。输入移位寄存器的数据是一位一位,但触发器中锁存的数据可以在输出端收集,即通过并行传输发送出去。SIPO移位寄存器将所有相连的触发器中存储的数据一起读取,即使时钟信号一次移位一位,也会读取并汇总状态。
③并行输入串行输出类型(PISO)
具有并行输入和串行传输输出的移位寄存器称为并行输入串行输出类型或PISO。同样,主要作用是在串行和并行信号之间进行转换。使用 PISO 移位寄存器时,需要一次加载多个输入信号。另外,需要通过时钟信号写数据需要LOW等控制,需要HIGH移位位,但如果只输入第一个触发器,也可以作为上述SISO移位寄存器使用。是可能的。
④并行输入并行输出类型(PIPO)
通过并行传输同时执行输入和输出的移位寄存器称为并行输入并行输出类型或PIPO。与PISO一样,多个输入信号被加载到移位寄存器中,当时钟信号变为高电平时,它们会同时移位到各自的输出端。它用于锁存特定信息,例如备份历史记录。
⑤其他移位寄存器
除了上面的连接方法,还有一个双向移位寄存器,可以改变数据移位的方向,这也称为通用移位寄存器。它还用于将SISO移位寄存器的输入和输出互连以形成循环移位寄存器并保留输入数据的应用中。
三、移位寄存器的使用
如上所述,移位寄存器用作转换串行/并行信号的接口。串行信号传输方式通常速度较快,常用于数字电路中。但是,实际的信号并不是单个的 4 位、8 位、16 位等。因此,需要先用移位寄存器将其转换为任一,然后再转换为适合接收端的信号格式。
以上就是英锐恩单片机开发工程师分享的“移位寄存器与移位寄存器的类型”。英锐恩专注单片机应用方案设计与开发,提供8位单片机、16位单片机、32位单片机。