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); 				    
}
相关推荐
Aaron15885 小时前
无人机反制中AOA+TDOA联合定位技术与雷达探测定位技术的应用对比分析
arm开发·嵌入式硬件·fpga开发·硬件工程·无人机·信息与通信·信号处理
foundbug9996 小时前
STM32 睡眠模式测试程序
stm32·单片机·嵌入式硬件
嵌入式小站9 小时前
STM32 零基础可移植教程 18:I2C 入门,先用扫描器找一找总线上有没有设备
chrome·stm32·嵌入式硬件
天涯铭10 小时前
深入浅出:单片机I/O口串联电阻选型
单片机·嵌入式硬件·io口串联电阻
国科安芯11 小时前
ASP7A84AS——航天级低噪声高PSRR线性稳压器
网络·单片机·嵌入式硬件·架构·安全性测试
普中科技11 小时前
【普中STM32F1xx开发攻略--标准库版】-- 第 42 章 STM32 内部 FLASH 实验
stm32·单片机·嵌入式硬件·开发板·普中科技·内部flash
不做无法实现的梦~12 小时前
CLion+pyocd配置教程
嵌入式硬件
破晓单片机13 小时前
012、STM32项目分享:智能台灯系统
stm32·单片机·嵌入式硬件
悠哉悠哉愿意14 小时前
【单片机复习笔记】十五届国赛复盘
笔记·单片机·嵌入式硬件·学习
是温不嗜温14 小时前
芯茂微 LP7012 双重过流保护机制拆解:DESAT 单次锁存 vs OCP 连续 5 次锁存有何区别?
嵌入式硬件·开闭原则·电源管理·电源芯片·ac-dc