91视频免费?看_蜜芽MY188精品TV在线观看_国产免费无遮挡在线观看视频_深夜国产_亚洲精品欧洲精品_欧美黑人粗暴多交

程序小白
認證:優質創作者
所在專題目錄 查看專題
RT-Thread驅動之路:stm32設備驅動開發之SPI總線操作方法③
RT-Thread驅動之路:stm32設備驅動開發之HWTIMER開發①
RT-Thread驅動之路: Studio硬件移植篇①
RT-Thread驅動之路:Studio修改時鐘篇②
RT-Thread驅動之路: Studio初始化SPI總線③
RT-Thread驅動之路: Studio 掛載通用SPI flash④
作者動態 更多
基于stm32采用PWM驅動伺服控制器學習筆記
05-13 15:25
基于STM32驅動TM1638學習筆記——軟件篇
04-19 12:42
基于TM1638驅動8位數碼管設計分享
02-24 11:26
RT-Thread驅動之路: Studio創建FAL分區⑤
01-02 08:30
RT-Thread驅動之路: Studio 掛載通用SPI flash④
2024-12-23 13:41

RT-Thread驅動之路: Studio初始化SPI總線③

      創建SPI總線之前,我們需要指導怎樣才算總線初始化成功了可用呢,系統提供了list device命令可以打印出當前設備列表:

      接下來就是如何真正的初始化SPI控制器了,其實很簡單按照如下步驟走就可以:

      1.打開SPI設備框架,該部分位于系統設置的組件選項卡里面,使用SPI總線/設備驅動程序。

      這一步只是打開了純粹的軟件設備框架,一般MCU會有多個SPI控制器,接下來需要打開你需要的那個SPI控制器

      2.定義關聯真實SPI控制器的宏,位于board.h文件中,默認是被注釋狀態,打開即可:

      3.需要借助cubemx軟件對SPI的gpio部分完成初始化,首先配置對應的SPI控制器,完成之后就是需要電機生成代碼來生成對應的控制器代碼,生成的代碼為void HAL_SPI_MspInit(SPI_HandleTypeDef* hspi)函數,這個函數位于stm32f4xx_hal_msp.c文件中,把他復制到board.c文件中,生成的代碼如下:

void HAL_SPI_MspInit(SPI_HandleTypeDef* hspi)
{
  GPIO_InitTypeDef GPIO_InitStruct = {0};
  if(hspi->Instance==SPI2)
  {
  /* USER CODE BEGIN SPI2_MspInit 0 */

  /* USER CODE END SPI2_MspInit 0 */
    /* Peripheral clock enable */
    __HAL_RCC_SPI2_CLK_ENABLE();

    __HAL_RCC_GPIOB_CLK_ENABLE();
    /**SPI2 GPIO Configuration
    PB13     ------> SPI2_SCK
    PB14     ------> SPI2_MISO
    PB15     ------> SPI2_MOSI
    */
    GPIO_InitStruct.Pin = GPIO_PIN_13|GPIO_PIN_14|GPIO_PIN_15;
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
    GPIO_InitStruct.Pull = GPIO_NOPULL;
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
    GPIO_InitStruct.Alternate = GPIO_AF5_SPI2;
    HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);

  /* USER CODE BEGIN SPI2_MspInit 1 */

  /* USER CODE END SPI2_MspInit 1 */
  }

}

      4.代碼移植完以后,還需要打開SPI控制器hal庫的支持宏:

      到這里就完成了SPI的移植的所有工作,接下來就是編譯整個工程,檢查沒有錯誤后,通過仿真器下載到硬件里面,打開終端串口,輸入list device命令,我們從列表里面如果可以看到SPI設備的話就是初始化成功了:

      本篇到這里就結束了,感謝閱讀!

聲明:本內容為作者獨立觀點,不代表電子星球立場。未經允許不得轉載。授權事宜與稿件投訴,請聯系:editor@netbroad.com
覺得內容不錯的朋友,別忘了一鍵三連哦!
贊 4
收藏 6
關注 151
成為作者 賺取收益
全部留言
0/200
成為第一個和作者交流的人吧
主站蜘蛛池模板: 浦县| 阜阳市| 丘北县| 巢湖市| 湘乡市| 武城县| 榕江县| 阳朔县| 上虞市| 含山县| 西充县| 防城港市| 安阳市| 关岭| 甘洛县| 郁南县| 广州市| 东乌珠穆沁旗| 潢川县| 定结县| 左云县| 广宗县| 衡南县| 德格县| 马关县| 汾西县| 乐安县| 黄冈市| 同江市| 珲春市| 韶山市| 易门县| 鄂伦春自治旗| 松溪县| 麻阳| 八宿县| 甘洛县| 新干县| 温州市| 湘潭市| 青川县|