您现在的位置: 范文先生网 >> 理工论文 >> 电子通信论文 >> 正文

串行接口LED数码管及键盘管理器件ZLG7289A的原理与应用

时间:2007-1-20栏目:电子通信论文

十位数字到ZLG8279A

CALL SEND

MOV DATA_OUT,#10000000B ;下载数据且译码指令

CALL SEND

MOV DATA_OUT,B ;发送个位数字到ZLG8279A;

CALL SEND

SETB CS

WAIT:JNB KEY,WAIT ;等待按键松开

JMP MAIN

;**** 发送一个字节到ZLG8279A,高位在前

SEND: MOV BIT_COUNT,#8 ;记数器设定

CLR CS  ;CS置低电平

CALL LONG_DELAY ;长延时子程序

SEND_LOOP:MOV C,DATA OUT.7 ;输出1位

MOV DAT,C

SETB CLK ;CLK置高电平

MOV A,DATA_OUT ;待发送数据左移

RL A

MOV DATA_OUT,A

CALL SHORT_DELAY ; 短延时子程序

CLR CLK ; CLK置低电平

CALL SHORT_DELAY

DJNZ BIT_COUNT,SEND_LOOP ;8位是否发送完毕

CLR DAT ;发送完毕,返回

RET

;***接收一个字节到ZLG8279A,高位在前

RECEIVE:MOV BIT_COUNT,#8 ;记数器设定

SETB DAT ;设定P1.2(DATA)为高电平输入状态

CALL LONG_DELAY ;

RECEIVE_LOOP: SETB CLK ; CLK置高电平

CALL SHORT_DELAY

MOV A,DATA_IN ;数据左移

RL A

MOV DATA_IN,A

MOV C,DAT ;读取一位数据

MOV DATA_IN.0,C

CLR CLK

CALL SHORT_DELAY

DJNZ BIT_COUNT,RECEIVE_LOOP ; 8位是否接收完毕

CLR DAT ; 重设DAT口为低电平(输出状态)

RET

;**************延时子程序

上一页  [1] [2] [3] [4] [5] [6] 下一页

下页更精彩:1 2 3 4 下一页