按平台模式设计的虚拟I2C总线软件包VIIC
javascript:window.open(this.src);" style="cursor:pointer;"/>
设显示“bUAA0706”的子程序名为VSAA8。VSAA8的程序清单如下:
VSDA EQU P1.0
VSCL EQU P1.1
SLA EQU 50H
NUMBYT EQU 51H
MTD EQU 30H
VSAA8: MOV 30H,#00H;将SUBADR,COM,LED共 ;阴极段码data1~data4 ;依次装入发送缓冲区
MOV 31H,#67H
MOV 32H,#7DH
MOV 33H,#3FH
MOV 34H,#07H
MOV 35H,#3FH
MOV SLA,#70H;寻址SAA104(1)并为发送 ;状态
MOV NUMBYT,#06H;确定发送字节数
LCALL WRNBYT;调用VIIC1.0中N个字节写 ;入子程序
MOV 30H,#00H;将SUBADR,COM,data1~ ;data4依次装入发送缓冲区
MOV 31H,#67H
MOV 32H,#77H
MOV 33H,#77H
MOV 34H,#3EH
MOV 35H,#7CH
MOV SLA,#76H ; 寻址SAA1064(2)并为发 ;送状态
MOV NUMBYT,#06H ;确定发送字节数
MOV WRNBYT;调用VIIC1.0中N个字节写 ;入子程序
RET
如果要随意显示内存中的8个BCD码,可开辟显示缓冲区DISRAM,设计1个子程序,将显示缓冲区中的8个BCD码转换成共阴极段码再和SUBADR和COM一道送入MTD中,然后使用VIIC1.0的三条操作命令即可。
从上述应用可看出,使用VIIC软件包后,编写应用程序不必了解I2C总线原理、协议和时序,只要了解VIIC的应用操作即可。
Tags:
作者:佚名评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论