女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

RTT大賽作品:AB32VG1開發板—按鍵掃描

嵌入式開發 ? 來源:AB32VG1開發筆記 ? 作者:AB32VG1開發筆記 ? 2021-11-15 09:54 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

【RTT大賽作品連載】AB32VG1開發板——按鍵掃描

1. 實驗目的

讓板載 三個用戶按鍵,通過掃描按鍵,打印按鍵值。

2. 開發板硬件平臺

poYBAGGGRgCAejjsABX3VGGeJIc209.png

按鍵硬件電路,可知,使用 按鍵要使用

PF1 —— S2

PF0 —— S3

PAS —— S4

poYBAGGGnvCAQcGHAABcdDRNTVI869.png

3. 軟件編寫

在 application 目錄下,新建 key.c 和 key.h

//key.c
/*
 * Copyright (c) 2006-2021, RT-Thread Development Team
 *
 * SPDX-License-Identifier: Apache-2.0
 *
 * Change Logs:
 * Date           Author       Notes
 * 2021-11-06     Administrator       the first version
 */
#include "key.h"
#include 
#include "board.h"

struct key_s
{
    uint8_t k0;
    uint8_t k1;
    uint8_t k2;
};
struct key_s button;

//PF0   PF1     PA2
static int key_init(void)
{
    button.k0 = rt_pin_get("PF.0");
    button.k1 = rt_pin_get("PF.1");

    rt_pin_mode(button.k0, PIN_MODE_INPUT_PULLUP);
    rt_pin_mode(button.k1, PIN_MODE_INPUT_PULLUP);

    rt_kprintf("key init\n");
    return 0;
}

#define KEY0_PRES 1
#define KEY1_PRES 2

static uint8_t btn_scan(uint8_t mode)
{
    static uint8_t key_up = 1;

    if(mode)
        key_up = 1;

    if(key_up && ((rt_pin_read(button.k0) == PIN_LOW) || (rt_pin_read(button.k1) == PIN_LOW)))
    {
        rt_thread_mdelay(10);
        key_up = 0;
        if(rt_pin_read(button.k0) == PIN_LOW)
            return KEY0_PRES;
        else if(rt_pin_read(button.k1) == PIN_LOW)
            return KEY1_PRES;
    }else if((rt_pin_read(button.k0) == PIN_HIGH) && (rt_pin_read(button.k1) == PIN_HIGH))
        key_up = 1;

    return 0;
}

static void btn_thread_entry(void* p)
{
    uint8_t byn_value = 0;

    while(1)
    {
        byn_value = btn_scan(0);
        switch(byn_value)
        {
            case KEY0_PRES:
                rt_kprintf("key0 pushed\n");
                break;
            case KEY1_PRES:
                rt_kprintf("key1 pushed\n");
                break;
            default:
                break;
        }
        rt_thread_mdelay(100);
    }
}

static int Thread_btn(void)
{
    rt_thread_t thread = RT_NULL;

    key_init();
    thread = rt_thread_create("button", btn_thread_entry, RT_NULL, 512, 11, 10);
    if(thread == RT_NULL)
    {
        rt_kprintf("Thread_btn Init ERROR");
        return RT_ERROR;
    }
    rt_thread_startup(thread);
}

INIT_APP_EXPORT(Thread_btn);


//key.h
/*
 * Copyright (c) 2006-2021, RT-Thread Development Team
 *
 * SPDX-License-Identifier: Apache-2.0
 *
 * Change Logs:
 * Date           Author       Notes
 * 2021-11-06     Administrator       the first version
 */
#ifndef APPLICATIONS_KEY_H_
#define APPLICATIONS_KEY_H_


#endif /* APPLICATIONS_KEY_H_ */

修改main.c

/*
 * Copyright (c) 2020-2021, Bluetrum Development Team
 *
 * SPDX-License-Identifier: Apache-2.0
 *
 * Change Logs:
 * Date           Author       Notes
 * 2020/12/10     greedyhao    The first version
 */

/**
 * Notice!
 * All functions or data that are called during an interrupt need to be in RAM.
 * You can do it the way exception_isr() does.
 */

#include 
#include "board.h"

