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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

聚沃科技SDK使用指南

聚沃科技 ? 2024-05-06 10:23 ? 次閱讀

寫(xiě)在前面:聚沃科技SDK使用GD固件庫(kù)基礎(chǔ)上開(kāi)發(fā)了MCU外設(shè)驅(qū)動(dòng)的中間層以及板級(jí)外設(shè)的驅(qū)動(dòng),相關(guān)例程調(diào)用驅(qū)動(dòng)函數(shù)實(shí)現(xiàn),用戶(hù)在基于聚沃科技的SDK做產(chǎn)品開(kāi)發(fā)時(shí),可以很方便的適配新的硬件,直接調(diào)用相關(guān)驅(qū)動(dòng)接口開(kāi)發(fā)上層應(yīng)用即可,類(lèi)似STM32的hal庫(kù),彌補(bǔ)了原廠(chǎng)這一塊的空缺,并且在驅(qū)動(dòng)中做了很多容錯(cuò)性處理,總結(jié)了應(yīng)用中常見(jiàn)一些問(wèn)題,可靠性比原廠(chǎng)demo例程更好,可在裸機(jī)、RTOS等不同開(kāi)發(fā)框架下穩(wěn)定運(yùn)行,能很好的縮短軟件開(kāi)發(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ò)多層封裝便于讀者開(kāi)發(fā)中直接使用。

wKgZomY4NyWAUuM2AAD1W8N2fds853.png

主要功能介紹:

  • driver_public.c

該文件主要會(huì)初始化延時(shí)模塊、系統(tǒng)tick中斷、配套例程的LCD和串口打印,不同系列之間也會(huì)根據(jù)芯片特點(diǎn)做一些必要性初始化,比如H7的SDK中還做了cache的使能、中斷向量表到SRAM的copy和偏移、基礎(chǔ)MPU的配置。

在mian函數(shù)開(kāi)始調(diào)用driver_init即可,產(chǎn)品開(kāi)發(fā)中不需要LCD和串口打印可配置LCD_DEBUG為0或直接刪除對(duì)應(yīng)代碼:

wKgaomY4NzWAc8K6AABQF1vrZ4c962.png

提供了機(jī)器周期延時(shí)、us延時(shí)、ma延時(shí)函數(shù),采用了僅查詢(xún)方式實(shí)現(xiàn),支持函數(shù)重入、ROTS下調(diào)用等。

wKgZomY4N02AFe-1AAAKG40BaCU908.png

提供了定時(shí)任務(wù)函數(shù)指針可方便增加一些簡(jiǎn)單的定時(shí)任務(wù),配置時(shí)間值并指向函數(shù)即可自動(dòng)調(diào)用執(zhí)行:

wKgaomY4N1uAU1KbAAAiDgjt7pA169.png
  • driver_public.h

測(cè)試?yán)坦δ軙r(shí),在該頭文件中可以選擇LCD打印信息,并選擇對(duì)應(yīng)的屏幕類(lèi)型,例程結(jié)果會(huì)顯示在LCD上,不使用LCD時(shí)LCD_DEBUG配置0即可;

wKgaomY4N22AdPopAAAHYmnQhpM650.png

該文件中預(yù)留了分散加載的宏定義,可以方便的指定變量、函數(shù)位置,需要配合工程配置以及SCT文件使用:

wKgZomY4N4SAfgg-AAASFPKfn5E582.pngwKgZomY4N4SAX_A8AAAJfapKRGw167.pngwKgaomY4N4SANa9WAAAM2HCYqzc004.pngwKgaomY4N4SAfM8vAAAJwNuLPDg031.png
  • driver_xx.c\bsp_xx.c中定義接口和參數(shù)

在驅(qū)動(dòng)文件上方提供了注冊(cè)接口或參數(shù)的示例,可參考修改即可:

  • 普通GPIO:
wKgaomY4N8uAV5KkAABBQ6a6CE8529.png

GPIO_DEF括號(hào)內(nèi)內(nèi)容分別是:注冊(cè)名稱(chēng)、PORT、PIN、GPIO模式、默認(rèn)電平、IO中斷回調(diào)函數(shù);需要增加或者修改可以復(fù)制模版后修改名稱(chēng)和參數(shù)。

調(diào)用驅(qū)動(dòng)時(shí)將注冊(cè)名稱(chēng)指針傳輸調(diào)用:

wKgZomY4N_WAMthTAAAXh3UEfn8394.pngwKgaomY4OAeAeI-UAAAgqroUST8721.png

