【STM32CubeMx你不知道的那些事】第七章:STM32CubeMx的SPI配置

  上一章我们讲了简单的I2C配置,这一章我们讲解一下SPI的配置。话不多说直接进入正题。

一、准备工作

这里我们要想配置I2C并验证需要的准备工作如下:

1、MDK for ARM(KEIL5)或者IAR FOR ARM(这个是软件必备开发平台) (必须)

2、一块STM32最小系统开发板最好有外接FLASH芯片(这个是验证软件的平台 FLASH是SPI总线接口) (必须)

3、这里最好有一本关于STM32学习的书籍(这里就不推荐了,网上有一大把)

二、具体的操作

1、工程建立

1)、在Pinout菜单栏下,SPI的选择与配置。配置如图

【STM32CubeMx你不知道的那些事】第七章:STM32CubeMx的SPI配置_第1张图片
这里我们配置了全双工的SPI。因为SPI总共由四根线组成,还有个CS片选脚要自己配置,这里我么选取了PA4作为这个SPI的片选脚。

2)、在Configuration菜单栏下,点击Connectivity下的SPI弹出配置界面,配置如图

【STM32CubeMx你不知道的那些事】第七章:STM32CubeMx的SPI配置_第2张图片

3)、生成工程

点击Project菜单栏选择Generate code,工程生成完毕。

2、工程测试

1)、在SPI.C文件下添加红色箭头代码

【STM32CubeMx你不知道的那些事】第七章:STM32CubeMx的SPI配置_第3张图片

  SPI1->CR1 |=  SPI_CR1_SPE;

这里是使能SPI,如果没有这句话。使用SPI就会硬件错误。切记!
好了这句话添加完了,我们就可以正常使用SPI了。

2)、SPI使用

unsigned char arr[3] = {0x55,0x66,0x77};
HAL_SPI_Transmit(&hspi1,arr,3,0xffff);

这里就是使用SPI发送arr这个数组三个字节,0xffff为发送超时时间。我们可以根据字节外接的SPI设备的地址来发送读写数据。

3、总结

这样I2C配置就完成了!~~~

如有什么不懂联系加QQ群:1063618791欢迎大家学习交流!

QQ:1320300083

你可能感兴趣的:(STM32CubeMx)