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

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

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

3天內不再提示

RTT大賽作品:AB32VG1開發板—RGB交替閃爍

嵌入式開發 ? 來源:AB32VG1開發筆記 ? 作者:AB32VG1開發筆記 ? 2021-11-06 18:59 ? 次閱讀

【RTT大賽作品連載】AB32VG1開發板——RGB交替閃爍

1. 實驗目的

讓板載 RGB 燈交替閃爍

2. 開發板硬件平臺

poYBAGGGRgCAejjsABX3VGGeJIc209.png

RGB燈硬件電路,可知,使用 RGB 燈組要使用

PE1 —— 紅

PA1 —— 藍

PE4 —— 綠

pYYBAGGGXsmAObtfAABjOi7lL1M212.png

poYBAGGGXteARcgAAABNgTuU8OE787.png

3. 軟件編寫

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

//rgb.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 "rgb.h"
#include "rtthread.h"
#include "board.h"

struct Led_s
{
    uint8_t LED_R;
    uint8_t LED_B;
    uint8_t LED_G;
};   //  定義一個 RGB 結構體

struct Led_s Led;
rt_thread_t rgb_thread = RT_NULL;

void RGB_Init(void)
{
    //  獲得 led
    Led.LED_R = rt_pin_get("PE.1");
    Led.LED_G = rt_pin_get("PE.4");
    Led.LED_B = rt_pin_get("PA.1");
    //  設置引腳為輸出方式
    rt_pin_mode(Led.LED_R, PIN_MODE_OUTPUT);
    rt_pin_mode(Led.LED_G, PIN_MODE_OUTPUT);
    rt_pin_mode(Led.LED_B, PIN_MODE_OUTPUT);

    rt_kprintf("rgb init success\n");
}

//傳入參數  on=1:對應亮,on=0:對應滅
//紅燈驅動
void RGB_Red(rt_bool_t on)
{
    rt_pin_write(Led.LED_G, PIN_HIGH);
    rt_pin_write(Led.LED_B, PIN_HIGH);
    if (on) {
        rt_pin_write(Led.LED_R, PIN_LOW);
    } else {
        rt_pin_write(Led.LED_R, PIN_HIGH);
    }
}
//藍燈驅動
void RGB_Blue(rt_bool_t on){
    rt_pin_write(Led.LED_G, PIN_HIGH);
    rt_pin_write(Led.LED_R, PIN_HIGH);
    if (on) {
        rt_pin_write(Led.LED_B, PIN_LOW);
    } else {
        rt_pin_write(Led.LED_B, PIN_HIGH);
    }
}
//綠燈驅動
void RGB_Green(rt_bool_t on)
{
    rt_pin_write(Led.LED_R, PIN_HIGH);
    rt_pin_write(Led.LED_B, PIN_HIGH);
    if (on) {
        rt_pin_write(Led.LED_G, PIN_LOW);
    } else {
        rt_pin_write(Led.LED_G, PIN_HIGH);
    }
}

void rgb_switch(void)
{
    static uint8_t led_num = 0;
    if(led_num == 0)
        RGB_Red(1);
    else if(led_num == 1)
        RGB_Blue(1);
    else if(led_num == 2)
        RGB_Green(1);
    led_num++;
    if(led_num == 3)
        led_num = 0;
}

void rgb_thread_entry(void* p)
{
    RGB_Init();
    while(1)
    {
        rt_thread_mdelay(500);
        rgb_switch();
    }
}

static int Thread_RGB(void)
{
    rgb_thread = rt_thread_create("rgb", rgb_thread_entry, RT_NULL, 512, 10, 10);
    if(rgb_thread == RT_NULL)
    {
        rt_kprintf("Thread_GRB Init ERROR");
        return RT_ERROR;
    }
    rt_thread_startup(rgb_thread);
}

INIT_APP_EXPORT(Thread_RGB);

//rgb.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_RGB_H_
#define APPLICATIONS_RGB_H_

#endif /* APPLICATIONS_RGB_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

點擊開始即可下載成功

poYBAGGGRoeAOoWjAAEzlPzfcAs365.png

5. 實驗現象:

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

板載RGB燈,紅色綠色藍色交替閃爍。

6. 總結

每一個偉大的程序員都要從 led 及 helloworld 開始,哈哈。

編輯:fqj

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

    關注

    6058

    文章

    44816

    瀏覽量

    644495
  • RTT
    RTT
    +關注

    關注

    0

    文章

    66

    瀏覽量

    17455
  • 中科藍訊
    +關注

    關注

    9

    文章

    57

    瀏覽量

    10078
收藏 0人收藏
  • 情绝艳芳华1

評論

相關推薦

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

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

藍橋杯物聯網開發板硬件組成

第一節開發板簡介物聯網設計與開發競賽實訓平臺由藍橋杯大賽技術支持單位北京四梯科技有限公司設計和生產,該產品可用于參加藍橋杯物聯網設計與開發賽道的競賽實訓或院校相關課程的實踐教學環節。
的頭像 發表于 12-22 21:30 ?972次閱讀
藍橋杯物聯網<b class='flag-5'>開發板</b>硬件組成

【敏矽微ME32G070開發板免費體驗】使用JLINK的RTT功能實現類似串口printf打印功能

