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

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

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

3天內不再提示

【感芯科技64線程MC3172開發板免費試用體驗】1.HAL庫實現IO控制Led&Key

開發板試用精選 ? 來源:開發板試用 ? 作者:電子發燒友論壇 ? 2022-10-13 11:20 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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


IO_HAL(項目體驗視頻,詳見作者原帖子)

1.項目概述:

key按下,即引腳PC.1有低電平輸入,此時led點亮,即PC.0為低電平;

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

2.軟件調試:

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

2.1Hal層:

目錄結構如下圖所示:
hal.png

2.1.1變量:

定義結構體:

結構體元素為初始化io引腳的必要元素如:端口號,序號,輸入輸出模式,初始電平;

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函數:

用于初始化io引腳,

voidHAL_GPIO_Init( GPIO_InitTypeDef *GPIO_Init);

用于讀取引腳的電平狀態

u8HAL_GPIO_ReadPin(GPIO_InitTypeDef *GPIO_Init);

2.2組件層

目錄結構如下圖所示:
組件.png

初始化io引腳的步驟

  1. 定義結構體變量
  2. 為結構體變量賦值
  3. 引用hal函數,即可實現引腳初始化

示例為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();

讀取引腳的電平狀態如下所示:

u8GetKeyState()

ret = HAL_GPIO_ReadPin(&GPIO_KEY0);

2.3應用層

目錄結構如圖所示:
app.png

voidUserFunction1()

{

KeyInit();

LedInit();



 **while** (1)

{

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

    {

        LedOn();

    }

    **else**

    {

        LedOff();

    }

}

}

整體軟件的目錄結構為,如下圖所示:

all.png

3.硬件接入:

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

led連接引腳PC.0,led為共陽極,低電平點亮;

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

4.視頻演示:

實際現象與描述一致。

