97人妻精品一区二区三区软件,人妻偷拍在线,插丝袜美女小穴视频,美女午夜福利在线

      • <i id="89dc3"></i>
        當(dāng)前位置: 首頁 >應(yīng)用方案 >技術(shù)應(yīng)用 >

        基于STM32核心板E01和E01C無線模塊驅(qū)動移植案例教程2

        基于STM32F103C8T6核心板的E01系列無線模塊(nRF24L01P方案)和E01C系列無線模塊(SI24R1芯片方案)的EBYTE官網(wǎng)例程移植。我們在《基于STM32核心板E01和E01C無線模塊驅(qū)動移植案例教程1》一文中,我們介紹了STM32F103C8T6核心板無線模塊驅(qū)動移植案例簡介、硬件環(huán)境、軟件環(huán)境、基于STM32方案無線射頻模塊簡介以及STM32開發(fā)環(huán)境配置實驗步驟,本文我們主要介紹基于STM32核心板無線模塊的驅(qū)動移植步驟教程。

        1、代碼移植

        ①、完成《基于STM32核心板E01和E01C無線模塊驅(qū)動移植案例教程1》一文中的案例步驟后,已經(jīng)打開了創(chuàng)建的工程,先進(jìn)行首次編譯,查看是否有編譯錯誤。

        正常的編譯結(jié)果應(yīng)該是0 Error(s), 0 Warning(s)。

        20  STM32方案模塊驅(qū)動移植案

        ②、實現(xiàn)串口重定向,修改usart。c和usart。h文件

        usart.c中修改兩個位置。

        一個是在/* USER CODE BEGIN 0 */和/* USER CODE END 0 */之間新添加如下代碼:

        21  STM32方案模塊驅(qū)動移植案

        另一個是修改void MX_USART1_UART_Init(void)函數(shù),在該函數(shù)中的  

        /* USER CODE BEGIN USART1_Init 2 */和  /* USER CODE END USART1_Init 2 */之間加入代碼:

        22  STM32方案模塊驅(qū)動移植案

        Usart.h中,需要包含stdio.h,在/* USER CODE BEGIN Includes */和/* USER CODE END Includes */之間加入代碼:

        23  STM32方案模塊驅(qū)動移植案

        Usart.h中,在/* USER CODE BEGIN Private defines */和/* USER CODE END Private defines */之間加入代碼:

        24  STM32方案模塊驅(qū)動移植案

        啟用MicroLIB

        25  STM32方案模塊驅(qū)動移植案

        ③、在創(chuàng)建的工程路徑下,新建一個名為MyFiles的文件夾,并將例程中的如下文件均復(fù)制到MyFiles文件夾中。

        26  STM32方案模塊驅(qū)動移植案
        27  STM32方案模塊驅(qū)動移植案

        ④、添加MyFiles的文件夾路徑到工程

        28  STM32方案模塊驅(qū)動移植案

        ⑤、在工程中新建文件夾,并將復(fù)制的文件添加到工程之中

        29  STM32方案模塊驅(qū)動移植案

        ⑥、修改添加到MyFiles文件夾下的所有.c和.h文件

        由于涉及到的修改較多,不做一一介紹,直接給出修改后的該文件夾下的所有文件附件。附件見文末的附件MyFiles。

        ⑦、修改main.c文件

        /* USER CODE BEGIN Includes */和/* USER CODE END Includes */之間添加為app。h 和bsp。h的包含:

        30  STM32方案模塊驅(qū)動移植案
        31   STM32方案模塊驅(qū)動移植案

        添加USART1的接收和發(fā)送中斷回調(diào)函數(shù),

        /* USER CODE BEGIN 4 */和/* USER CODE END 4 */加入代碼:

        32  STM32方案模塊驅(qū)動移植案

        ⑧、修改stm32f1xx_it.c文件

        添加對app.h的包含,在/* USER CODE BEGIN Includes */和/* USER CODE END Includes */之間加入代碼:

        33  STM32方案模塊驅(qū)動移植案

        修改void SysTick_Handler(void)函數(shù),

         /* USER CODE BEGIN SysTick_IRQn 1 */和/* USER CODE END SysTick_IRQn 1 */之間加入:

        34  STM32方案模塊驅(qū)動移植案

        至此,程序移植已經(jīng)全部完成,再次重新編譯。如果出現(xiàn)warning:  #1-D: last line of file ends without a newline這個警告,請在該文件最后一行添加新行。

        2、通信驗證

        ①、程序下載

        ST-LINK的下載接口與STM32核心板的下載接口連接,對應(yīng)接線如下:

        35  STM32方案模塊驅(qū)動移植案

        Debug配置

        36  STM32方案模塊驅(qū)動移植案

        配置完成后,點擊LOAD進(jìn)行下載

        37  STM32方案模塊驅(qū)動移植案

        下載成功后,會出現(xiàn)如下提示:

        38  STM32方案模塊驅(qū)動移植案

        ②、硬件連接

        建議在接線過程中斷電操作。STM32核心板的供電使用自帶的USB接口供電。

        STM32核心板與E01-ML01D無線模塊連接

        39  STM32方案模塊驅(qū)動移植案

        STM32核心板與USB轉(zhuǎn)TTL工具連接

        40  STM32方案模塊驅(qū)動移植案

        ③、通信測試

        STM32核心板通過USB接口供電,USB轉(zhuǎn)TTL轉(zhuǎn)接板模塊工具連接上電腦上的串口調(diào)試助手。串口調(diào)試助手配置如下:

        41 STM32方案模塊驅(qū)動移植案

        STM32核心板復(fù)位,它首先會檢查與E01-ML01D無線模塊的連接。如果連接成功,則會打印Link successful。如果鏈接失敗,則會打印Link Fail Please check and reset module。最大連接次數(shù)為6次,每次連接會打印當(dāng)前連接次數(shù)。

        42 STM32方案模塊驅(qū)動移植案

        數(shù)據(jù)發(fā)送和接收,例程使用了nRF24L01P的ACK功能,所以在發(fā)送成功則會打印Send TX_DS,發(fā)送失敗會打印Send MAX_RT。

        43 STM32方案模塊驅(qū)動移植案

        3、STM32核心板E01-ML01D無線模塊驅(qū)動移植方案

        以上實驗中,實現(xiàn)了基于STM32F103C8T6核心板的E01-ML01D的驅(qū)動移植以及通信驗證,其中的E01-ML01D可以替換為任意型號的nRF24L01P方案或者Si24R1方案的無線射頻模塊。也可以稍加修改,適用于其他STM32系列的MCU。

        以上就是全部的《基于STM32的E01和E01C驅(qū)動移植教程案例》。



        今天的分享就到這里啦,EBYTE每一天都致力于更好的助力物聯(lián)化、智能化、自動化的發(fā)展,提升資源利用率,更多無線射頻模塊和無線通信技術(shù)資料,感興趣的小伙伴可以登錄我們的億佰特官網(wǎng)進(jìn)行了解,也可以直接撥打400電話咨詢技術(shù)專員!


        相關(guān)閱讀:

        1、STM8L系列單片機在無線通信模塊產(chǎn)品中的應(yīng)用

        2、零基礎(chǔ)搭建基于STM32單片機的M系列LoRa模塊透傳教程一

        3、基于STM32F103+MAX4003的射頻功率表制作

        4、一文了解STM32的工作原理及各部件作用


        點擊撥打: 億佰特官網(wǎng) 4000-330-990