和浮點數,所以我還是希望 敏矽微 能給我補發一個好的 ME32G070開發板,方便我后面做電機FOC等復雜算法來實現浮點數據的打印功能。在此先謝謝電子發燒友群主。 Jlink RTT的打印結果視頻如下
發表于 12-15 20:30

【迅為】瑞芯微RK3588開發板RK3568開發板區別及優勢

RK3568開發板
的頭像 發表于 11-18 14:19 ?1135次閱讀
【迅為】瑞芯微RK3588<b class='flag-5'>開發板</b>RK3568<b class='flag-5'>開發板</b>區別及優勢

【RA8D1試用活動】RA8D1B-CPKCOR開發板移植linux

【RA8D1試用活動】RA8D1B-CPKCOR開發板移植linux
的頭像 發表于 11-16 01:02 ?613次閱讀
【RA8D<b class='flag-5'>1</b>試用活動】RA8D<b class='flag-5'>1</b>B-CPKCOR<b class='flag-5'>開發板</b>移植linux

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

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

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

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

51開發板芯片資料

51開發板芯片資料
發表于 09-18 09:29 ?1次下載

linux開發板與樹莓派的區別

定義和用途 Linux開發板:Linux開發板是一種基于Linux操作系統的嵌入式開發板,通常用于工業自動化、物聯網、智能家居等領域。 樹莓派:樹莓派(Raspberry Pi)是一種基于Linux
的頭像 發表于 08-30 15:34 ?1568次閱讀

linux開發板如何編譯curl

在Linux開發板上編譯 curl 庫通常涉及到幾個步驟,包括準備開發環境、下載源代碼、配置編譯選項以及執行編譯和安裝過程。以下是一個基本的指南,幫助你在Linux開發板上編譯 curl 。
的頭像 發表于 08-30 15:33 ?1100次閱讀

機智云ESP8266開發板RGB彩燈控件

用戶帶來了全新的家居體驗。無論是個性化的燈光設置,還是智能化的遠程管理,這款產品都展現了其在智能家居領域的引領地位。機智云esp8266開發板RGB彩燈控件1、將
的頭像 發表于 08-09 08:10 ?632次閱讀
機智云ESP8266<b class='flag-5'>開發板</b><b class='flag-5'>RGB</b>彩燈控件

智能家居之旅(7):HomeAssistant開發板RGB顏色

怎么上HomeAssistant,然后控制Ai-M61開發板RGB 燈的顏色,感覺這個項目用來控制家里的燈條就挺不錯的。 彩燈實體創建 1.彩燈實體資源啟用 彩燈實體在 HomeAssistant
的頭像 發表于 07-03 16:39 ?697次閱讀
智能家居之旅(7):HomeAssistant<b class='flag-5'>開發板</b>的<b class='flag-5'>RGB</b>顏色

第2章_開發板使用

本課程使用 ST-Link 給開發板供電、燒錄、調試。
的頭像 發表于 06-29 14:25 ?3667次閱讀
第2章_<b class='flag-5'>開發板</b>使用

米爾NXP i.MX 93開發板的Qt開發指南

1.概述Qt是一個跨平臺的圖形應用開發框架,被應用在不同尺寸設備和平臺上,同時提供不同版權版本供用戶選擇。米爾NXPi.MX93開發板(MYD-LMX9X開發板)使用Qt6.5版本進行
的頭像 發表于 06-07 08:01 ?2050次閱讀
米爾NXP i.MX 93<b class='flag-5'>開發板</b>的Qt<b class='flag-5'>開發</b>指南

鴻蒙OpenHarmony開發板解析:【芯片解決方案】

芯片解決方案是指基于某款開發板的完整解決方案,包含驅動、設備側接口適配、開發板sdk等。
的頭像 發表于 05-10 15:42 ?1528次閱讀
鴻蒙OpenHarmony<b class='flag-5'>開發板</b>解析:【芯片解決方案】
主站蜘蛛池模板: 四虎院影永久在线观看 | 草草影院ccyy国产日本欧美 | 888米奇色狠狠俺去啦 | 天天摸天天看天天做天天爽 | 天天色色色 | 天天插夜夜爽 | 天天干天天摸 | 视频黄色免费 | 人人射人人 | 免费在线观看的网站 | 成人夜色视频网站在线观看 | 中文一区二区在线观看 | 色中色软件 | 久久国产乱子伦精品免费看 | 理论片免费午夜 | 91aaa免费观看在线观看资源 | xvideos69日本hd| 女人张开双腿让男人桶完整 | 国产精品推荐天天看天天爽 | 美日韩毛片 | 国产色秀视频 | 色爱区综合激情五月综合色 | 在线观看亚洲一区二区 | 中文字幕在线永久在线视频2020 | 最近观看免费高清视频 | 一级特黄特黄xxx视频 | 日韩毛片在线影视 | 天天干天天操天天插 | 国产精品欧美一区二区三区 | 日本久久高清视频 | 老逼影院 | 天天做天天爱天天射 | 国产精品二区三区免费播放心 | 91aaa免费观看在线观看资源 | 四虎永久精品免费网址大全 | 1000又爽又黄禁片 | 69女poren18中国| 另类free性欧美护士 | 色婷婷综合久久久 | 欧美性黑人极品hd网站 | 永久免费av网站 |

電子發燒友

中國電子工程師最喜歡的網站

  • 2931785位工程師會員交流學習
  • 獲取您個性化的科技前沿技術信息
  • 參加活動獲取豐厚的禮品