移位寄存器的串行扩展技术编者按:移位寄存器的串行扩展技术是单片机串行口扩展的一种常用方法
对于MCS-51系列单片机而言,将串口置为工作方式0,串口便工作在移位寄存器方式下了
此时,单片机的RXD口作串行数据的发送/接收口,TXD口作移位脉冲输出口
利用单片机串口的这一特性,可以十分方便地扩展I/O口线,本文便是一例
通过本例,读者除了可以加深对串口工作方式0的理解外,还可以举一反三,将之用于其他需要进行I/O口扩展的场合,比如用串口扩展键盘等
遥控数码报时闹钟CD4094是带输出锁存和三态控制的串入/并出高速转换器,具有使用简单、功耗低、驱动能力强和控制灵活等优点
CD4094的引脚定义如图1
其中{1}脚为锁存端,{2}脚为串行数据输入端,{3}脚为串行时钟端
{1}脚为高电平时,8位并行输出口Q1~Q8在时钟的上升沿随串行输入而变化;{1}脚为低电平时,输出锁定
利用锁存端可方便地进行片选和级联输出控制
{15}脚为并行输出状态控制端,{15}脚为低电平时,并行输出端处在高阻状态,在用CD4094作显示输出时,可使显示数码闪烁
{9}脚QS、{10}脚Q′S是串行数据输出端,用于级联
QS端在第9个串行时钟的上升沿开始输出,Q′S端在第9个串行时钟的下降沿开始输出
当CD4094电源为5V时,输出电流大于3.2mA,灌电流为1mA
串行时钟频率可达2.5MHz
1.CD4094作静态LED显示驱动器图2为用CD4094作驱动器的三位数码管静态显示电路略图
单片机串口工作在方式0,即移位寄存器方式
输出数据首先送到IC1,第二次输出的数据移至IC1时,先前输出数据则移到IC2,依此类推
输出三次后,在IC1、IC2、IC3的Q1~Q8口分别得到数据3、数据2、数据1
程序如下:(DISP为显示子程序)..................MOVSCON,#00H;置串口为