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

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

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

【Renesas RA6M4開發(fā)板之按鍵和LED的GPIO】

RT-Thread單片機學習 ? 來源:VOR234 ? 作者:VOR234 ? 2023-01-12 11:08 ? 次閱讀

1.0 I/O 設備模型

絕大部分的嵌入式系統(tǒng)都包括一些 I/O(Input/Output,輸入 / 輸出)設備,例如儀器上的數(shù)據(jù)顯示屏、工業(yè)設備上的串口通信、數(shù)據(jù)采集設備上用于保存數(shù)據(jù)的 Flash 或 SD 卡,以及網(wǎng)絡設備的以太網(wǎng)接口等,都是嵌入式系統(tǒng)中容易找到的 I/O 設備例子。

1.1 I/O 設備模型框架

RT-Thread 提供了一套簡單的 I/O 設備模型框架,如下圖所示,它位于硬件和應用程序之間,共分成三層,從上到下分別是 I/O 設備管理層、設備驅(qū)動框架層、設備驅(qū)動層。

在這里插入圖片描述

應用程序通過 I/O 設備管理接口獲得正確的設備驅(qū)動,然后通過這個設備驅(qū)動與底層 I/O 硬件設備進行數(shù)據(jù)(或控制)交互。

1.2 I/O 設備模型

RT-Thread 的設備模型是建立在內(nèi)核對象模型基礎之上的,設備被認為是一類對象,被納入對象管理器的范疇。每個設備對象都是由基對象派生而來,每個具體設備都可以繼承其父類對象的屬性,并派生出其私有屬性,下圖是設備對象的繼承和派生關系示意圖。

在這里插入圖片描述

2. RT-theard配置

2.1 硬件需求

實現(xiàn)功能:

板載按鍵切換LED3 不同頻閃模式。

1、RA6M4開發(fā)板

在這里插入圖片描述

2、USB下載線,ch340串口和附帶2根母母線,rx---p613;tx---p614

在這里插入圖片描述

實驗中采用按鍵和LED3都板載的(分別對應p105和p106)

2.2 軟件配置

Renesas RA6M4開發(fā)板環(huán)境配置參照:【基于 RT-Thread Studio的CPK-RA6M4 開發(fā)板環(huán)境搭建】

1、新建項目RA6M4-GPIO工程

在這里插入圖片描述

2、修改src文件下的main.c文件,其他不變。

main.c

/*
 * Copyright (c) 2006-2021, RT-Thread Development Team
 *
 * SPDX-License-Identifier: Apache-2.0
 *
 * Change Logs:
 * Date           Author        Notes
 * 2021-10-10     Sherman       first version
 * 2021-11-03     Sherman       Add icu_sample
 */

#include 
#include "hal_data.h"
#include 

#define LED3_PIN    BSP_IO_PORT_01_PIN_06
#define USER_INPUT  BSP_IO_PORT_01_PIN_05

