init_spi.h
来自「STM32_LCD5110资料」· C头文件 代码 · 共 37 行
H
37 行
#ifndef _INIT_SPI_
#define _INIT_SPI
void Init_SPI(void)
{
SPI_InitTypeDef SPI_InitStructure; /* 定义 SPI 初始化结构体 */
SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex;//SPI 设置为双线双向全双工
SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b;//SPI 发送接收 8 位帧结构
SPI_InitStructure.SPI_CPOL = SPI_CPOL_Low;//时钟空闲时保持低电平
SPI_InitStructure.SPI_CPHA = SPI_CPHA_2Edge;//数据捕获于第二个时钟沿
SPI_InitStructure.SPI_NSS = SPI_NSS_Soft;//内部 NSS 信号由 SSI 位控制
SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_4;//波特率预分频值为 4
SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB;//数据传输从 MSB 位开始
SPI_InitStructure.SPI_CRCPolynomial = 7;//用于 CRC 值计算的多项式
SPI_InitStructure.SPI_Mode = SPI_Mode_Master;//设置 SPI2 为主机
SPI_Cmd(SPI2, ENABLE);//使能 SPI2
SPI_Init(SPI2, &SPI_InitStructure);
}
/*void SPI2_SendByte(unsigned char byte) //SPI数据发送函数
{
SPI_I2S_SendData(SPI2, byte); // SPI2 发送一个字节
while(SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_TXE) == RESET); // 等待 SPI2 发送完毕
}*/
/*unsigned char SPI2_ReadByte(void)
{
unsigned char dt = 0;
while(SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_RXNE) == RESET);// 等待 SPI2 接收数据完毕
dt = SPI_I2S_ReceiveData(SPI2);// 读出 SPI2 接收的数据
return dt;
}*/
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?