LL库-使用SPI

LL库-使用SPI

前言

  • 使用STM32CubeMX生成的代码,通常不能直接使用。

SPI

  • 以SPI2为例。在STM32CubeMX自动生成代码之后:
  • MX_SPI2_Init最后添加:
c 复制代码
  /* USER CODE BEGIN SPI2_Init 2 */
	LL_SPI_Enable(SPI2);
//	LL_SPI_TransmitData8(0xff);            // 有的设备加这句 读不到正确的ID
  /* USER CODE END SPI2_Init 2 */
  • MX_SPI2_Init外添加:
c 复制代码
uint8_t SPI2_ReadWriteByte(uint8_t TxData)
{		
	uint8_t retry = 0;				 
	/* Check if Tx buffer is empty */
	while (!LL_SPI_IsActiveFlag_TXE(SPI2)) 
	{
		retry++;
		if(retry > 200) return 0;
	}			  
	/* Write character in Data register.
	TXE flag is cleared by reading data in DR register */
	LL_SPI_TransmitData8(SPI2, TxData);
	retry = 0;
	/* Check if Rx buffer is not empty */
	while (!LL_SPI_IsActiveFlag_RXNE(SPI2)) 
	{
		retry++;
		if(retry > 200) return 0;
	}	  						    
	/* received byte from SPI lines. */
	return LL_SPI_ReceiveData8(SPI2); 				    
}
相关推荐
潜创微科技11 小时前
IT66353:3 进 1 出 HDMI2.0 18Gbps 重定时器切换芯片方案
嵌入式硬件·音视频
m0_3771081411 小时前
51单片机串口
单片机·嵌入式硬件·51单片机
Deitymoon11 小时前
STM32——I2C协议
stm32·单片机·嵌入式硬件
YONYON-R&D11 小时前
KSZ8863RLLI 与STM32F407接口
单片机·嵌入式硬件
XMAIPC_Robot12 小时前
180FPS AI相机模组,轻巧大算力, 高性能双目同步摄像模组+搭配RK3588
人工智能·嵌入式硬件·深度学习·数码相机·fpga开发
LingLong_roar12 小时前
使用 ESP8266 + Arduino IDE + ST7789 240*240 OLED 显示屏实现显示“Hello World!”
单片机·嵌入式硬件
星夜夏空9912 小时前
STM32单片机学习(1)——keil5安装以及环境部署
stm32·单片机·学习
kaikaile199512 小时前
STM32 + ADS1256 24位高精度ADC驱动测试程序
stm32·单片机·嵌入式硬件
搁浅小泽13 小时前
PCBA生产工艺流程
单片机·嵌入式硬件·可靠性工程师
GQli20481 天前
一天看懂一个原理图(day7)电源输入部分
单片机·嵌入式硬件