void hal_entry(void)
{
    rt_kprintf("
Hello RT-Thread!
");

    while (1)
    {
        if (rt_pin_read(USER_INPUT)==0) {
            rt_pin_write(LED3_PIN, PIN_HIGH);
            rt_thread_mdelay(500);
            rt_pin_write(LED3_PIN, PIN_LOW);
            rt_thread_mdelay(500);
        } else {
            rt_pin_write(LED3_PIN, PIN_HIGH);
            rt_thread_mdelay(2000);
            rt_pin_write(LED3_PIN, PIN_LOW);
            rt_thread_mdelay(500);
        }
        rt_kprintf("USER_INPUT=%d !
",rt_pin_read(USER_INPUT));
        rt_thread_mdelay(1);
    }
}

保存完是灰色,沒有保存是藍色。

3. 代碼分析

采用輪詢方式檢查按鍵是否觸發(fā),好像按鍵默認拉高了

4. 下載驗證

1、編譯重構

在這里插入圖片描述

編譯成功

2、下載程序

在這里插入圖片描述

下載成功

3、CMD串口調(diào)試

在這里插入圖片描述

然后板載復位

在這里插入圖片描述

效果如下

請?zhí)砑訄D片描述

這樣我們就可以天馬行空啦!!

審核編輯:湯梓紅

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

    關注

    242

    文章

    23321

    瀏覽量

    661901
  • 單片機
    +關注

    關注

    6040

    文章

    44592

    瀏覽量

    636914
  • 開發(fā)板
    +關注

    關注

    25

    文章

    5094

    瀏覽量

    97803
  • GPIO
    +關注

    關注

    16

    文章

    1215

    瀏覽量

    52226
  • RA6M4
    +關注

    關注

    0

    文章

    51

    瀏覽量

    469
收藏 人收藏

    評論

    相關推薦

    開發(fā)板評測】Renesas RA6M4開發(fā)板ESP8266_AT

    串口也是比較常用的外設,應用也比較簡單,具體的外設功能描述也不多講什么了。下面只講如何使用CPK-RA6M4開發(fā)板通過串口連接esp8266(esp-01s)使用AT命令聯(lián)網(wǎng)。 評測所需要的環(huán)境
    的頭像 發(fā)表于 12-30 12:35 ?2413次閱讀
    【<b class='flag-5'>開發(fā)板</b>評測】<b class='flag-5'>Renesas</b> <b class='flag-5'>RA6M4</b><b class='flag-5'>開發(fā)板</b><b class='flag-5'>之</b>ESP8266_AT

    Renesas RA6M4開發(fā)板I2C(模擬)驅(qū)動ssd1306 OLED屏幕】

    Renesas RA6M4開發(fā)板I2C(模擬)驅(qū)動ssd1306 OLED屏幕】
    的頭像 發(fā)表于 01-11 09:34 ?4596次閱讀
    【<b class='flag-5'>Renesas</b> <b class='flag-5'>RA6M4</b><b class='flag-5'>開發(fā)板</b><b class='flag-5'>之</b>I2C(模擬)驅(qū)動ssd1306 OLED屏幕】

    Renesas RA6M4開發(fā)板I2C讀取BMP180氣壓溫度】

    本篇通過Renesas RA6M4開發(fā)板采用I2C讀取BMP180傳感器的氣壓溫度示例程序演示。
    的頭像 發(fā)表于 01-16 09:29 ?4056次閱讀
    【<b class='flag-5'>Renesas</b> <b class='flag-5'>RA6M4</b><b class='flag-5'>開發(fā)板</b><b class='flag-5'>之</b>I2C讀取BMP180氣壓溫度】

    如何對Renesas RA6M4開發(fā)板的FLASH模塊進行測評呢

    硬件部分本次測評的板子為基于瑞薩 RA6M4 MCU 開發(fā)的 CPK-RA6M4 MCU 評估。支持 TrustZone?的 200 MHz Arm? Cortex?-
    發(fā)表于 04-01 16:54

    Renesas RA6M4開發(fā)板GPIO/IIC(模擬)模塊測評

    首先很高興也很榮幸能成為測評的成員之一,我測評的模塊是GPIO/IIC(模擬)本次測評的板子為,Renesas RA6M4開發(fā)板,開發(fā)板集成
    發(fā)表于 04-08 11:18

    Renesas RA6M4開發(fā)板UART和GPIO測評

    Smart Configurator有上角的 generate project content,即可自動生成并同步ra6m4的uart0的相關引腳配置和驅(qū)動到rt-thread studio項目了
    發(fā)表于 04-08 11:26

    Renesas CPK-RA6M4開發(fā)板SDIO模塊評測

    首先感謝RT-Thread和Renesas給我這次評測的機會,很榮幸成為本次評測的一員。本次評測的開發(fā)板Renesas的CPK-RA6M4開發(fā)板
    發(fā)表于 07-21 11:14

    基于RT-Thread和RA6M4的網(wǎng)絡天氣時鐘設計資料推薦

    ——網(wǎng)絡天氣時鐘。硬件上實現(xiàn)也不復雜,使用RA6M4開發(fā)板做主控,只需要外接wifi模塊,LCD顯示屏,觸摸(或按鍵)等就可以了,比較方便。實現(xiàn)功能1、上電wifi自動聯(lián)網(wǎng)2、上電NTP自動對時3、實時
    發(fā)表于 08-17 14:56

    Renesas RA6M4開發(fā)板USB-H評測活動

    1、Renesas RA6M4開發(fā)板USB-H評測  這次是第二次接觸這塊開發(fā)板了,但是還是第一次仔細觀察這塊
    發(fā)表于 11-22 16:08

    開發(fā)板評測】Renesas RA6M4開發(fā)板FLASH

    硬件部分 本次測評的板子為基于瑞薩RA6M4 MCU開發(fā)的 CPK-RA6M4 MCU 評估。 ● 支持 TrustZone ? 的200 MHz Arm Cortex -
    的頭像 發(fā)表于 12-16 18:25 ?1555次閱讀

    開發(fā)板評測】Renesas RA6M4開發(fā)板CAN

    介紹 通過閱讀用戶手冊,我們可以了解到RA6M4 MCU具有豐富的外設如IIC、SPI、CAN、USB等(如下圖)。在此次測評中我們暫且只關心CAN的使用。 國際慣例先看說明書,打開《開發(fā)板用戶手冊》認真研讀,通篇看完沒有關于CAN總線的介紹,很明顯此
    的頭像 發(fā)表于 12-20 12:10 ?1517次閱讀

    開發(fā)板評測】Renesas RA6M4開發(fā)板SDIO(SDHI)

    本次評測的開發(fā)板Renesas的CPK-RA6M4開發(fā)板,它是一款Renesas官方基于RA6M4
    的頭像 發(fā)表于 12-27 13:15 ?2592次閱讀

    基于RT-Thread Studio的CPK-RA6M4開發(fā)板環(huán)境搭建

    基于瑞薩RA6M4 MCU開發(fā)的CPK-RA6M4 MCU評估 ,通過 靈活配置軟件包和IDE,可幫助用戶對RA6M4 MCU 群組的特性
    的頭像 發(fā)表于 01-10 14:56 ?1367次閱讀
    基于RT-Thread Studio的CPK-<b class='flag-5'>RA6M4</b><b class='flag-5'>開發(fā)板</b>環(huán)境搭建

    Renesas RA6M4開發(fā)板I2C讀取mpu6050】

    本篇通過Renesas RA6M4開發(fā)板采用I2C讀取mpu6050傳感器的角加速度,角速度和溫度示例程序演示。
    的頭像 發(fā)表于 01-17 09:07 ?7988次閱讀
    【<b class='flag-5'>Renesas</b> <b class='flag-5'>RA6M4</b><b class='flag-5'>開發(fā)板</b><b class='flag-5'>之</b>I2C讀取mpu6050】

    Renesas RA6M4開發(fā)板DHT11溫濕度讀取】

    本篇通過Renesas RA6M4開發(fā)板DHT11溫濕度讀取示例程序演示。
    的頭像 發(fā)表于 01-18 17:18 ?1719次閱讀
    【<b class='flag-5'>Renesas</b> <b class='flag-5'>RA6M4</b><b class='flag-5'>開發(fā)板</b><b class='flag-5'>之</b>DHT11溫濕度讀取】