5.建議

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


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    【RA-Eco-RA2E1-V1.0開發板試用】+ 按鍵控制LED

    RA-Eco-RA2E1開發板配有LEDKEY以供測試,其電路如圖1所示。 圖1LED
    發表于 02-04 21:04

    【RA-Eco-RA2E1-V1.0開發板試用】自定義按鍵控制點燈

    參見【RA-Eco-RA2E1-V1.0開發板試用】概覽、環境搭建與TTL串口燒錄點燈 涉及針腳:LED P103 和 LED P104,均
    發表于 02-03 17:09

    【瑞薩RA6E2地奇星開發板試用】+藍牙通信控制LED

    地奇星開發板具有3路串口資源,其中TXD9對應著P109,RXD9對應著P110。 此外,為與藍牙模塊相配合來實現藍牙通信控制功能,需將串口通信的波特率設置為115200bps。 另外,為顯示
    發表于 12-20 23:11

    【瑞薩RA6E2地奇星開發板試用】 環境配置+串口驅動LED

    瑞薩RA6E2地奇星開發板試用】+ 環境配置+串口驅動LED1.硬件準備 USB-TTL驅動器 USB數據線 瑞薩RA6E2地奇星測評
    發表于 12-10 15:35

    【新品上市】華清遠見AIoT實戰平臺-STM32F103&amp;amp;amp;ESP32-S3 AI開發板套件,玩轉小智AI桌寵機器狗智能車等項目

    F103&amp;ESP32-S3AI開發板是華清遠見針對嵌入式與AI開發市場需求,打造的高性能、低成本AIoT實戰平臺。該開發板采用雙核心設計,整合了STM32F103與ESP32-
    的頭像 發表于 11-03 16:18 ?1356次閱讀
    【新品上市】華清遠見AIoT實戰平臺-STM32F103&<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;ESP32-S3 AI<b class='flag-5'>開發板</b>套件,玩轉小智AI桌寵機器狗智能車等項目

    【RA-Eco-RA6M4開發板評測】Keil開發環境搭建+實現板載LED點燈

    _PORT_04_PIN_04, BSP_IO_LEVEL_HIGH) /* 使用寄存器來實現 LED燈翻轉 */ #define LED1_TOGGLE R_PORT4-&
    發表于 08-24 18:59

    【RA4E2開發板評測】LED1LED2輪流點亮并同時亮8秒,體驗FreeRTOS多線程

    5 演示效果 通過編譯后,Renesas Flash Programmer燒錄程序到開發板單片機芯片里。 兩顆LED的亮滅時間并不相同,LED1閃亮500ms,LED2閃亮800m
    發表于 08-24 17:24

    【創龍TL3562-MiniEVM開發板試用體驗】2、運行AMP案例

    /mmcblk1p8 conv=fsync Target# sync Target# reboot 注:/mmcblk1p8對于的是SD卡分區 四、運行現象 1開發板上2個
    發表于 07-29 14:15

    【創龍TL3562-MiniEVM開發板試用體驗】--開發板外設與接口測試

    本篇講述開發板使用shell命令進行驅動測試。 1.LED亮滅 開發板板載兩顆用戶LED,原理如下 下面輸入腳本命令,可以控制
    發表于 07-27 16:27

    有獎丨米爾 瑞微RK3506開發板免費試用來啦!

    米爾與瑞微合作發布的新品基于瑞微RK3506應用處理器的MYD-YR3506開發板免費試用名額增加啦
    的頭像 發表于 07-10 08:03 ?908次閱讀
    有獎丨米爾 瑞<b class='flag-5'>芯</b>微RK3506<b class='flag-5'>開發板</b><b class='flag-5'>免費</b><b class='flag-5'>試用</b>來啦!

    Texas Instruments AMP-PDK-EVM子開發套件數據手冊

    Texas Instruments AMP-PDK-EVM子開發套件設計用于搭配AMP-PDK-EVM主板使用。子套件選項適用于不同封裝
    的頭像 發表于 07-09 14:15 ?852次閱讀
    Texas Instruments <b class='flag-5'>AMP</b>-PDK-EVM子<b class='flag-5'>板</b><b class='flag-5'>開發</b>套件數據手冊

    有獎丨米爾 瑞微RK3506開發板免費試用

    米爾與瑞微合作發布的新品基于瑞微RK3506應用處理器的MYD-YR3506開發板免費試用名額來啦~~米爾提供了3塊價值299元的MYD
    的頭像 發表于 06-19 08:04 ?1069次閱讀
    有獎丨米爾 瑞<b class='flag-5'>芯</b>微RK3506<b class='flag-5'>開發板</b><b class='flag-5'>免費</b><b class='flag-5'>試用</b>

    有獎丨米爾 瑞微RK3562開發板免費試用新增名額!

    米爾與瑞微合作發布的新品基于瑞微RK3562應用處理器的MYD-YR3562開發板免費試用名額增加
    的頭像 發表于 06-13 08:04 ?1483次閱讀
    有獎丨米爾 瑞<b class='flag-5'>芯</b>微RK3562<b class='flag-5'>開發板</b><b class='flag-5'>免費</b><b class='flag-5'>試用</b>新增名額!

    【道生物聯TKB-620開發板試用】開箱&amp;amp;開發板說明&amp;amp;未來試用計劃

    開箱 各位少東家好,很榮幸獲得道生物聯TKB0620開發板試用機會,同時收到了兩套開發板解決了互聯互通的調試問題極具誠意,以下是開箱展示: 1、首先是外包裝(兩個好基友) 2、開箱后里
    發表于 04-13 20:51

    有獎丨米爾 瑞微YR3562開發板免費試用

    米爾與瑞微合作發布的新品基于瑞微RK3562應用處理器的MYD-YR3562開發板免費試用活動來啦~~米爾提供了3塊價值599元的MYD
    的頭像 發表于 03-20 08:05 ?972次閱讀
    有獎丨米爾 瑞<b class='flag-5'>芯</b>微YR3562<b class='flag-5'>開發板</b><b class='flag-5'>免費</b><b class='flag-5'>試用</b>