spi.c
来自「PIC单片机模拟SPI口」· C语言 代码 · 共 42 行
C
42 行
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 + =
减小字号Ctrl + -
显示快捷键?