在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

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

【感芯科技64線程MC3172開發(fā)板免費(fèi)試用體驗(yàn)】1.HAL庫實(shí)現(xiàn)IO控制Led&Key

開發(fā)板試用精選 ? 來源:開發(fā)板試用 ? 作者:電子發(fā)燒友論壇 ? 2022-10-13 11:20 ? 次閱讀

本文來源電子發(fā)燒友社區(qū),作者:chenzd, 帖子地址:https://bbs.elecfans.com/jishu_2307398_1_1.html


IO_HAL(項(xiàng)目體驗(yàn)視頻,詳見作者原帖子)

1.項(xiàng)目概述:

key按下,即引腳PC.1有低電平輸入,此時(shí)led點(diǎn)亮,即PC.0為低電平;

key彈起,即引腳PC.1懸空,此時(shí)led熄滅,即PC.0為高電平。

2.軟件調(diào)試:

簡(jiǎn)述hal庫的編程的理解:引入HAL層的概念,將軟件大致分為三類:第一類hal層:直接和硬件相關(guān),操作寄存器與原始的芯片api;第二類組件層:通過hal層間接操作硬件,只需要了解部分和組件直接相關(guān)的必要硬件信息即可,主要目的是實(shí)現(xiàn)組件功能,第三類應(yīng)用層:通過調(diào)用組件層,只關(guān)注功能,關(guān)注硬件。優(yōu)勢(shì):1.有利于多人協(xié)同開發(fā):可以按三個(gè)層次對(duì)人員的工作進(jìn)行分配,定義好接口,可實(shí)現(xiàn)三層軟件同時(shí)開發(fā),大大提高開發(fā)效率2.有利于不同平臺(tái)的移植:在移植時(shí):應(yīng)用 層可不過修改,組件層修改量很少,只需要著重修改hal層就可滿足要求;

2.1Hal層:

目錄結(jié)構(gòu)如下圖所示:
hal.png

2.1.1變量:

定義結(jié)構(gòu)體:

結(jié)構(gòu)體元素為初始化io引腳的必要元素如:端口號(hào),序號(hào),輸入輸出模式,初始電平;

typedefstruct

{

u32 gpio_sel;   //port



u32 Pin;       /*!< Specifies the GPIO pins to be configured.

                       This parameter can be any value of [url=home.php?mod=space&uid=1352397]@ref[/url] GPIO_pins_define */



SYS_GpioModeDef Mode;      /*!< Specifies the operating mode for the selected pins.

                       This parameter can be a value of @ref GPIO_mode_define */

u8 Lev;         //initial electrical level;

}GPIO_InitTypeDef;

2.1.2函數(shù):

用于初始化io引腳,

voidHAL_GPIO_Init( GPIO_InitTypeDef *GPIO_Init);

用于讀取引腳的電平狀態(tài)

u8HAL_GPIO_ReadPin(GPIO_InitTypeDef *GPIO_Init);

2.2組件層

目錄結(jié)構(gòu)如下圖所示:
組件.png

初始化io引腳的步驟

  1. 定義結(jié)構(gòu)體變量
  2. 為結(jié)構(gòu)體變量賦值
  3. 引用hal函數(shù),即可實(shí)現(xiàn)引腳初始化

示例為led引腳初始化:

staticGPIO_InitTypeDef GPIO_LED0;

voidLedInit()

{

GPIO_LED0.gpio_sel = GPIOC_BASE_ADDR;

GPIO_LED0.Pin  = GPIO_PIN0;

GPIO_LED0.Mode =  *SYS_GPIO_OUTPT* ;

GPIO_LED0.Lev = 1;



HAL_GPIO_Init(&GPIO_LED0);

}

voidLedOn();

voidLedOff();

讀取引腳的電平狀態(tài)如下所示:

u8GetKeyState()

ret = HAL_GPIO_ReadPin(&GPIO_KEY0);

2.3應(yīng)用層

目錄結(jié)構(gòu)如圖所示:
app.png

voidUserFunction1()

{

KeyInit();

LedInit();



 **while** (1)

{

     **if** (GetKeyState() == 0)

    {

        LedOn();

    }

    **else**

    {

        LedOff();

    }

}

}

整體軟件的目錄結(jié)構(gòu)為,如下圖所示:

all.png

3.硬件接入:

獨(dú)立按鍵key連接引腳PC.1,key按下,有低電平輸入,key彈起,即懸空;

led連接引腳PC.0,led為共陽極,低電平點(diǎn)亮;

硬件接線如下圖所示:
硬件.png

4.視頻演示:

