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

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

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

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

掌握 LuatIO:GPIO 復(fù)用模式初始化配置全流程解析

合宙LuatOS ? 來(lái)源:合宙LuatOS ? 作者:合宙LuatOS ? 2026-01-23 15:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在使用 LuatIO 進(jìn)行嵌入式應(yīng)用開(kāi)發(fā)時(shí),合理配置 GPIO 的復(fù)用功能是實(shí)現(xiàn)外設(shè)控制的前提。本文全面解析 GPIO 引腳由普通 IO 轉(zhuǎn)換為復(fù)用功能引腳的初始化流程,包括時(shí)鐘使能、模式選擇、速度設(shè)置與函數(shù)調(diào)用順序,提供結(jié)構(gòu)化配置思路與最佳實(shí)踐建議。

LuatIO工具可以將模塊內(nèi)多個(gè)引腳同時(shí)支持的一個(gè)功能指定給配置的引腳使用,方便進(jìn)行管腳復(fù)用配置操作,目前的主流型號(hào)都可以用此工具進(jìn)行配置。

一、LuatIO工具在LuaTools的入口

LuatIO工具現(xiàn)已集成在LuaTools中,截圖說(shuō)明如下;

1. LuaTools如何初次下載LuatIO或者升級(jí)LuatIO版本?

wKgZPGlzEGWASmVLAAFYylVFwfs623.pngwKgZPGlzEHqAd2r_AANvetFrzV4519.png

2. LuatIO在LuaTools中的入口在哪里?

wKgZO2lzEMGAH1T1AADQKfdkvTM789.pngwKgZPGlzEOWAdm7tAAKqfkypfDg616.pngwKgZO2lzEQCACeClAAX1TQPydLU984.png

二、GPIO 配置

GPIO 配置的全過(guò)程,我們分為三部分進(jìn)行說(shuō)明,分別是:

1、LuatIO 可視化 GPIO 復(fù)用功能配置工具;

2、由 LuatIO 生成 pins_$model.json 文件;

3、API 庫(kù)函數(shù) pins 動(dòng)態(tài)配置;

4、通過(guò) LuaTools 將 pins_$model.json 文件下載到模組中;

1,LuatIO 工具

注意:LuatIO工具僅支持Win10及之上Windows操作系統(tǒng)。

LuatIO工具使用; 目前LuatIO工具已集成在luatools中,可以在項(xiàng)目管理界面打開(kāi):

wKgZPGlzEeaAPkSEAAQeFhRFJhY783.png

LuatIO 界面截圖如下:

wKgZO2lzEmWAfDvzAAQ4NSQQp8c107.png

其中:

左側(cè)為 GPIO 復(fù)用功能配置選擇欄,空白框內(nèi)可以寫(xiě)該管腳相應(yīng)的注釋說(shuō)明;

右側(cè)為 Air780EPM 的管腳排列圖,其中淡綠色部分為可以配置的 GPIO 管腳;

以 Air780EPM 開(kāi)發(fā)板 V1.3 為例,根據(jù)其硬件實(shí)際使用情況配置后的截圖如下:

wKgZPGlzErWAOZL7AAXlX_0OnAM848.png


2,生成 pins_$model.json 文件

生成對(duì)應(yīng)型號(hào)的json文件分為以下幾步

1.打開(kāi)LuatIO配置工具。

wKgZPGlzEyWAde_AAARNTRQ8Jos008.png


2.點(diǎn)擊型號(hào)選擇

wKgZO2lzE1GAC9nSAAR6OHvpIAk997.png

3.配置自己需要復(fù)用的管腳

wKgZPGlzE3yAWG7XAARwKXHU_6w610.png

4.配置完成后管腳處會(huì)顯示對(duì)應(yīng)功能,右側(cè)俯視圖對(duì)應(yīng)管腳顯示會(huì)變暗,下方會(huì)顯示對(duì)應(yīng)功能。

wKgZPGlzE6WAGjg8AAQo1jLAIW8216.png

5.點(diǎn)擊保存即可

生成.josn配置文件最新固件兼容三種命名,以Air780EPM為例:

pins_Air780EPM.json