int main(void)
{
    rt_kprintf("Hello, world\n");

    while (1)
    {
        rt_thread_mdelay(500);
        rt_thread_mdelay(500);
    }
}

4. 程序編譯下載

編譯程序,點擊小錘子即可。

pYYBAGGGRnmADAsxAAKXmT_LCcc372.png

下載程序

打開我們下載的Downloader軟件,雙擊Downloader.exe

配置連接串口,千萬不要搞錯串口號哦。

選擇工程目錄下的\Debug\rtthread.dcf,這里我的完整目錄是

D:\RT-ThreadStudio\workspace\ab32vg1_demo\Debug\rtthread.dcf

點擊開始即可下載成功

5. 實驗現象:

download 串口打印 msh 控制臺信息。

按鍵觸發打印,不支持連按。

poYBAGGGoY6AMvHBAACVkF7P9kU341.png

6. 總結

目前是通過引腳輪詢讀取來實現按鍵掃描,后面可以試試IO中斷的方式實現,哈哈。

編輯:fqj

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

    關注

    6067

    文章

    44983

    瀏覽量

    650320
  • 開發板
    +關注

    關注

    25

    文章

    5676

    瀏覽量

    104576
  • RTT
    RTT
    +關注

    關注

    0

    文章

    66

    瀏覽量

    17649
  • 中科藍訊
    +關注

    關注

    9

    文章

    61

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    上手體驗安信可小安派AI開發板,如何接入Home Assistant?

    以下作品由安信可社區用戶 無垠的廣袤 制作 感謝安信可社區的支持,免費領到了安信可的最新產品 小安AI - AiPi-PalChatV1 語音開發板。 原貼地址: 【AiPi-PalChatV
    的頭像 發表于 07-08 10:34 ?398次閱讀
    上手體驗安信可小安派AI<b class='flag-5'>開發板</b>,如何接入Home Assistant?

    有ARM,NPU,FPGA三種核心的開發板 — 米爾安路飛龍派開發板

    ,是A股首家專注于FPGA業務的上市公司。YM90X開發板用的就是安路的SALDRAGON1(飛龍1,以下簡稱DR1)系列FPSoC。FPSoC就是將ARM、NPU和
    的頭像 發表于 06-13 08:03 ?598次閱讀
    有ARM,NPU,FPGA三種核心的<b class='flag-5'>開發板</b> — 米爾安路飛龍派<b class='flag-5'>開發板</b>

    【新品】遠距離圖傳數傳模塊開發板、藍牙模塊開發板、無線模塊開發板

    新品上市圖傳數傳模塊開發板藍牙模塊開發板國產無線模塊開發板部分型號參與送樣文末了解詳情↓↓↓EWT611-900NW20S遠距離圖傳數傳模塊開發板EWT611-900NW20S是一款入
    的頭像 發表于 06-12 19:33 ?333次閱讀
    【新品】遠距離圖傳數傳模塊<b class='flag-5'>開發板</b>、藍牙模塊<b class='flag-5'>開發板</b>、無線模塊<b class='flag-5'>開發板</b>

    【免費試用】倒計時六天!RISC-V、OH、RK開發板等你來申請!

    技術人的狂歡,開發者的盛宴!2025年最值得期待的硬核賽事——電子發燒友開發板評測大賽正式啟動!無論你是開源生態的探索者、芯片架構的極客,還是物聯網領域的創新達人,本次大賽
    的頭像 發表于 06-10 08:05 ?185次閱讀
    【免費試用】倒計時六天!RISC-V、OH、RK<b class='flag-5'>開發板</b>等你來申請!

    【免費試用】開發板評測大賽開啟!OH 、RISC-V、Rockchip頂級開發板等你試用~

    技術人的狂歡,開發者的盛宴!2025年最值得期待的硬核賽事——電子發燒友開發板評測大賽正式啟動!無論你是開源生態的探索者、芯片架構的極客,還是物聯網領域的創新達人,本次大賽
    的頭像 發表于 06-05 08:05 ?281次閱讀
    【免費試用】<b class='flag-5'>開發板</b>評測<b class='flag-5'>大賽</b>開啟!OH 、RISC-V、Rockchip頂級<b class='flag-5'>開發板</b>等你試用~

    T527開發板+OpenHarmony評測大賽邀你來戰!0元參與,贏百元禮品

    【電子發燒友開發板評測大賽】正式啟動,等你來戰!本次大賽以“評測性能、探索易用性、解鎖創新場景”為核心,旨在通過深度技術分享與實戰演練,推動硬件生態開放共享,加速產品迭代創新,激發行業創造力。
    的頭像 發表于 05-30 08:05 ?484次閱讀
    T527<b class='flag-5'>開發板</b>+OpenHarmony評測<b class='flag-5'>大賽</b>邀你來戰!0元參與,贏百元禮品

    一個不錯的活動:電子發燒友開發板評測大賽

    “ ?湊齊了 OpenHarmony,Risc-V,Rocketchip 三大賽道 21 款來自不同廠家的開發板,可免費申請試用。 ” ? 電子發燒友開發板評測大賽正式啟動!無論你是開
    的頭像 發表于 05-21 11:19 ?188次閱讀
    一個不錯的活動:電子發燒友<b class='flag-5'>開發板</b>評測<b class='flag-5'>大賽</b>

    開發板評測大賽開啟!頂級開發板等你來戰!

    技術人的狂歡,開發者的盛宴!2025年最值得期待的硬核賽事——電子發燒友開發板評測大賽正式啟動!無論你是開源生態的探索者、芯片架構的極客,還是物聯網領
    的頭像 發表于 05-20 08:07 ?159次閱讀
    <b class='flag-5'>開發板</b>評測<b class='flag-5'>大賽</b>開啟!頂級<b class='flag-5'>開發板</b>等你來戰!

    2025電子發燒友開發板評測大賽開啟!三大賽道火力全開,頂級開發板等你來戰!

    技術人的狂歡,開發者的盛宴! 2025年最值得期待的硬核賽事——電子發燒友開發板評測大賽正式啟動!無論你是開源生態的探索者、芯片架構的極客,還是物聯網領域的創新達人,本次大賽
    發表于 05-15 15:09

    dfd#電路知識 #RTT設計大賽

    RTT
    jf_34552825
    發布于 :2025年05月08日 19:50:18

    基于RK3576開發板的固件燒錄與更新

    在RK3576開發板上單擊【RESET按鍵】,長按【LOAD按鍵】等待3~4秒,松開【LOAD按鍵】出現該設備信息則可以 進行固件燒錄
    的頭像 發表于 04-21 16:54 ?643次閱讀
    基于RK3576<b class='flag-5'>開發板</b>的固件燒錄與更新

    基于RV1126開發板按鍵測試方法與例程

    RV1126開發板按鍵測試方法與例程詳細描述
    的頭像 發表于 04-15 17:03 ?349次閱讀
    基于RV1126<b class='flag-5'>開發板</b>的<b class='flag-5'>按鍵</b>測試方法與例程

    免費送30套開發板!米爾-安路飛龍派創意秀限時活動

    大賽簡介為鼓勵工程師勇于創新探索的精神,提升實踐動手能力,更深度的體驗安路飛龍派產品,米爾電子發起“米爾基于安路DR1M90開發板創意秀”,提供米爾安路DR1M90
    的頭像 發表于 04-02 08:06 ?330次閱讀
    免費送30套<b class='flag-5'>開發板</b>!米爾-安路飛龍派創意秀限時活動

    正點原子fpga開發板不同型號

    正點原子作為國內領先的FPGA開發板供應商,其產品線覆蓋了從入門級到高端應用的各個領域。這些開發板不僅適用于學術研究,還廣泛應用于工業控制、通信、圖像處理等多個領域。 1. 入門級開發板
    的頭像 發表于 11-13 09:30 ?3678次閱讀

    【干貨】性價比拉滿!HK32F407VG開發板介紹

    開發板簡介開發板是基于航順芯片公司F4系列HK32F407VGT7芯片的一款開發板,Cortex-M4內核,最高主頻168MHz,內置1MKBFlash和256KBSRAM,SDIO、
    的頭像 發表于 11-08 13:27 ?773次閱讀
    【干貨】性價比拉滿!HK32F407<b class='flag-5'>VG</b><b class='flag-5'>開發板</b>介紹