谁能帮我写下用8051单片机的串行口外接串入并出的芯片CD4094的程序的注释

谁能帮我写下用8051单片机的串行口外接串入并出的芯片CD4094的程序的注释,第1张

#include<reg51.h>

sbit p1_0=p1^o//管脚定义,可能是光耦三极管,错把字母o当成数字0

void main()

{

unsigned char i,j

SCON=0x00//串口工作方式0,允许接收

j=0x01//要从串口发送的数据

for()//死循环,相当于while(1)

{

p1_0=0

SBUF=j//j送到SBUF,从串口发送

while(!TI) { }//等待发送完成

p1_0=0TI=0//TI软件清0

for ( i=0i<=254i++) { }//延时

j=j*2//左移一位,即led灯往左轮流亮

if (j= =0x00) j=0x01//一轮左移完成,从头再次左移,循环左移

}

}

可以使用位 *** 作指令,使用并行口来模拟串行口,达到向“串入并出寄存器”输入数据的目的

发送ACC到4094的子程序如下:

SEND_ACC:

MOV R2, #8

S_LOOP:

RRC A A中的最低位移动到C

MOV P3.3, C 移动到D口

NOP

CLR P3.4 P3.4输出一个脉冲

NOP

NOP

SETB P3.4

DJNZ R2, S_LOOP

RET


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11144438.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存