pins_AIR780EPM.json

pins_air780epm.json

wKgZO2lzE92AciLQAAQW2CmlbZA986.png

2.1,生成 pins_Air8000A.json 文件

1.點(diǎn)擊“保存”;

wKgZO2lzFA6AWGqKAAPxmb5nK84363.png

2.命名"pins_Air8000A";

wKgZPGlzFDKAAFfKAAPYixo5fmI132.png

說(shuō)明:

(1)文件名必須嚴(yán)格遵守 pins_$model.json 格式:pins_Air8000A;

(2)pins_Air8000A.json 截圖如下:

wKgZO2lzFMWALsl_AAJjKdecoVI076.png

2.2,生成 pins_Air780EPM.json 文件

1.點(diǎn)擊"保存";

wKgZPGlzFPCAEtgFAAYwnWRtKd4229.png

2.命名"pins_Air780EPM";

wKgZPGlzFSWAWxa6AAUYOt7M7ME104.png

說(shuō)明:

(1)文件名必須嚴(yán)格遵守 pins_$model.json 格式:pins_Air780EPM;

(2)pins_Air780EPM.json 截圖如下:

wKgZO2lzFZ2AS2VDAAWe8QcRXlM831.pngwKgZO2lzFbOAcw-2AASPM63jnxc302.png

2.3,生成 pins_air8101.json 文件

1.點(diǎn)擊"保存";

wKgZO2lzFeWASaE1AAOyi4HRoS0835.png

2.命名"pins_air8101.json";

wKgZO2lzFg6ARwZOAAGhGsaZ5cM137.png

說(shuō)明:

(1)文件名必須嚴(yán)格遵守 pins_$model.json 格式:pins_air8101.json;

(2)pins_air8101.json 截圖如下:

wKgZO2lzFlWAUEB3AAD2sMKA2fM114.png

3,API 庫(kù)函數(shù) pins 動(dòng)態(tài)配置

首先,請(qǐng)使用 LuatIO 的可視化工具進(jìn)行配置,如果不需要io復(fù)用功能通常用不到pins這個(gè)功能;

其次,本庫(kù)的 API 屬于高級(jí)用法, 僅動(dòng)態(tài)配置管腳時(shí)使用(LuatIO 本來(lái)已經(jīng)初始化好了,但在代碼運(yùn)行過(guò)程中需要對(duì)某個(gè)或某些 GPIO 的復(fù)用功能進(jìn)行動(dòng)態(tài)調(diào)整);

再次,pins 是 LuatOS 核心庫(kù),在腳本代碼中不需要 require,可以直接使用;

pins.setup(pin, func)

在 pins_$model.json 文件初始化之后,再一次或多次指定某個(gè)或多個(gè)管腳的功能變化;

說(shuō)明!此功能是為了動(dòng)態(tài)修改管腳復(fù)用,99% 的用戶可能不會(huì)用到本 API;

wKgZPGlzFx6AVbFzAAHWW87Io5g224.png

4,將 pins_$model.json 下載到模組

首先,本小節(jié)我們只針對(duì)不需要"API 庫(kù)函數(shù) pins 動(dòng)態(tài)配置"的情況進(jìn)行演示;

其次,即便需要"API 庫(kù)函數(shù) pins 動(dòng)態(tài)配置"的情況,pins 的使用方法跟其它 API 核心庫(kù)函數(shù)沒(méi)有區(qū)別。

4.1,將 pins_Air8000A.json 下載到模組

1.以 Air8000A V2008固件為例;

截圖如下:

wKgZO2lzGz6AecrxAANm6m-j4AU553.png

2.pins_Air8000A 保存在 json 文件夾內(nèi);

wKgZPGlzG2OAckOxAADBh-62IRc291.png

3.下載到 Air8000A 中;

wKgZO2lzG66AHIH-AAR4tGByASs569.png

4.2,將 pins_Air780EPM.json 下載到模組

1.以 Air780EPM 開(kāi)發(fā)板 V1.3 出廠固件為例;

截圖如下:

wKgZPGlzHBSAdXyfAAKqlz1MAJY418.png

2.pins_Air780EPM 保存在 json 文件夾內(nèi);

