spimaster.c
来自「用单片机的SPI串口实现数据发送和接收的C语言代码」· C语言 代码 · 共 50 行
C
50 行
#include <avr/io.h>
void SPI_MasterInit(void);
void SPI_MasterTransmit(char cData);
void DelayMs(long int);
main(void)
{
SPI_MasterInit();
DelayMs(200);
PORTB&=~(1<<4);
while(1)
{
SPI_MasterTransmit(0x6e);
DelayMs(5);
SPI_MasterTransmit(0x69);
DelayMs(5);
SPI_MasterTransmit(0x68);
DelayMs(5);
SPI_MasterTransmit(0x61);
DelayMs(5);
SPI_MasterTransmit(0x6f);
DelayMs(5);
SPI_MasterTransmit(0x20);
DelayMs(1000);
}
}
void SPI_MasterInit(void)
{
DDRB=0xB8;
PORTB|=(1<<4);
SPCR=(1<<SPE)|(1<<MSTR)|(1<<SPR0);
}
void SPI_MasterTransmit(char cData)
{
SPDR=cData;
while(!(SPSR&(1<<SPIF)))
;
}
void DelayMs(long int s)
{
int t;
while(s--)
{
for(t=1000;t>0;t--)
;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?