一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

3天內不再提示

RA6M3 RT-Thread* LVGL HMI Board開發(fā)實踐指南-GPIO實踐

RTThread物聯(lián)網(wǎng)操作系統(tǒng) ? 來源:未知 ? 2023-11-30 19:05 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

RT-Thread即將發(fā)布一系列RA6M3外設驅動的實踐指南,我們將使用瑞薩RA6M3 HMI-Board 開發(fā)板,帶領大家上手RT-Thread設備驅動, 本篇文章將介紹GPIO外設。GPIO是最常見的外設,GPIO可以實現(xiàn)對IO的高低電平控制,讀取IO的電平,以及配置為中斷輸入后,在中斷函數(shù)中處理相關事件待。

開發(fā)板簡介

HMI-Board 為 RT-Thread 聯(lián)合瑞薩推出的高性價比圖形評估套件,相比較于傳統(tǒng)的 HMI +主控板,一套硬件即可實現(xiàn) HMI + IoT +控制的全套能力。依托于瑞薩高性能芯片 RA6M3 及 RT-Thread 軟件生態(tài),HMI Board 不僅硬件性能強勁,同時軟件生態(tài)豐富,助力開發(fā)者快速開發(fā)出 GUI 智能硬件產(chǎn)品。

開發(fā)環(huán)境搭建指南

詳見瑞薩RA6M3開發(fā)實踐指南-UART實踐(qq.com)

wKgaomVobY2Ae7UIAANZs5bcm58876.png

本章內容

我們將使用RT-Thread Studio來創(chuàng)建工程,配置IO,最終實現(xiàn)使用板載三個按鍵控制板載的兩個LED的亮與滅。

模塊介紹:

板載的兩個LED燈接入了P209與P210,原理圖如下:

wKgaomVobY2ASk3HAAAvSOxm69o572.png

板載了三個按鍵,分別接入了P005、P006、P007。原理圖如下:

wKgaomVobY2AWZ85AAE1-RqSkUc360.png

開發(fā)軟件:

RT-ThreadStudio

步驟說明

1、新建工程

●安裝開發(fā)板SDK:

打開RT-Thread Studio,點擊SDK管理器,下載開發(fā)板SDK:

等待安裝結束后退出SDK管理器

●新建HMI_RA6M3_GPIO工程:

wKgaomVobY2AIORvAADsb5WATUI084.png

●選擇基于開發(fā)板創(chuàng)建工程

wKgaomVobY6ALCt_AAScvLvSAjI931.png

●輸入工程名稱點完成生成工程:

wKgaomVobY6Aflx9AANjramcmcc751.png

●生成工程預覽如下:

wKgaomVobY6AcUfFAAKw6pvNlLE813.png

2.配置RASC工程

●選擇RA Smart Configurator文件夾位置,只需要選到FSP文件夾就行了:

wKgaomVobY-AcK_4AAQpdhw4QH8484.png

●在RASC工程配置LED為輸出模式,按鍵為輸入模式,并設置為默認的中斷號。保存并生成工程:

wKgaomVobY-AXpWtAAJq17qtZkk386.png

3. 編寫代碼

我們編寫hal_entry.c代碼如下:

/*

*Copyright(c)2006-2023,RT-ThreadDevelopmentTeam

*

*SPDX-License-Identifier:Apache-2.0

*

*ChangeLogs:

*DateAuthorNotes

*2021-10-10Shermanfirstversion

*/

#include

#include"hal_data.h"

#include

#defineUSER1_PINBSP_IO_PORT_02_PIN_09/*OnboardLEDpins*/

#defineUSER2_PINBSP_IO_PORT_02_PIN_10/*OnboardLEDpins*/

#defineTN0_PINBSP_IO_PORT_00_PIN_05/*OnboardTN0pins*/

#defineTN1_PINBSP_IO_PORT_00_PIN_06/*OnboardTN1pins*/

#defineTN2_PINBSP_IO_PORT_00_PIN_07/*OnboardTN2pins*/

staticuint8_tled_flash_state=0;

voidled_off(void*args)

{

rt_kprintf("bnt0down! ");

led_flash_state=0;

}

voidled_on(void*args)

{

rt_kprintf("bnt1down! ");

led_flash_state=1;

}

#defineTHREAD_PRIORITY25

#defineTHREAD_STACK_SIZE512