wKgZPGlzHDmAG1FIAAFFZzjOp7Q242.png

3.下載到 Air780EPM 開(kāi)發(fā)板 V1.3 中;

wKgZO2lzHGmAXp0yAAOCLp0tVrA219.png

4.3,將 pins_air8101.json 下載到模組

1.以 Air8101 核心板為例,選擇最新的固件;

wKgZPGlzHJ6AQMP3AATVl48AuLE251.png


2.將pins_air8101.json引腳配置文件增加到腳本和資源列表;

wKgZO2lzHMSAQI5xAAO5mUxIluc555.png

3.將pins_air8101.json 同代碼一起下載到 Air8101 核心板中;

wKgZPGlzHO6APrb1AAOxqRtOhw8130.png

三,其它說(shuō)明

1. Lua 代碼中,需要聲明調(diào)用 pins_Air780EPM.json 文件嗎?

答案:

不需要;

2. 只有 Air780EPM 支持 pins_Air780EPM.json 和 API 庫(kù)函數(shù) pins 搭配的配置方式嗎?

回答:

不是的;

注意!LuatIO 工具(pins_$model.json)和 API 函數(shù) pins 都支持主推型號(hào),老型號(hào)都不再支持。

3. 雖然該工具很方便,但我已經(jīng)習(xí)慣了 mcu.altfun()函數(shù)配置,還可以繼續(xù)使用嗎?

回答:

不可以了;

Air780EPM 底層固件從 V2006 開(kāi)始,將只支持 pins_Air780EPM.json 一種 GPIO 復(fù)用功能配置方式,之前的 mcu.altfun()方式將不再繼續(xù)支持!遇到動(dòng)態(tài)配置的情況,可以結(jié)合 API 庫(kù)函數(shù) pins 進(jìn)行操作。

也就是說(shuō),如果您使用 Air780EPM 底層固件 V2005 或之前的版本已經(jīng)量產(chǎn)出貨,后續(xù)您因某種原因需要遠(yuǎn)程升級(jí)基于 V2006 及其后續(xù)底層固件版本的軟件時(shí),您的腳本文件也需要通過(guò) pins_Air780EPM.json 的方式重新對(duì) GPIO 復(fù)用功能進(jìn)行配置,原來(lái)的 mcu.altfun()配置方式將會(huì)失效。

4. 為什么我在Docs 文檔網(wǎng)站里還經(jīng)??吹疥P(guān)于 mcu.altfun()函數(shù)的出現(xiàn)?

回答:

在整理了;

mcu.altfun()的 API 庫(kù)函數(shù)說(shuō)明已經(jīng)從 Docs 上撤掉,但確實(shí)還有非常多的其它文檔說(shuō)明仍然"保留",我們可能要花一段時(shí)間才能完全"清除";

5. 如果未進(jìn)行pins_Air780EPM.json的配置,代碼可以運(yùn)行嗎?

回答:

可以運(yùn)行;

會(huì)以Air780EPM各GPIO的默認(rèn)功能執(zhí)行;

如果所引用的GPIO復(fù)用功能跟默認(rèn)功能不一致,代碼就會(huì)無(wú)法執(zhí)行。

6. 模組的demo和json文件需要分開(kāi)燒錄嗎?

回答:

不用分開(kāi)燒錄,在項(xiàng)目管理界面添加自己的demo和配置好的文件后燒錄一次即可。

今天的內(nèi)容就分享到這里了~

