国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

機智云Gokit3開發篇 — 搭建Gokit3工程(HAL庫版)

機智云 ? 2026-01-08 19:14 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在當今物聯網時代,越來越多的開發者希望能夠快速上手并實現創新的產品與應用。機智云Gokit3開發板因其易用性和豐富功能受到初學者的青睞。該開發板核心主控采用了高性價比的STM32F103C8T6微控制器,支持多種開發環境,使學習與開發變得更加便捷。


本文將帶您從零基礎開始,逐步搭建Gokit3的HAL庫工程,并通過簡單的點燈實驗,讓您感受開發的樂趣。在這個過程中,我們將學習如何使用STM32的HAL庫,掌握基本的開發流程,為后續更復雜的項目打下堅實的基礎。

文章結尾附本文章源碼、原理圖資料鏈接。


01硬件清單


Gokit3 開發板(核心:STM32F103C8T6)

Micro USB 數據線(供電 / 下載)

ST-Link 下載器(若板子自帶則無需額外,Gokit3 一般集成了 ST-Link)


軟件清單

軟件名稱

l STM32CubeMX----可視化配置工程、生成 HAL 庫代碼

官網下載鏈:(https://www.st.com/en/development-tools/stm32cubemx.html);

安裝時需下載STM32F1 系列固件包(CubeMX 內可直接下載);

l Keil MDK-ARM V5代碼編譯、下載調試

下載V5 版本(需兼容 F1 系列);

安裝對應芯片包(STM32F1xx_DFP);

需破解(新手可自行找教程,注意選擇支持F1 的許可證)。


02開始搭建工程


1、步驟1:STM32CubeMX 新建工程


介紹:STM32CubeMX 是 ST 官方的可視化配置工具,能極大簡化 HAL 庫工程搭建,新手不用手動配置寄存器,效率拉滿


打開CubeMX,選擇芯片型號

雙擊打開STM32CubeMX,點擊主界面的 “New Project”;



37891770-ec83-11f0-8ce9-92fbcf53809c.png



在“Part Number Search” 搜索框輸入 STM32F103C8T6,選中搜索結果中的芯片(注意區分 LQFP48 封裝),點擊 “Start Project”;



37996fe4-ec83-11f0-8ce9-92fbcf53809c.png


2、步驟 2:基礎配置(時鐘 / 調試接口

(1)配置調試接口(必須,否則無法下載程序)

點擊左側菜單欄“System Core” → “SYS”;

右側“Debug” 選項選擇 “Serial Wire”(SWD 模式,占用引腳少,Gokit3自帶SWD燒錄接口);



37ad6ee0-ec83-11f0-8ce9-92fbcf53809c.png



(2)配置時鐘源和時鐘樹(決定系統主頻)

Gokit3 的 STM32F103C8T6 外接 8MHz 晶振(HSE),我們配置系統主頻為 72MHz(F103 的最大主頻):


點擊左側“RCC”;

右側“High Speed External (HSE)” 選擇 “Crystal/Ceramic Resonator”(外部晶振);


37c8e10c-ec83-11f0-8ce9-92fbcf53809c.png



點擊頂部菜單欄“Clock Configuration”(時鐘配置);

配置時鐘樹:

HSE 設為 8MHz;

PLLSRC 選擇 HSE;

PLLMUL 選擇 x9(8*9=72MHz);

HCLK 選擇 72MHz;

PCLK1 選擇 36MHz(APB1 最大 36MHz);

PCLK2 選擇 72MHz;


37f4261e-ec83-11f0-8ce9-92fbcf53809c.png37f4261e-ec83-11f0-8ce9-92fbcf53809c.png



3、步驟3:配置 LED 引腳(Gokit3 硬件對應)

先查 Gokit3 原理圖:有4個LED 正極接PB1、PB11、PB14、PB15 引腳(高電平點亮,低電平熄滅)原理圖如下:



382919f0-ec83-11f0-8ce9-92fbcf53809c.png




3846f542-ec83-11f0-8ce9-92fbcf53809c.png



配置如下:(我們以LED1為例)

點擊左側“GPIO”;

在引腳列表中找到 PB1,點擊下拉菜單:

Mode 選擇 “Output Push Pull”(推挽輸出);

Pull-up/Pull-down 選擇 “Pull down”(下拉,默認低電平,LED 滅);

Speed 選擇 “Low”(低速即可,LED 無需高速);

可給 PB0 重命名(方便識別):在 “User Label” 欄輸入 LED0,后續代碼中可直接用這個別名。



38859f2c-ec83-11f0-8ce9-92fbcf53809c.png



STM32F103C8T6 的 GPIO 外設支持八種工作模式,可分為輸入模式、輸出模式、復用輸出模式三大類

這里介紹GPIO的八種模式


輸入浮空(GPIO_Mode_IN_FLOATING)

輸入上拉(GPIO_Mode_IPU)

輸入下拉(GPIO_Mode_IPD)

模擬輸入(GPIO_Mode_AIN)

開漏輸出(GPIO_Mode_Out_OD)

推挽輸出(GPIO_Mode_Out_PP)

復用開漏輸出(GPIO_Mode_AF_OD)

復用推挽輸出(GPIO_Mode_AF_PP)


4、步驟4:生成工程代碼

點擊頂部菜單欄“Project Manager”;

配置項目基本信息:

Project Name:輸入工程名(如Gokit3_LED_HAL);

Project Path:選擇保存路徑(這里推薦全英文路徑,兼容性問題);

Toolchain/IDE:選擇 “MDK-ARM”;



38adbeee-ec83-11f0-8ce9-92fbcf53809c.png



配置代碼生成選項:

勾選“Generate peripheral initialization as a pair of '.c/.h' files per peripheral”(按外設生成獨立的.c/.h 文件,代碼更整潔);

其他默認即可;

點擊右上角“GENERATE CODE”,等待代碼生成完成,然后點擊 “Open Project” 自動打開 Keil 工程。



38d4ddf8-ec83-11f0-8ce9-92fbcf53809c.png


03Keil 工程配置與代碼編寫

1、步驟 1:編寫點燈代碼(核心邏輯)

STM32CubeMX 生成的代碼已包含 HAL 庫底層驅動,我們只需在main.c中添加點燈邏輯即可:

打開Core/main.c文件,找到while(1)循環(約 95 行左右);

在while(1)中添加如下代碼:

HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_1);

HAL_Delay(500);



38e9d58c-ec83-11f0-8ce9-92fbcf53809c.png



完整main.c關鍵片段參考:

@font-face{font-family:"Times New Roman";}@font-face{font-family:"宋體";}@font-face{font-family:"Calibri";}p.MsoNormal{mso-style-name:正文;mso-style-parent:"";margin:0pt;margin-bottom:.0001pt;mso-pagination:none;text-align:justify;text-justify:inter-ideograph;font-family:Calibri;mso-fareast-font-family:宋體;mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;}span.msoIns{mso-style-type:export-only;mso-style-name:"";text-decoration:underline;text-underline:single;color:blue;}span.msoDel{mso-style-type:export-only;mso-style-name:"";text-decoration:line-through;color:red;}@page{mso-page-border-surround-header:no;mso-page-border-surround-footer:no;}@pageSection0{}div.Section0{page:Section0;}intmain(void){ /* 1. 初始化HAL庫 */ HAL_Init(); /* 2. 配置系統時鐘(CubeMX自動生成) */ SystemClock_Config(); /* 3. 初始化外設(CubeMX自動生成,包含PB0) */ MX_GPIO_Init(); /* 4. 主循環 */ while (1) {/* 點燈核心代碼:LED0(PB0)翻轉電平,間隔500ms閃爍 */HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_1); // 翻轉PB0電平(亮→滅/滅→亮)HAL_Delay(500); // 延時500ms(HAL庫自帶延時函數,單位ms) }}


代碼解釋


HAL_Init():初始化 HAL 庫核心組件(如 SysTick 定時器,用于HAL_Delay);

SystemClock_Config():CubeMX 自動生成的時鐘配置函數,對應我們之前設置的 72MHz 主頻;

MX_GPIO_Init():初始化 GPIO(包含 PB0 的輸出配置);

HAL_GPIO_TogglePin():HAL 庫 GPIO 電平翻轉函數,參數 1=GPIO 端口(GPIOB),參數 2 = 引腳(GPIO_PIN_0);

HAL_Delay():HAL 庫毫秒級延時函數,底層基于 SysTick 定時器實現。


2、步驟 2:下載程序到 Gokit3:

不會燒錄下載的可以此文章

鏈接:

《機智云Gokit3開發篇》1如何給Gokit3燒錄程序(MCU+ST-Link版)-GoKit 開源套件-開源項目及賽事-機智云


3、步驟 3:驗證效果

此時Gokit3 上的LED 1會以 500ms 為間隔循環閃爍,STM32 HAL 庫工程搭建成功,點燈實例也成功跑起來。



3913b384-ec83-11f0-8ce9-92fbcf53809c.png


通過本次介紹,我們從零基礎開始成功搭建了Gokit3的HAL庫工程,并完成了簡單的點燈實驗,體驗了開發的樂趣與成就感。希望這篇文章能夠為您的STM32學習之旅提供幫助,并激發您在物聯網開發領域的探索興趣。

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

    關注

    3

    文章

    647

    瀏覽量

    27769
  • Gokit
    +關注

    關注

    2

    文章

    15

    瀏覽量

    12970
  • HAL
    HAL
    +關注

    關注

    2

    文章

    75

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    機智Gokit3開發》4 RGB燈的介紹與驅動移植(HAL

    在物聯網開發與STM32嵌入式應用實踐中,RGB燈是實現可視化交互、狀態指示的常用外設,而機智Gokit3開發板作為物聯網
    的頭像 發表于 01-28 19:11 ?5067次閱讀
    《<b class='flag-5'>機智</b><b class='flag-5'>云</b><b class='flag-5'>Gokit3</b><b class='flag-5'>開發</b><b class='flag-5'>篇</b>》4 RGB燈的介紹與驅動移植(<b class='flag-5'>HAL</b><b class='flag-5'>庫</b>)

    GoKit3(S)】Gokit3開箱及介紹

    `Gokit3機智Gokit2后推出的第三代物聯網智能硬件開發套件,它可以快速的幫助開發
    發表于 08-25 16:29

    Gokit 3試用體驗】Gokit3開箱報告

    ``  2016年8月13日中午從傳達室取到機智提供試用的GoKit套件,拆開后給人的第一印象是精致,連接線單獨存放,亞克力盒子里是Gokit3(V)型套件。有點小遺憾,亞克力盒子可
    發表于 08-29 11:05

    Gokit3試用體驗】1、開箱評測

    Gokit3機智Gokit2后推出的第三代物聯網智能硬件開發套件,它可以快速的幫助開發者將
    發表于 09-26 11:10

    如何使用機智開發一款智能硬件產品

    ”...第6:【原創】【魅力Gokit3】序列之6:搭建編譯環境第7:【原創】【魅力Gokit3】序列之7:LED單燈閃爍商用案例:【成
    發表于 12-26 15:56

    每周精選:Gokit3S開發攻略、低成本SOC開發(1月9日)

    /thread-4438-1-1.html從0開始玩轉Gokit3 SOC(1)簡介、開發環境搭建、固件燒錄http://club.gizwits.com/thread-4377-1-1.html我愛分享:基于
    發表于 01-11 14:46

    GoKit3采用分體式可插拔的設計方案

    GoKit3機智推出的物聯網智能硬件開發套件,采用分體式可插拔設計方案,由主控板、功能擴展板、模組三部分組成,這種設計方式,讓GoKit3
    發表于 09-10 08:25

    4G模組接入機智gokit3開發

    準備內容:1.機智Gokit3開發板一塊(MCU模式),機智
    發表于 10-31 19:55

    通過機智GoKit3開發套件實現手機APP的遠程控制

    GoKit3(S)是機智(GizWits)推出的物聯網智能硬件開發套件之一,目的是幫助傳統硬件快速接入互聯網。
    的頭像 發表于 06-05 06:07 ?3731次閱讀

    機智推出基于物聯網智能硬件開發套件GoKit3

    GoKit3機智推出的物聯網智能硬件開發套件,采用分體式可插拔設計方案,由主控板、功能擴展板、模組三部分組成,這種設計方式,讓GoKit3
    的頭像 發表于 08-16 09:34 ?5063次閱讀

    gokit3是如何接入4G模組ML302-GC211轉接板的

    到此教程結束,本次教程采用機智gokit3機智GC211模組實現開發板移動網絡接入,方便用
    的頭像 發表于 07-03 16:10 ?2461次閱讀

    GoKit3的硬件電路原理

    很多人拿到開發板的第一件事情應該是:寫入demo,看看效果。但是我覺得還是應該把別人好的設計拿過來學習,對產品的原理弄清楚了,在進行下一步會更加清晰明白,知道如何開發?,F在開始學習GoKit3的硬件電路原理學習之旅吧。
    發表于 08-25 10:45 ?1585次閱讀

    機智Gokit3測評】Gokit3硬件電路學習

    GoKit3的硬件電路原理學習之旅吧。GoKit3是什么?GoKit3機智(GizWits)推出的物聯網智能硬件
    的頭像 發表于 08-26 11:14 ?1983次閱讀
    【<b class='flag-5'>機智</b><b class='flag-5'>云</b><b class='flag-5'>Gokit3</b>測評】<b class='flag-5'>Gokit3</b>硬件電路學習

    機智Gokit3開發:ST-Link燒錄MCU程序操作詳解

    本文主要介紹如何為機智Gokit3的MCU模式進行程序燒錄(ST-Link版)。由于Gokit3底板采用的是STM32芯片,針對ST的MCU,推薦使用以下兩種燒錄方式。首先,使用ST
    的頭像 發表于 12-17 18:46 ?448次閱讀
    <b class='flag-5'>機智</b><b class='flag-5'>云</b><b class='flag-5'>Gokit3</b><b class='flag-5'>開發</b><b class='flag-5'>篇</b>:ST-Link燒錄MCU程序操作詳解

    如何給Gokit3燒錄程序(MCU+FlyMcu版)

    在本文中,我們將詳細講解如何為機智Gokit3MCU模式進行程序燒錄,特別是針對FlyMcu版本的應用。本次燒錄采用了串口方式,這是給MCU燒錄程序的常用方法之一。借助FlyMcu軟件,我們可以
    的頭像 發表于 12-17 18:46 ?435次閱讀
    如何給<b class='flag-5'>Gokit3</b>燒錄程序(MCU+FlyMcu版)