1、移位寄存器的串行扩展技术编者按:移位寄存器的串行扩展技术是单片机串行口扩展的一种常用方法。对于系列单片机而言,将串口置为工作方式,串口便工作在移位寄存器方式下了。此时,单片机的口作串行数据的发送接收口,口作移位脉冲输出口。利用单片机串口的这一特性,可以十分方便地扩展口线,本文便是一例。通过本例,读者除了可以加深对串口工作方式的理解外,还可以举一反三,将之用于其他需要进行口扩展的场合,比如用串口扩展键盘等。遥控数码报时闹钟是带输出锁存和三态控制的串入并出高速转换器,具有使用简单、功耗低、驱动能力强和控制灵活等优点。的引脚定义如图。其中1脚为锁存端,2脚为串行数据输入端,3脚为串行时钟端。1脚为高
2、电平时,位并行输出口在时钟的上升沿随串行输入而变化;1 脚为低电平时,输出锁定。利用锁存端可方便地进行片选和级联输出控制。15脚为并行输出状态控制端,15 脚为低电平时,并行输出端处在高阻状态,在用作显示输出时,可使显示数码闪烁。9脚、10脚是串行数据输出端,用于级联。端在第个串行时钟的上升沿开始输出,端在第个串行时钟的下降沿开始输出。当电源为 时,输出电流大于,灌电流为 。串行时钟频率可达。 作静态显示驱动器图为用作驱动器的三位数码管静态显示电路略图。单片机串口工作在方式,即移位寄存器方式。输出数据首先送到,第二次输出的数据移至时,先前输出数据则移到,依此类推。输出三次后,在、的口分别得到数
3、据、数据、数据。程序如下:(为显示子程序) , ;置串口为方式: ;输出锁存 , ;显示值送、 , ;置数码管个数: , , ;置字段码表首址 , ;查字段码表 , ;送字段码J ,$ ;等待传送结束 ;清串行中断标志 ;显缓区地址加 , ;显示数码是否取完? ;允许输出显示 ;输出锁存 : , ,说明:在串行口不作为其他使用,且显示的更新速度很低时,端可以始终接高;也可将口接到的15脚,从口输出一定频率的脉冲,使显示闪烁。 作动态显示驱动器用一片作段驱动,一片作位驱动,驱动位带小数点的数码管(见图)。程序如下:(为显示子程序) ;置串口为方式: ;输出锁存 , ;显缓区首址送 , ;置数码管个数为 , ;送位码初值: , ;取位码 , ;送位码 ;等待传送结束 ;清串行中断标志 , ;取段码 , ;置段码表首址 , ;查段码表 , ;送段码 ;等待传送结束 ;清串行中断标志 ;允许输出显示 ;延时 , ;取位码 ;位码左移一位 , ;显缓区地址加 ;输出锁存 , ;位显示完否?: , ;延时 (osc): , , $ , : , ,