帮忙把下面这段C语言代码改写成汇编语言

void SPI_Write(uchar dat)
{
uchar i;
CLK = 0;
for(i=0; i<8; i++)
{
DIN = dat >> 7;
dat <<= 1;
CLK = 0;

CLK = 1;

}
}
DIN=P3.4,CLK=P.36
AD转换里面的一个写操作,dat>>7那边我没法放到DIN,因为汇编里只能用SETB和CLR对P3.4进行定义

DIN EQU P3.4
CLK EQU P3.6
SPI_WRITE:
CLR CLK
MOV R2,#8
LOOP:
MOV R3,#7
LOOP1:
RR A
DJNZ R3,LOOP1
MOV C,ACC.0
MOV DIN,C
RL A
CLR CLK
SETB CLK
DJNZ R2,LOOP
RET
温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网