審核編輯 黃宇

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

    關(guān)注

    16

    文章

    1328

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    PC強(qiáng)實(shí)時(shí)運(yùn)動(dòng)控制(一):C#的EtherCAT總線初始化(下)

    通過(guò)使用配置工具導(dǎo)出ZAR文件進(jìn)行EtherCAT總線初始化
    的頭像 發(fā)表于 02-05 10:00 ?898次閱讀
    PC強(qiáng)實(shí)時(shí)運(yùn)動(dòng)控制(一):C#的EtherCAT總線<b class='flag-5'>初始化</b>(下)

    國(guó)民技術(shù)發(fā)布N32Cube芯片配置初始化代碼生成工具

    1月30日,國(guó)民技術(shù)(NSING)正式發(fā)布N32Cube——芯片配置初始化代碼生成工具,讓時(shí)鐘、引腳與外設(shè)的配置一目了然、輕松上手!
    的頭像 發(fā)表于 02-02 15:26 ?532次閱讀
    國(guó)民技術(shù)發(fā)布N32Cube芯片<b class='flag-5'>配置</b>與<b class='flag-5'>初始化</b>代碼生成工具

    MCU工程初始化,到底該不該交給工具?

    背景 工程初始化重復(fù)性高,但出錯(cuò)成本大。工程師常問(wèn):交給工具是不是會(huì)丟失掌控? 工具可做的事 時(shí)鐘樹(shù)、引腳復(fù)用、外設(shè)配置 工程生成、代碼模板套用 參數(shù)校驗(yàn)和約束檢查 工程師仍需做的事 特殊業(yè)務(wù)邏輯
    的頭像 發(fā)表于 01-29 10:18 ?138次閱讀
    MCU工程<b class='flag-5'>初始化</b>,到底該不該交給工具?

    EtherCAT總線初始化步驟

    的關(guān)鍵環(huán)節(jié),涉及硬件配置、軟件設(shè)置以及網(wǎng)絡(luò)拓?fù)涞慕?。以下是EtherCAT總線初始化的詳細(xì)步驟,結(jié)合實(shí)際應(yīng)用場(chǎng)景和常見(jiàn)問(wèn)題解決方案,為工程師提供系統(tǒng)的操作指南。 1. 硬件連接與物理層檢查
    的頭像 發(fā)表于 12-22 10:10 ?567次閱讀
    EtherCAT總線<b class='flag-5'>初始化</b>步驟

    CW32F030C8T6:GPIO配置的全攻略

    ) { GPIOA_INTFLAG_CLR(bv2);// 清除PA2中斷標(biāo)志 PB08_TOG();// 翻轉(zhuǎn)PB8引腳狀態(tài)(控制LED) } } 關(guān)鍵功能說(shuō)明 GPIO初始化:通過(guò)結(jié)構(gòu)體配置引腳
    發(fā)表于 11-13 06:38

    關(guān)于野火stm32開(kāi)發(fā)板,自己構(gòu)建庫(kù)函數(shù)點(diǎn)亮LED中GPIO初始化函數(shù)的優(yōu)化

    的代碼分享給大家 1.野火原教程代碼 1 **/** 2 *****函數(shù)功能:初始化引腳模式 3 *****參數(shù)說(shuō)明: **GPIOx**,該參數(shù)為 **GPIO_TypeDef **類(lèi)型的指針
    發(fā)表于 10-29 16:03

    VVIC 平臺(tái)商品詳情接口高效調(diào)用方案:從簽名驗(yàn)證到數(shù)據(jù)解析流程

    本文詳解VVIC平臺(tái)商品詳情接口調(diào)用流程,涵蓋參數(shù)配置、簽名生成、異常處理與數(shù)據(jù)解析,提供可復(fù)用的Python代碼及避坑指南,助力開(kāi)發(fā)者高
    的頭像 發(fā)表于 09-23 10:28 ?678次閱讀

    GraniStudio:IO初始化以及IO資源配置例程

    1.文件運(yùn)行 導(dǎo)入工程 雙擊運(yùn)行桌面GraniStudio.exe。 通過(guò)引導(dǎo)界面導(dǎo)入IO初始化以及IO資源配置例程,點(diǎn)擊導(dǎo)入按鈕。 打開(kāi)IO初始化以及IO資源配置例程所在路徑,選中I
    的頭像 發(fā)表于 08-22 17:34 ?932次閱讀
    GraniStudio:IO<b class='flag-5'>初始化</b>以及IO資源<b class='flag-5'>配置</b>例程

    GraniStudio:初始化例程

    1.文件運(yùn)行 導(dǎo)入工程 雙擊運(yùn)行桌面GraniStudio.exe。 通過(guò)引導(dǎo)界面導(dǎo)入初始化例程,點(diǎn)擊導(dǎo)入按鈕。 打開(kāi)初始化例程所在路徑,選中初始化.gsp文件,點(diǎn)擊打開(kāi),完成導(dǎo)入。 2.功能
    的頭像 發(fā)表于 08-22 16:45 ?891次閱讀
    GraniStudio:<b class='flag-5'>初始化</b>例程

    MCU外設(shè)初始化:為什么參數(shù)配置必須優(yōu)先于使能

    在微控制器領(lǐng)域,初始化參數(shù)配置階段至關(guān)重要。此時(shí),雖無(wú)電源驅(qū)動(dòng),但微控制器在使能信號(hào)到來(lái)前,借初始化參數(shù)配置這一精細(xì)步驟,開(kāi)啟關(guān)鍵準(zhǔn)備進(jìn)程。初始化
    的頭像 發(fā)表于 08-13 10:38 ?787次閱讀

    是否必須使用LuatIO?Air8000 GPIO配置與設(shè)計(jì)規(guī)范深度解析

    在Air8000的GPIO應(yīng)用開(kāi)發(fā)中,LuatIO的角色至關(guān)重要。本文剖析其必要性,結(jié)合設(shè)計(jì)注意事項(xiàng),為開(kāi)發(fā)者提供從配置到優(yōu)化的流程指南。
    的頭像 發(fā)表于 07-29 13:54 ?524次閱讀
    是否必須使用<b class='flag-5'>LuatIO</b>?Air8000 <b class='flag-5'>GPIO</b><b class='flag-5'>配置</b>與設(shè)計(jì)規(guī)范深度<b class='flag-5'>解析</b>

    定義IO初始化結(jié)構(gòu)體

    由上述IOPORT相關(guān)功能的枚舉類(lèi)型我們可以知道,在對(duì)IOPORT模塊進(jìn)行初始化時(shí)需要根據(jù)情況配置它們。因此我們定義一個(gè)IOPORT初始化的結(jié)構(gòu)體類(lèi)型IOPORT_Init_t,它的成員包括了由上述所有枚舉類(lèi)型所聲明的變量,因此
    的頭像 發(fā)表于 07-16 16:26 ?1402次閱讀

    NVMe高速傳輸之?dāng)[脫XDMA設(shè)計(jì)之七:系統(tǒng)初始化

    直接采用PCIe實(shí)現(xiàn)NVMe功能,它的系統(tǒng)初始化流程主要分為鏈路訓(xùn)練、PCIe 初始化和 NVMe 初始化, 分別實(shí)現(xiàn) PCIe鏈路連接、 PCIe 設(shè)備枚舉
    發(fā)表于 07-04 09:14

    物聯(lián)網(wǎng)開(kāi)發(fā)提速秘籍:LuatIO可視GPIO工具,效率翻倍!

    是否被GPIO的復(fù)雜配置拖慢項(xiàng)目進(jìn)度?LuatIO以圖形界面重構(gòu)開(kāi)發(fā)流程,從參數(shù)設(shè)定到信號(hào)映射
    的頭像 發(fā)表于 06-09 15:54 ?608次閱讀
    物聯(lián)網(wǎng)開(kāi)發(fā)提速秘籍:<b class='flag-5'>LuatIO</b>可視<b class='flag-5'>化</b><b class='flag-5'>GPIO</b>工具,效率翻倍!

    LuatIO:一鍵可視,讓GPIO配置成為物聯(lián)網(wǎng)開(kāi)發(fā)的“絲滑體驗(yàn)”!

    面對(duì)硬件接口配置的瑣碎工作,LuatIO提供全新解決方案——可視編輯器將引腳管理變?yōu)椤八?jiàn)即所得”,實(shí)時(shí)模擬與錯(cuò)誤提示功能確保零失誤,開(kāi)發(fā)速度直線飆升! ? 本文以Air780EPM為例
    的頭像 發(fā)表于 06-04 16:28 ?716次閱讀
    <b class='flag-5'>LuatIO</b>:一鍵可視<b class='flag-5'>化</b>,讓<b class='flag-5'>GPIO</b><b class='flag-5'>配置</b>成為物聯(lián)網(wǎng)開(kāi)發(fā)的“絲滑體驗(yàn)”!