實(shí)際現(xiàn)象與描述一致。

5.建議

建議在開發(fā)板的硬件電路中增加led,key,3.3v/5v電源電源開關(guān),以及復(fù)位按鍵,可以提高開發(fā)者的開發(fā)效率。


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

    評(píng)論

    相關(guān)推薦

    飛凌嵌入式ElfBoard ELF 1板卡-開發(fā)板適配之LED

    嵌入式開發(fā)工程師點(diǎn)亮一個(gè)LED燈,就類似軟件工程師實(shí)現(xiàn)一個(gè)hello world程序。ELF 1開發(fā)板主控
    發(fā)表于 01-23 10:49

    dsPIC33EDV64MC205電機(jī)控制開發(fā)板用戶指南

    電子發(fā)燒友網(wǎng)站提供《dsPIC33EDV64MC205電機(jī)控制開發(fā)板用戶指南.pdf》資料免費(fèi)下載
    發(fā)表于 01-21 14:34 ?8次下載
    dsPIC33EDV<b class='flag-5'>64MC</b>205電機(jī)<b class='flag-5'>控制</b><b class='flag-5'>開發(fā)板</b>用戶指南

    【敏矽微ME32G070開發(fā)板免費(fèi)體驗(yàn)】之開發(fā)板資源&amp;gt;ADC測(cè)試

    的工程示例來修改做測(cè)試。 基本思路為使用ADC0通道測(cè)試一個(gè)已知的電壓,通過串口打印的數(shù)據(jù)來看準(zhǔn)確性。 2.硬件上,通過給開發(fā)板加上兩個(gè)短路帽即可將CH340與單片機(jī)的串口1接通,如圖: 2-1
    發(fā)表于 12-17 23:38

    【敏矽微ME32G070開發(fā)板免費(fèi)體驗(yàn)】+ADC測(cè)試與LED點(diǎn)亮

    *附件:【敏矽微ME32G070開發(fā)板免費(fèi)體驗(yàn)】+ADC測(cè)試與LED點(diǎn)亮.docx【敏矽微ME32G070開發(fā)板免費(fèi)體驗(yàn)】+ADC測(cè)試與
    發(fā)表于 12-16 19:00

    【RA-Eco-RA4E2-64PIN-V1.0開發(fā)板試用】01、點(diǎn)亮LED

    0 前言 搭建好環(huán)境之后,通過點(diǎn)亮LED燈,來測(cè)試一下開發(fā)板功能并熟悉e2s寫代碼的流程。 1 硬件部分 通過查閱開發(fā)板原理圖得知,這款RA-Eco-RA4E2-
    發(fā)表于 12-13 13:58

    【RA-Eco-RA2E1-48PIN-V1.0開發(fā)板試用LED燈切換點(diǎn)亮

    (&amp;amp;g_ioport_ctrl, BSP_IO_PORT_01_PIN_03, BSP_IO_LEVEL_HIGH); R_BSP_SoftwareDelay(500
    發(fā)表于 11-30 11:15

    追加名額丨米爾瑞微RK3576開發(fā)板有獎(jiǎng)試用

    米爾與瑞微合作發(fā)布的新品基于瑞微RK3576應(yīng)用處理器的MYD-LR3576開發(fā)板免費(fèi)試用活動(dòng)加碼啦~~米爾追加了2塊價(jià)值849元的MY
    的頭像 發(fā)表于 11-22 01:00 ?292次閱讀
    追加名額丨米爾瑞<b class='flag-5'>芯</b>微RK3576<b class='flag-5'>開發(fā)板</b>有獎(jiǎng)<b class='flag-5'>試用</b>

    有獎(jiǎng)丨米爾 瑞微RK3576開發(fā)板免費(fèi)試用

    米爾與瑞微合作發(fā)布的新品基于瑞微RK3576應(yīng)用處理器的MYD-LR3576開發(fā)板免費(fèi)試用活動(dòng)來啦~~米爾提供了7塊價(jià)值849元的MYD
    的頭像 發(fā)表于 11-12 01:00 ?432次閱讀
    有獎(jiǎng)丨米爾 瑞<b class='flag-5'>芯</b>微RK3576<b class='flag-5'>開發(fā)板</b><b class='flag-5'>免費(fèi)</b><b class='flag-5'>試用</b>

    能力再次提升! 迅為RK3588/RK3568開發(fā)板&amp;amp;amp;核心新增定制分區(qū)鏡像

    能力再次提升! 迅為RK3588/RK3568開發(fā)板&amp;核心新增定制分區(qū)鏡像
    的頭像 發(fā)表于 11-06 15:11 ?668次閱讀
    能力再次提升! 迅為RK3588/RK3568<b class='flag-5'>開發(fā)板</b>&<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;核心<b class='flag-5'>板</b>新增定制分區(qū)鏡像

    【RA-Eco-RA2E1-48PIN-V1.0開發(fā)板試用】RA-Eco-RA2E1-48PIN-V1.0開發(fā)板流水燈測(cè)試

    前幾天試用的一塊瑞薩的RA2L1AB開發(fā)板,今天就來嘗試一下設(shè)置[GPIO]來點(diǎn)亮一盞LED。 收到的開發(fā)板各項(xiàng)按鈕及插接件功能圖如下:
    發(fā)表于 11-04 23:25

    迅為itop-3568開發(fā)板AMP雙系統(tǒng)使用手冊(cè)之燒寫AMP鏡像

    迅為itop-3568開發(fā)板AMP雙系統(tǒng)使用手冊(cè)之燒寫AMP鏡像
    的頭像 發(fā)表于 11-04 15:00 ?673次閱讀
    迅為itop-3568<b class='flag-5'>開發(fā)板</b><b class='flag-5'>AMP</b>雙系統(tǒng)使用手冊(cè)之燒寫<b class='flag-5'>AMP</b>鏡像

    onsemi LV/MV MOSFET 產(chǎn)品介紹 &amp;amp;amp; 行業(yè)應(yīng)用

    01直播介紹直播時(shí)間2024/10/281430直播內(nèi)容1.onsemiLV/MVMOSFET產(chǎn)品優(yōu)勢(shì)&amp;市場(chǎng)地位。2.onsemiLV/MVMOSFETRoadmap。3.onsemiT10
    的頭像 發(fā)表于 10-13 08:06 ?578次閱讀
    onsemi LV/MV MOSFET 產(chǎn)品介紹 &<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>; 行業(yè)應(yīng)用

    FS201資料(pcb &amp;amp; DEMO &amp;amp; 原理圖)

    電子發(fā)燒友網(wǎng)站提供《FS201資料(pcb &amp; DEMO &amp; 原理圖).zip》資料免費(fèi)下載
    發(fā)表于 07-16 11:24 ?2次下載

    RK3568開發(fā)板支持AMP雙系統(tǒng)

    RK3568開發(fā)板支持AMP雙系統(tǒng)
    的頭像 發(fā)表于 06-04 15:33 ?842次閱讀
    RK3568<b class='flag-5'>開發(fā)板</b>支持<b class='flag-5'>AMP</b>雙系統(tǒng)

    在TSMaster中加載基于DotNet平臺(tái)的Seed&amp;amp;amp;Key

    在UDS診斷過程中,會(huì)涉及到安全訪問的問題,也就是所謂的Seed&amp;Key。TSMaster診斷模塊支持通過.dll文件載入Seed&amp;Key算法用于安全訪問解鎖。在最近發(fā)
    的頭像 發(fā)表于 04-02 08:20 ?672次閱讀
    在TSMaster中加載基于DotNet平臺(tái)的Seed&<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;<b class='flag-5'>Key</b>
    主站蜘蛛池模板: 亚洲乱码一区二区三区在线观看 | 性做久久久久久网站 | 日本亚洲高清乱码中文在线观看 | 中文字幕有码在线视频 | 在线视频免费观看 | 日本高清视频成人网www | 黄色大片视频在线观看 | 色吧在线观看 | 美女黄色毛片免费看 | 毛片毛片毛片毛片毛片毛片 | 日本国产高清色www视频在线 | 伊在线视频 | 亚洲福利一区二区三区 | 伊人小婷婷色香综合缴缴情 | 亚洲高清成人 | 深爱婷婷 | 午夜一区二区三区 | 日日噜噜夜夜狠狠va视频 | 色偷偷.com | 91男女视频| 日本aaaa视频 | 日本午夜大片免费观看视频 | 亚洲一区二区三区高清视频 | 操美女在线看 | 97人摸人人澡人人人超一碰 | 1300部小u女视频免费 | 国产无套粉嫩白浆 | 亚洲va国产va天堂va久久 | 在线天堂视频 | 久久日精品 | 国产精品美女www爽爽爽视频 | 人操人爱| 亚洲性久久久影院 | 日韩免费一级毛片 | 成人夜色香网站在线观看 | 特级全黄一级毛片视频 | 色无欲天天天影视综合网 | 久久天天躁狠狠躁夜夜爽 | 国产三级日本三级在线播放 | 免费理论片在线观看播放 | 狠狠五月婷婷 |