寫在前面:聚沃科技SDK使用GD固件庫(kù)基礎(chǔ)上開發(fā)了MCU外設(shè)驅(qū)動(dòng)的中間層以及板級(jí)外設(shè)的驅(qū)動(dòng),相關(guān)例程調(diào)用驅(qū)動(dòng)函數(shù)實(shí)現(xiàn),用戶在基于聚沃科技的SDK做產(chǎn)品開發(fā)時(shí),可以很方便的適配新的硬件,直接調(diào)用相關(guān)驅(qū)動(dòng)接口開發(fā)上層應(yīng)用即可,類似STM32的hal庫(kù),彌補(bǔ)了原廠這一塊的空缺,并且在驅(qū)動(dòng)中做了很多容錯(cuò)性處理,總結(jié)了應(yīng)用中常見一些問(wèn)題,可靠性比原廠demo例程更好,可在裸機(jī)、RTOS等不同開發(fā)框架下穩(wěn)定運(yùn)行,能很好的縮短軟件開發(fā)周期。 本文主要針對(duì)SDK如何重定義硬件接口和外設(shè)參數(shù)進(jìn)行說(shuō)明,方便讓大家快速靈活使用聚沃科技SDK。 |
軟件架構(gòu)簡(jiǎn)介
聚沃科技SDK框架如下圖所示,底層驅(qū)動(dòng)為官方提供的外設(shè)庫(kù),聚沃科技實(shí)現(xiàn)了抽象層驅(qū)動(dòng)包括MCU_Driver和BSP_Driver,其中MCU_Driver為MCU底層外設(shè)驅(qū)動(dòng),調(diào)用底層驅(qū)動(dòng)進(jìn)行再次封裝,BSP_Driver為板級(jí)資源驅(qū)動(dòng),調(diào)用MCU_Driver進(jìn)行再次封裝,便于應(yīng)用層調(diào)用,應(yīng)用層及應(yīng)用層驅(qū)動(dòng)為上層應(yīng)用,包括主函數(shù)文件以及相關(guān)上層驅(qū)動(dòng)。該例程架構(gòu)經(jīng)過(guò)多層封裝便于讀者開發(fā)中直接使用。
主要功能介紹:
- driver_public.c
該文件主要會(huì)初始化延時(shí)模塊、系統(tǒng)tick中斷、配套例程的LCD和串口打印,不同系列之間也會(huì)根據(jù)芯片特點(diǎn)做一些必要性初始化,比如H7的SDK中還做了cache的使能、中斷向量表到SRAM的copy和偏移、基礎(chǔ)MPU的配置。
在mian函數(shù)開始調(diào)用driver_init即可,產(chǎn)品開發(fā)中不需要LCD和串口打印可配置LCD_DEBUG為0或直接刪除對(duì)應(yīng)代碼:
提供了機(jī)器周期延時(shí)、us延時(shí)、ma延時(shí)函數(shù),采用了僅查詢方式實(shí)現(xiàn),支持函數(shù)重入、ROTS下調(diào)用等。
提供了定時(shí)任務(wù)函數(shù)指針可方便增加一些簡(jiǎn)單的定時(shí)任務(wù),配置時(shí)間值并指向函數(shù)即可自動(dòng)調(diào)用執(zhí)行:
- driver_public.h
測(cè)試?yán)坦δ軙r(shí),在該頭文件中可以選擇LCD打印信息,并選擇對(duì)應(yīng)的屏幕類型,例程結(jié)果會(huì)顯示在LCD上,不使用LCD時(shí)LCD_DEBUG配置0即可;
該文件中預(yù)留了分散加載的宏定義,可以方便的指定變量、函數(shù)位置,需要配合工程配置以及SCT文件使用:
- driver_xx.c\bsp_xx.c中定義接口和參數(shù)
在驅(qū)動(dòng)文件上方提供了注冊(cè)接口或參數(shù)的示例,可參考修改即可:
- 普通GPIO:
GPIO_DEF括號(hào)內(nèi)內(nèi)容分別是:注冊(cè)名稱、PORT、PIN、GPIO模式、默認(rèn)電平、IO中斷回調(diào)函數(shù);需要增加或者修改可以復(fù)制模版后修改名稱和參數(shù)。
調(diào)用驅(qū)動(dòng)時(shí)將注冊(cè)名稱指針傳輸調(diào)用:
定義USART時(shí)參考模版分別定義TX、RX、DMA通道,USART波特率和模式,如沒有使用DMA任意填寫參數(shù);
通信類外設(shè)有三個(gè)模式:MODE_POLL、MODE_DMA、MODE_INT可選,根據(jù)需要選擇配置,也可以應(yīng)用中修改結(jié)構(gòu)體參數(shù)并重初始化來(lái)靈活變更模式。
本教程由GD32 MCU方案商聚沃科技原創(chuàng)發(fā)布,了解更多GD32 MCU教程以及聚沃科技資料板下載,關(guān)注聚沃科技官網(wǎng)
-
mcu
+關(guān)注
關(guān)注
146文章
17199瀏覽量
351908 -
SDK
+關(guān)注
關(guān)注
3文章
1041瀏覽量
46061 -
驅(qū)動(dòng)接口
+關(guān)注
關(guān)注
0文章
10瀏覽量
2628
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論