#defineTHREAD_TIMESLICE5

staticrt_thread_ttid1=RT_NULL;

/*線程1的入口函數(shù)*/

staticvoidthread_led_flash_entry(void*parameter)

{

staticuint32_tflash_cnt;

while(1)

{

if(led_flash_state==0){

rt_pin_write(USER1_PIN,PIN_LOW);

rt_pin_write(USER2_PIN,PIN_LOW);

}

elseif(led_flash_state==1){

rt_pin_write(USER1_PIN,PIN_HIGH);

rt_pin_write(USER2_PIN,PIN_HIGH);

}

elseif(led_flash_state==2){

if(flash_cnt<50)

{

rt_pin_write(USER1_PIN,PIN_HIGH);

rt_pin_write(USER2_PIN,PIN_LOW);

}

elseif(flash_cnt<100)

{

rt_pin_write(USER1_PIN,PIN_LOW);

rt_pin_write(USER2_PIN,PIN_HIGH);

}

else{

flash_cnt=0;

}

flash_cnt++;

}

rt_thread_mdelay(10);

}

}

voidkey_init(void)

{

/*按鍵0引腳為輸入模式*/

rt_pin_mode(TN0_PIN,PIN_MODE_INPUT_PULLUP);

/*綁定中斷,下降沿模式,回調函數(shù)名為beep_on*/

rt_pin_attach_irq(TN0_PIN,PIN_IRQ_MODE_FALLING,led_off,RT_NULL);

/*使能中斷*/

rt_pin_irq_enable(TN0_PIN,PIN_IRQ_ENABLE);

/*按鍵1引腳為輸入模式*/

rt_pin_mode(TN1_PIN,PIN_MODE_INPUT_PULLUP);

/*綁定中斷,下降沿模式,回調函數(shù)名為beep_on*/

rt_pin_attach_irq(TN1_PIN,PIN_IRQ_MODE_FALLING,led_on,RT_NULL);

/*使能中斷*/

rt_pin_irq_enable(TN1_PIN,PIN_IRQ_ENABLE);

/*按鍵2引腳為輸入模式*/

rt_pin_mode(TN2_PIN,PIN_MODE_INPUT_PULLUP);

}

voidhal_entry(void)

{

rt_kprintf(" HelloRT-Thread! ");

key_init();

/*創(chuàng)建線程1,名稱是thread1,入口是thread1_entry*/

tid1=rt_thread_create("thread_led",

thread_led_flash_entry,RT_NULL,

THREAD_STACK_SIZE,

THREAD_PRIORITY,THREAD_TIMESLICE);

/*如果獲得線程控制塊,啟動這個線程*/

if(tid1!=RT_NULL)

rt_thread_startup(tid1);

while(1)

{

if(rt_pin_read(TN2_PIN)==0)

{

rt_thread_delay(10);

if(rt_pin_read(TN2_PIN)==0)

led_flash_state=2;

rt_kprintf(" TN2pushdown! ");

}

rt_thread_delay(10);

}

}

4.代碼驗證

我們編譯下載后,我們按TN0,兩個LED亮,按下TN1,兩個LED燈滅,按下TN2,兩個LED燈交替閃爍。

章節(jié)總結

本章主要介紹了如果新建GPIO工程,RASC工程配置,驅動三個按鍵與三個LED燈的GPIO,涉及到了GPIO的輸出、輸入的配置,中斷輸入的配置與以及中斷回調函數(shù)的編寫。本文函蓋了GPIO的所有操作。

也可以閱讀帖子:

https://club.rt-thread.org/ask/article/ddc499ea99f1ea23.html

【購買HMIBoard】

wKgaomVobZCAfdWZAAie-EV0EwA449.png

———————End——————

新生態(tài),創(chuàng)未來 | 2023RT-Thread 開發(fā)者大會開啟報名

邀請你參加 2023 RT-Thread 開發(fā)者大會的大理由

1、刷新RT-Thread最新技術動態(tài)和產(chǎn)業(yè)服務能力

2、聆聽行業(yè)大咖分享,洞察產(chǎn)業(yè)趨勢

3、豐富的技術和產(chǎn)品展示,前沿技術發(fā)展和應用

4、絕佳的實踐機會:AIOT、MPU、RISC-V...

5、精美伴手禮人手一份開發(fā)板盲盒和免費午餐