定義USART時(shí)參考模版分別定義TX、RX、DMA通道,USART波特率和模式,如沒(méi)有使用DMA任意填寫(xiě)參數(shù);

通信類(lèi)外設(shè)有三個(gè)模式:MODE_POLL、MODE_DMA、MODE_INT可選,根據(jù)需要選擇配置,也可以應(yīng)用中修改結(jié)構(gòu)體參數(shù)并重初始化來(lái)靈活變更模式。

wKgZomY4OBuAVRNBAABY3kNEapY579.png

教程GD32 MCU方案商聚沃科技原創(chuàng)發(fā)布,了解更多GD32 MCU教程以及聚沃科技資料下載,關(guān)注聚沃科技官網(wǎng)

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

    關(guān)注

    146

    文章

    16792

    瀏覽量

    349319
  • SDK
    SDK
    +關(guān)注

    關(guān)注

    3

    文章

    1015

    瀏覽量

    45597
  • 驅(qū)動(dòng)接口
    +關(guān)注

    關(guān)注

    0

    文章

    10

    瀏覽量

    2608
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Vivado使用指南

    Vivado使用指南
    發(fā)表于 07-18 14:27

    PWM使用指南

    日期作者版本說(shuō)明2020.09.26TaoV0.0撰寫(xiě)中目錄簡(jiǎn)要介紹常用配置設(shè)置更新中斷輸出PWM脈沖捕獲輸出帶死區(qū)控制的互補(bǔ)PWM使用指南簡(jiǎn)要介紹常用配置設(shè)置更新中斷輸出PWM脈沖捕獲輸出帶死區(qū)控制的互補(bǔ)PWM使用指南...
    發(fā)表于 08-09 08:54

    具有高性能MCU配套的HPM SDK使用指南

    HPM SDK使用指南
    發(fā)表于 06-05 07:51

    ESP8266_SDK_User_Manual_Version 1.4

    ESP8266__IOT_SDK_User_Manual,ESP8266 SDK 使用指南
    發(fā)表于 12-30 14:23 ?21次下載

    Quartus_II使用指南

    Quartus_II使用指南(非常詳細(xì))
    發(fā)表于 05-19 15:16 ?0次下載

    quartus使用指南

    quartus使用指南,有需要的朋友下來(lái)看看
    發(fā)表于 05-20 11:16 ?30次下載

    FreeRTOS 使用指南

    FreeRTOS 使用指南
    發(fā)表于 10-24 13:37 ?25次下載
    FreeRTOS <b class='flag-5'>使用指南</b>

    電子票使用指南免費(fèi)下載

    電子票使用指南電子票使用指南電子票使用指南電子票使用指南電子票使用指南電子票使用指南
    發(fā)表于 11-24 14:02 ?3次下載

    mast語(yǔ)言使用指南

    mast語(yǔ)言使用指南說(shuō)明免費(fèi)下載。
    發(fā)表于 04-16 14:42 ?24次下載

    N32G457系列TSC觸控SDK使用指南

    N32G457系列TSC觸控SDK使用指南
    發(fā)表于 11-11 21:50 ?0次下載
    N32G457系列TSC觸控<b class='flag-5'>SDK</b><b class='flag-5'>使用指南</b>

    N32WB03x SDK使用指南

    N32WB03x SDK使用指南
    發(fā)表于 11-11 21:50 ?6次下載
    N32WB03x <b class='flag-5'>SDK</b><b class='flag-5'>使用指南</b>

    N32WB452系列TSC觸控SDK使用指南

    N32WB452系列TSC觸控SDK使用指南
    發(fā)表于 11-11 21:50 ?0次下載
    N32WB452系列TSC觸控<b class='flag-5'>SDK</b><b class='flag-5'>使用指南</b>

    N32G4FR系列TSC觸控SDK使用指南

    N32G4FR系列TSC觸控SDK使用指南
    發(fā)表于 11-11 21:50 ?0次下載
    N32G4FR系列TSC觸控<b class='flag-5'>SDK</b><b class='flag-5'>使用指南</b>

    N32G455系列TSC觸控SDK使用指南

    N32G455系列TSC觸控SDK使用指南
    發(fā)表于 11-11 21:50 ?4次下載
    N32G455系列TSC觸控<b class='flag-5'>SDK</b><b class='flag-5'>使用指南</b>

    國(guó)民技術(shù)TSC觸控SDK使用指南V1

    國(guó)民技術(shù)UG_N32G45x_G4FRx_N32WBx系列TSC觸控SDK使用指南V1
    發(fā)表于 10-18 16:12 ?0次下載