hithfy 发表于 2015-9-17 10:16:11

cube配置SPI的相关问题(菜鸟提问O(∩_∩)O)

1.HAL_SPI_MspInit(&hspi1)---用cube设置好后,这句话需要提到主函数的初始化中吗,还是说不用了(因为在msp.c中有这句话了啊)而直接按照cube生成的就行了,然后在用户代码区写入自己的函数即可?
2.这个MSP.c文件有什么作用?(麻烦详解啊)

creep 发表于 2015-9-17 10:26:51

HAL_SPI_MspInit(&hspi1)会在HAL_SPI_Init(&hspi1)中被调用,所以不需要自己调用了。

hithfy 发表于 2015-9-17 10:49:07

creep 发表于 2015-9-17 10:26
HAL_SPI_MspInit(&hspi1)会在HAL_SPI_Init(&hspi1)中被调用,所以不需要自己调用了。

恩,谢谢,刚刚也在找到了。还有这个stm32l1xx_hal_spi.c和stm32l1xx_hal_spi_ex.c这俩源文件有什么区别,刚刚又单独建立了一个调试SPI的新工程(cube),打开HAL_SPI_Init(&hspi1)发现是这个函数,这个函数如下(位于stm32l1xx_hal_spi.c):
__weak HAL_StatusTypeDef HAL_SPI_Init(SPI_HandleTypeDef *hspi)
{
return HAL_ERROR;
}
这个是什么情况啊??

creep 发表于 2015-9-17 11:10:47

可以把stm32l1xx_hal_spi.c看作是一些基础的API函数,stm32l1xx_hal_spi_ex.c是一些扩展的API函数,可以根据需要去使用合适的库函数。
下面的这个函数是不是cube配置的不正确导致的,我没用过cube生成代码,不太清楚什么状况!
/*******************************/
__weak HAL_StatusTypeDef HAL_SPI_Init(SPI_HandleTypeDef *hspi)
{
return HAL_ERROR;
}
/******************************************/

hithfy 发表于 2015-9-17 11:43:42

creep 发表于 2015-9-17 11:10
可以把stm32l1xx_hal_spi.c看作是一些基础的API函数,stm32l1xx_hal_spi_ex.c是一些扩展的API函数,可以根 ...

恩,谢谢!:),上面提到的这个函数HAL_SPI_Init(SPI_HandleTypeDef *hspi)在stm32l1xx_hal_spi_ex.c调用了,但是就是追中定义的源头会跑到stm32l1xx_hal_spi.c里面的__weak HAL_StatusTypeDef HAL_SPI_Init(SPI_HandleTypeDef *hspi),确实没怎么搞懂
页: [1]
查看完整版本: cube配置SPI的相关问题(菜鸟提问O(∩_∩)O)