6、黑科技滿點~滴水湖地鐵口安排無人車接送至會場

立刻掃碼報名吧

wKgaomVobZCAPPGDAAAGEVCsn_o921.png


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

    關注

    32

    文章

    1406

    瀏覽量

    41920
  • RA6M3
    +關注

    關注

    0

    文章

    52

    瀏覽量

    288

原文標題:RA6M3 RT-Thread* LVGL HMI Board開發(fā)實踐指南-GPIO實踐

文章出處:【微信號:RTThread,微信公眾號:RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    2025 RT-Thread全球技術大會議程正式發(fā)布!

    RT-ThreadGlobalTechConference(RT-ThreadGTC,RT-Thread全球技術大會)是聚焦基礎軟件技術創(chuàng)新與實踐的嵌入式技術盛會,持續(xù)推動技術價值轉化
    的頭像 發(fā)表于 05-27 19:28 ?650次閱讀
    2025 <b class='flag-5'>RT-Thread</b>全球技術大會議程正式發(fā)布!

    【直播預告】《實時操作系統(tǒng)應用技術—基于RT-Thread與ARM的編程實踐》教學脈絡及資源簡介

    直播預告直播主題:《實時操作系統(tǒng)應用技術—基于RT-Thread與ARM的編程實踐》教學脈絡及資源簡介開放時間:2025年5月29日(周四)20:00主講老師:王宜懷課程類型:視頻直播觀看平臺
    的頭像 發(fā)表于 05-26 17:50 ?373次閱讀
    【直播預告】《實時操作系統(tǒng)應用技術—基于<b class='flag-5'>RT-Thread</b>與ARM的編程<b class='flag-5'>實踐</b>》教學脈絡及資源簡介

    RA-Eco-RA4M2開發(fā)板評測】RT-Thread上驅動I2C溫濕度傳感器

    一、基礎準備 RA-Eco-RA4M2開發(fā)板上有個I2C接口,直接拿來用。 接口為P408/P409,是從SCI3設置過來的,瑞薩的SCI挺有意思,英文名叫Serial Communications
    發(fā)表于 05-08 22:42

    RA-Eco-RA4M2開發(fā)板評測】開箱和RT-Thread上手操作

    首先感謝瑞薩電子 & 電子發(fā)燒友給與的機會。 一、簡介 RA-Eco-RA4M2-100PIN-V1.0開發(fā)板基于R7FA4M2AD3CFP MCU,采用了Cortex-M33
    發(fā)表于 04-25 23:33

    《恩智浦FRDM-MCXA156開發(fā)實踐指南》上線啦

    RT-Thread率先支持NXPFRDM-MCXA156,并聯(lián)合恩智浦半導體推出了NXPFRDM-MCXA156開發(fā)板評測活動。測評活動順利完成,并且有了不錯的產(chǎn)出,我們將大家的測試文檔及代碼整理后
    的頭像 發(fā)表于 04-06 10:51 ?1015次閱讀
    《恩智浦FRDM-MCXA156<b class='flag-5'>開發(fā)</b><b class='flag-5'>實踐</b><b class='flag-5'>指南</b>》上線啦

    HMI-Board OTA升級快速上手指南

    硬件平臺HMI-BoardRT-Thread聯(lián)合瑞薩推出的高性價比圖形評估套件,取代傳統(tǒng)的HMI+主控板硬件,一套硬件即可實現(xiàn)HMI+IoT+控制的全套能力。依托于瑞薩高性能芯片
    的頭像 發(fā)表于 01-18 11:46 ?793次閱讀
    <b class='flag-5'>HMI-Board</b> OTA升級快速上手<b class='flag-5'>指南</b>

    清華大學出版社推出RT-Thread新作,助力嵌入式開發(fā)人才培養(yǎng)

    RT-Thread操作系統(tǒng)》。作為第16本關于RT-Thread的權威著作,本書旨在培養(yǎng)和鍛煉嵌入式系統(tǒng)應用的開發(fā)技術,以實踐為主線,全面介紹了基于STM32F1HAL庫和國產(chǎn)R
    的頭像 發(fā)表于 01-16 19:07 ?621次閱讀
    清華大學出版社推出<b class='flag-5'>RT-Thread</b>新作,助力嵌入式<b class='flag-5'>開發(fā)</b>人才培養(yǎng)

    RT-Thread上CAN實踐

    開箱測試RT-Thread官方已完成了對英飛凌XMC7200EVK的移植,通過shell可以看到做好了uart3的console。本文將介紹如何進行RT-ThreadCan移植。接下來我們要完成CAN_FD的驅動移植,并正常啟動
    的頭像 發(fā)表于 11-13 01:03 ?2111次閱讀
    <b class='flag-5'>RT-Thread</b>上CAN<b class='flag-5'>實踐</b>

    開源共生 商業(yè)共贏 | RT-Thread 2024開發(fā)者大會報名啟動!

    親愛的RT-Thread開發(fā)者我們很高興地宣布,一年一度的RDC(RT-ThreadDeveloperConference,RT-Thread開發(fā)
    的頭像 發(fā)表于 10-29 08:06 ?955次閱讀
    開源共生 商業(yè)共贏 | <b class='flag-5'>RT-Thread</b> 2024<b class='flag-5'>開發(fā)</b>者大會報名啟動!

    課程上線 - RT-Thread應用開發(fā)實踐課程上線慕課平臺啦!

    我們非常高興地告訴大家,由廣東機電職業(yè)技術學院的老師們制作的,使用《RT-Thread應用開發(fā)實踐》作為教材的課程——嵌入式操作系統(tǒng)應用,正式上線慕課平臺啦!歡迎各位想要系統(tǒng)學習RT-Thre
    的頭像 發(fā)表于 09-14 08:07 ?660次閱讀
    課程上線 - <b class='flag-5'>RT-Thread</b>應用<b class='flag-5'>開發(fā)</b><b class='flag-5'>實踐</b>課程上線慕課平臺啦!

    新書發(fā)布——《RT-Thread嵌入式實時操作系統(tǒng)內核、驅動和應用開發(fā)技術》

    成,旨在深入淺出地介紹RT-Thread的內核設計、設備驅動開發(fā)及應用開發(fā)技術。書中將理論與實踐相結合,幫助讀者全面理解和掌握RT-Thread
    的頭像 發(fā)表于 09-03 08:06 ?1351次閱讀
    新書發(fā)布——《<b class='flag-5'>RT-Thread</b>嵌入式實時操作系統(tǒng)內核、驅動和應用<b class='flag-5'>開發(fā)</b>技術》

    獲獎公布!2024 RT-Thread全球巡回線下培訓火熱來襲!報名提問有獎!

    用戶送出:5塊vision board開發(fā)板、5塊ART-PI開發(fā)板和5本《RT-Thread 設備驅動開發(fā)指南》書籍。 例:已報名北京站培
    發(fā)表于 08-20 14:15

    【QEMU系列】不用開發(fā)板運行RT-Thread指南-ARM架構

    簡介在物聯(lián)網(wǎng)和嵌入式系統(tǒng)的開發(fā)中,RT-Thread操作系統(tǒng)憑借其小巧、高效和靈活的特點,受到了越來越多開發(fā)者的青睞。然而,對于很多剛剛接觸RT-Thread
    的頭像 發(fā)表于 08-09 08:35 ?1607次閱讀
    【QEMU系列】不用<b class='flag-5'>開發(fā)</b>板運行<b class='flag-5'>RT-Thread</b><b class='flag-5'>指南</b>-ARM架構

    2024 RT-Thread全球巡回 線下培訓火熱來襲!

    親愛的RT-Thread社區(qū)成員們:我們非常高興地宣布,2024年RT-Thread全球開發(fā)者線下培訓即將拉開帷幕!24年全球巡回培訓將覆蓋超10座城市及國家,為開發(fā)者提供一個深入學習
    的頭像 發(fā)表于 08-07 08:35 ?2921次閱讀
    2024 <b class='flag-5'>RT-Thread</b>全球巡回 線下培訓火熱來襲!

    【好書推薦】RT-Thread設備驅動開發(fā)指南

    強烈,他們迫切地希望有一本可以指導他們在RT-Thread開發(fā)驅動的指南。為了解決開發(fā)者的燃眉之急,《RT-Thread設備驅動
    的頭像 發(fā)表于 08-01 08:35 ?1330次閱讀
    【好書推薦】<b class='flag-5'>RT-Thread</b>設備驅動<b class='flag-5'>開發(fā)指南</b>