HAL库怎么使用SPI通信

 时间:2024-10-11 22:38:54

1、第一步:新建或者打开一个HAL工程,在Pinout页右侧的“Configuration ->Peripherals”下找到需要使用的SPI外设,选择“Mode”右侧的下拉框,Full-Duplex Master为主机全双工通信。Hardware NSS Signal为使能端口硬件控制选择,建议Disable,使用软件控制使能端口。 选择完毕后会在右侧的引脚图中显示出端口配置。

HAL库怎么使用SPI通信

2、第二步:因为这里没有使用硬件使能控制,所以还需要配置一个使能端口,这里就使用SPI的NSS端口进行配置,在右侧的引脚图中找到这个端口比如PA4,然后选择“GPIO_Output”。

HAL库怎么使用SPI通信

3、使能端口配置完毕后再左侧的SPI配置中会显示一个突出的红色,这个是提示用户硬件SPI的使能端口被占用了,可以不予理会。

HAL库怎么使用SPI通信

5、第四步:切换到“Configuration”页,找到对应的“SPI”。

HAL库怎么使用SPI通信

7、第六步:继续切换到“GPIO Settings”,这里可以配置SPI各端口的模式,由于前面已经配置了SPI,一般只需要考虑MISO是否开启上拉,以及MOSI和CLK端口的通信速率。 配置完毕后不要忘记点击“OK”确认配置。

HAL库怎么使用SPI通信

9、第八步:使用Keil5打开工程,可以看到在软件初始化的代码中有MX_SPIx_Init(),注意如果软件中使用了FATFS那么需要自己手动把SPI的初始化放到FATFS的初始化前面。

HAL库怎么使用SPI通信

11、对于接收数据,可以使用HAL_SPI_Receive()函数,参数和HAL_SPI_Transmit类似,但个人建议使用HAL_SPI_TransmitReceive()函数,因为HAL_SPI_Receive只管收,而SPI通信不管是收还是发都会发送一次数据,这回导致在接收数据时发送一个不可知的数据造成通信异常。

HAL库怎么使用SPI通信
  • windows上 subst 命令的使用
  • 华硕zx50加装ngff固态硬盘
  • Python如何判断两个浮点数是否相等#校园分享#
  • 系统分区进行4K对齐可加快Windows10的开机速度
  • 下载安装号称windows下最强的实用工具Dism++
  • 热门搜索
    function是什么意思 苏菲是什么 报考公务员需要什么条件 手机反应慢是什么原因 crt是什么意思 什么牌子电视好 version什么意思 牵引挂车是什么意思 烤肉的腌制 避孕套有什么用