您的位置 首页 嵌入式

详解虚拟I2C总线串行显现电路

本文主要介绍了虚拟I2C总线串行显示电路,其中包括SAA1064引脚功能介绍、硬件电路设计、片内可编程功能以及程序举例。1.SAA1064引脚功能① VDD、VEE:

本文首要介绍了虚拟I2C总线串行显现电路,其间包含SAA1064引脚功用介绍、硬件电路设计、片内可编程功用以及程序举例。

1.SAA1064引脚功用

① VDD、VEE:电源、接地端。电源4.5~15V;

② P1~P16:段驱动输出端。分为两个8位口:

P1~P8;P9~P16。P8、P16为高位。口锁存用具有反相功用,置1时,端口输出0。

③ MX1、MX2:位码驱动端。静态显现驱动时,一片SAA1064可驱动二位LED数码管;动态显现驱动时,按图9-10衔接方法,一片SAA1064可驱动四位LED数码管;

④ SDA、SCL:I2C总线数据端、时钟端;

⑤ CEXT:时钟振荡器外接电容,典型值2700pF

⑥ ADR:地址引脚端。SAA1064引脚地址A1、A0选用ADR模仿电压比较编址。当ADR引脚电平为0、3VDD/8,5VDD/8、VDD时,相应引脚地址A2、A1、A0 分别为000、001、010、011;

2.硬件电路设计


3.片内可编程功用


CO: 静动态操控,C0=1,动态显现,动态显现时,data1、data2轮番从P8~P1输出,data3、data4轮番从P16~P9输出;

C1: 显现位1、3亮暗挑选,C1=1,挑选亮;

C2: 显现位2、4亮暗挑选,C2=1,挑选亮;

C3: 测验位,C3=1,一切段亮;

C4、C5、C6: 驱动电流操控位,C4、C5、C6分别为1时,驱动电流分别为3mA、6mA、12mA;C4、C5、C6全为1时,驱动电流最大,可达21mA。

⑶ 写数据操作格局


赤色部分由80C51发送,SAA1064接纳;黑色部分由SAA1064发送,80C51接纳。

SLAW为写SAA1064寻址字节,

按图所示衔接电路:SAA1064(1)SLAW=01110000B;SAA1064(2)SLAW=01110110B。其间 0111(D7~4)为SAA1064器材地址,D3~1为A2A1A0寻址字节,末位D0为R/W;SADR为片内寄存器地址;COM为操控指令。

4.程序设计

例:已知8位显现符(共阴编码)已顺次存入内RAM 51H~58H中,试按图9-10编程将其输入SAA1064(1),(2)动态显现,驱动电流为12mA。设VIIC软件包已装入 ROM,VSDA.VSCL.SLA.NUMB.MTD.MRD均已按8.3.2软件包小结中协议界说。

VSAA: MOV MTD,#00H ;置SAA1064操控指令寄存器COM片内人地址

MOV 31H,#01000111B;置操控指令字,动态显现,驱动电流12mA

MOV NUMB,#6 ;置发送数据数:SADR+COM+data1~4=6

SAA1: MOV RO,#51H ;将51H~54H显现符数据移至32H~35H

LCALL MOVB ;

MOV SLA,#01110000B;置SAA1064(1)写寻址字节SLAW

LCALL WRNB ;发送给SAA1064(1)

SAA2: MOV R0,#55H ;将55H~58H显现符数据移至32H~35H

LCALL MOVB ;

MOV SLA,#01110110B;置SAA1064(2)寻址字节SLAW

LCALL WRNB ;发送给SAA1064(2)

RET ;

MOVB: MOV R1,#32H ;显现符数据移至32H~35H子程序

MOVB1:MOV A,@R0 ;读出

MOV @R1,A ;存入

INC RO ;指向下一读出单元

INC R1 ;指向下一存入单元

CJNE R1,#36H,MOVB1 ;判4个数据移完否?未完持续

RET ;

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qianrushi/146053.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部