📄 spi.c
字号:
uchar rdbyte_spi(void) //从目标片读字节
{
uchar i ;
union bkind rwbuf;
PORTFD&=0xEF;
PORTF=PORTFD;
delay(2);
for(i=0;i<8;i++)
{
PORTFD|=0x10;
PORTF=PORTFD;
rwbuf.x<<=1;
if(PORTFbits.RF5) rwbuf.x|=0x01;
delay(2);
PORTFD&=0xEF;
PORTF=PORTFD;
delay(2);
}
return rwbuf.x;
}
void writebyte_spi(uchar trdata) //向目标片写字节
{
uchar i ;
union bkind rwbuf;
rwbuf.x=trdata;
PORTFD&=0xEF;
PORTF=PORTFD;
delay(2);
for(i=0;i<8;i++)
{
if(rwbuf.b.b7) {PORTFD|=0x40;PORTF=PORTFD; }
else { PORTFD&=0xbf;PORTF=PORTFD; }
delay(2);
PORTFD|=0x10;
PORTF=PORTFD;
rwbuf.x<<=1;
PORTFD&=0xEF;
PORTF=PORTFD;
delay(2);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -