91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

教程:只需六步,將Hal庫移植到標準庫

9GxC_IoTMaker ? 來源:未知 ? 作者:胡薇 ? 2018-06-12 10:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

手頭上正好有STM32的開發(fā)板和ESP-12E模塊,想著控制個WS2812玩玩。到MCU開發(fā)的時候下載了生成的代碼發(fā)現(xiàn)是HAL庫的,無奈自己剛剛學習stm32,用的是標準庫這里參考了官方的移植MSP340教程并修改出適用于STM32標準庫的教程。

步驟1、下載好的代碼包是這樣的,需要把這兩個文件夾直接復制到自己工程的文件夾里面:

步驟2、添加到自己的工程組里面,并添加路徑:

步驟3、正題來了,現(xiàn)在開始移植工作,需要修改的文件分別如下:3.1、打開gizwits_product.h需要修改的地方如下,查看代碼行數(shù)可以快速找到)

3.2、打開gizwits_product.c,需要修改的地方如下:

下面刪除的幾個初始化函數(shù)很重要...必須自己寫好,要能正常使用

接下來是串口發(fā)送函數(shù),我用的是DMA+中斷發(fā)送接收的,修改成能發(fā)送數(shù)據(jù)的函數(shù)..建議先把串口功能調試好在填入調用

int32_t uartWrite(uint8_t *buf, uint32_t len)

{

uint32_t i = 0;

if(NULL == buf)

{

return -1;

}

for(i=0; i

{

//這里填入串口發(fā)送函數(shù)

TxBuff_esp8266[i]=*buf++;

/* if(i >=2 && buf[i] == 0xFF)

{

//這里填入串口發(fā)送函數(shù),發(fā)送0x55,意思是遇到0xFF后面要加0x55

//這地方折騰了很久才成功,官方的大神說要加上,但是我刪除了也可以用,求解釋

//官方說是要求加上的..我直接刪除了也能用,你們要是這里加了不行的話也刪掉試試

}*/

修改好了記得保存。

步驟4、接下來打開main.c文件添加自己的初始化代碼,并且調用gizwits的相關函數(shù)記得把這兩個頭文件包含進去

#include "gizwits_product.h"

#include "common.h"

我的初始化函數(shù)是自己封裝的,比較簡陋,反正功能能實現(xiàn)就行了步驟5、修改中斷函數(shù)

接下來就是編譯了,要是有錯誤的地方看一下是不是外部函數(shù)調用的時候沒有包含進函數(shù)所在的頭文件。步驟6、打開gizwits_product.c,找到gizwitsEventProcess的函數(shù),下面那里有你添加的數(shù)據(jù)點,可以添加自己想要的功能。

舉個栗子我的是控制WS2812,直接在里面調用WS2812的亮燈函數(shù),把讀到的數(shù)據(jù)顏色數(shù)據(jù)填入就可以了

移植的步驟大概就是這么多,試了一下燒錄了進去確實可以用app控制。還有很多功能沒有調試,剩下的功能要去參考其他大神的了。靜靜的做一名的伸手黨。

要是有什么錯誤的地方請指正,我也是這兩天剛剛琢磨出來,希望能互相學習。誒,那個,第一次寫教程,stm32也剛接觸沒多久,水平有限,有什么寫得不好或者錯了的地方請告之改正。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    147

    文章

    18925

    瀏覽量

    398300
  • STM32
    +關注

    關注

    2309

    文章

    11162

    瀏覽量

    373477

原文標題:官方生成的MCU代碼(hal庫)移植到標準庫的STM32教程

文章出處:【微信號:IoTMaker,微信公眾號:機智云開發(fā)者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    數(shù)字標準單元的工藝設計套件生成步驟

    本文詳細介紹數(shù)字標準單元的工藝設計套件(PDK)生成步驟。
    的頭像 發(fā)表于 02-02 16:14 ?278次閱讀
    數(shù)字<b class='flag-5'>標準</b>單元<b class='flag-5'>庫</b>的工藝設計套件生成步驟

    《機智云Gokit3開發(fā)篇》4 RGB燈的介紹與驅動移植HAL

    的色彩控制能力。本文聚焦Gokit3開發(fā)板(MCU模式,主控STM32F103C8T6),以HAL為開發(fā)基礎,從P9813驅動芯片的工作原理入手,系統(tǒng)講解RGB燈的
    的頭像 發(fā)表于 01-28 19:11 ?5067次閱讀
    《機智云Gokit3開發(fā)篇》4 RGB燈的介紹與驅動<b class='flag-5'>移植</b>(<b class='flag-5'>HAL</b><b class='flag-5'>庫</b>)

    標準C的區(qū)別

    因為針對Arm的嵌入式系統(tǒng),通常存儲(代碼)資源相對較小,為了使其能用上標準函數(shù),工程師就針對Arm嵌入式系統(tǒng),對標準C進行了優(yōu)化,以減小代碼量。 優(yōu)化標準
    發(fā)表于 12-09 07:49

    如何移植iconvRT-Thread Studio工程中?

    需要使用到漢字編碼轉換,請問如何移植iconv,請各位予以指導
    發(fā)表于 10-09 08:52

    STM32標準在Keil5移植rtthread nano后無法顯示oled內容是怎么回事?

    單獨把OLED_Update()函數(shù)獨立出來就無法執(zhí)行,屏幕黑屏怎么回事呢? 或者有沒有大佬有在Keil5 STM32標準移植rtthread系統(tǒng)又使用到oled屏幕顯示的
    發(fā)表于 09-22 08:28

    STM32已經用標準寫好的代碼,怎么導入RT THREAD?

    之前已經在裸機上實現(xiàn)了SAE J1939協(xié)議,因為要添加IOT 功能,現(xiàn)在想添加RT THREAD.因為之前寫裸機程序的時候用的是標準。而RT THREAD STUDIO自動生成的是HAL
    發(fā)表于 09-19 06:16

    如何理解無刷電機中的六步換向?

    無刷電機中的六步換向是一種用于無刷直流電機(BLDC)的換相控制策略,它主要通過電子開關控制電機繞組的通電順序,從而實現(xiàn)電機的旋轉。以下是對無刷電機中六步換向的詳細理解: 一、六步換向的基本原理 無
    的頭像 發(fā)表于 07-23 07:39 ?1838次閱讀

    STM32F4標準外設資料

    stm32f4xx.h,標準外設
    發(fā)表于 06-08 09:49 ?5次下載

    基于STM32 HAL標準的esp8266接入機智云方案(二)

    在《基于STM32HAL標準的esp8266接入機智云方案(一)》中,我們詳細介紹了硬件連接和機智云客戶端的創(chuàng)建。本篇重點講解如何下
    的頭像 發(fā)表于 05-28 18:02 ?1407次閱讀
    基于STM32 <b class='flag-5'>HAL</b><b class='flag-5'>庫</b>與<b class='flag-5'>標準</b><b class='flag-5'>庫</b>的esp8266接入機智云方案(二)

    STM32已經用標準寫好的代碼,怎么導入RT THREAD?

    之前已經在裸機上實現(xiàn)了SAE J1939協(xié)議,因為要添加IOT 功能,現(xiàn)在想添加RT THREAD.因為之前寫裸機程序的時候用的是標準。而RT THREAD STUDIO自動生成的是HAL
    發(fā)表于 05-27 06:01

    PCB標準封裝文件

    PCB標準封裝文件
    發(fā)表于 05-22 17:43 ?10次下載

    【道生物聯(lián)TKB-620開發(fā)板試用】TK8620 開發(fā)平臺軟件移植——HAL配置

    引言: 最近想使用本開發(fā)套件來預研一個無線傳輸?shù)漠a品測試平臺。所以準備把之前的例程移植HAL。移植之后,準備把開發(fā)板上的所有按照原理圖的
    發(fā)表于 04-30 00:47

    求助,求STM32C011J4x STM32C011J6x的標準?

    一直用的標準,發(fā)現(xiàn)C0沒有標準,都是HAL的,真的用不習慣、
    發(fā)表于 03-10 08:20

    HAL標準你會選擇哪種?

    HAL標準你會選擇哪種
    發(fā)表于 03-10 06:25

    如何HAL轉為LL

    怎么HAL轉為LL。
    發(fā)表于 03-10 06:08