欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

RTT大賽作品:AB32VG1開(kāi)發(fā)板—RGB交替閃爍

嵌入式開(kāi)發(fā) ? 來(lái)源:AB32VG1開(kāi)發(fā)筆記 ? 作者:AB32VG1開(kāi)發(fā)筆記 ? 2021-11-06 18:59 ? 次閱讀

【RTT大賽作品連載】AB32VG1開(kāi)發(fā)板——RGB交替閃爍

1. 實(shí)驗(yàn)?zāi)康?/strong>

讓板載 RGB 燈交替閃爍

2. 開(kāi)發(fā)板硬件平臺(tái)

poYBAGGGRgCAejjsABX3VGGeJIc209.png

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

PE1 —— 紅

PA1 —— 藍(lán)

PE4 —— 綠

pYYBAGGGXsmAObtfAABjOi7lL1M212.png

poYBAGGGXteARcgAAABNgTuU8OE787.png

3. 軟件編寫(xiě)

在 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;
};   //  定義一個(gè) RGB 結(jié)構(gòu)體

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");
    //  設(shè)置引腳為輸出方式
    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");
}

//傳入參數(shù)  on=1:對(duì)應(yīng)亮,on=0:對(duì)應(yīng)滅
//紅燈驅(qū)動(dòng)
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);
    }
}
//藍(lán)燈驅(qū)動(dòng)
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);
    }
}
//綠燈驅(qū)動(dòng)
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. 程序編譯下載

編譯程序,點(diǎn)擊小錘子即可。

pYYBAGGGRnmADAsxAAKXmT_LCcc372.png

下載程序

打開(kāi)我們下載的Downloader軟件,雙擊Downloader.exe

配置連接串口,千萬(wàn)不要搞錯(cuò)串口號(hào)哦。

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

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

點(diǎn)擊開(kāi)始即可下載成功

poYBAGGGRoeAOoWjAAEzlPzfcAs365.png

5. 實(shí)驗(yàn)現(xiàn)象:

download 串口打印 msh 控制臺(tái)信息。

板載RGB燈,紅色綠色藍(lán)色交替閃爍。

6. 總結(jié)

每一個(gè)偉大的程序員都要從 led 及 helloworld 開(kāi)始,哈哈。

編輯:fqj

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

    關(guān)注

    6044

    文章

    44628

    瀏覽量

    639016
  • RTT
    RTT
    +關(guān)注

    關(guān)注

    0

    文章

    65

    瀏覽量

    17225
  • 中科藍(lán)訊
    +關(guān)注

    關(guān)注

    9

    文章

    57

    瀏覽量

    9938
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    藍(lán)橋杯物聯(lián)網(wǎng)開(kāi)發(fā)板硬件組成

    第一節(jié)開(kāi)發(fā)板簡(jiǎn)介物聯(lián)網(wǎng)設(shè)計(jì)與開(kāi)發(fā)競(jìng)賽實(shí)訓(xùn)平臺(tái)由藍(lán)橋杯大賽技術(shù)支持單位北京四梯科技有限公司設(shè)計(jì)和生產(chǎn),該產(chǎn)品可用于參加藍(lán)橋杯物聯(lián)網(wǎng)設(shè)計(jì)與開(kāi)發(fā)賽道的競(jìng)賽實(shí)訓(xùn)或院校相關(guān)課程的實(shí)踐教學(xué)環(huán)節(jié)。
    的頭像 發(fā)表于 12-22 21:30 ?559次閱讀
    藍(lán)橋杯物聯(lián)網(wǎng)<b class='flag-5'>開(kāi)發(fā)板</b>硬件組成

    【敏矽微ME32G070開(kāi)發(fā)板免費(fèi)體驗(yàn)】使用JLINK的RTT功能實(shí)現(xiàn)類(lèi)似串口printf打印功能

    和浮點(diǎn)數(shù),所以我還是希望 敏矽微 能給我補(bǔ)發(fā)一個(gè)好的 ME32G070開(kāi)發(fā)板,方便我后面做電機(jī)FOC等復(fù)雜算法來(lái)實(shí)現(xiàn)浮點(diǎn)數(shù)據(jù)的打印功能。在此先謝謝電子發(fā)燒友群主。 Jlink RTT的打印結(jié)果視頻如下
    發(fā)表于 12-15 20:30

    【迅為】瑞芯微RK3588開(kāi)發(fā)板RK3568開(kāi)發(fā)板區(qū)別及優(yōu)勢(shì)

    RK3568開(kāi)發(fā)板
    的頭像 發(fā)表于 11-18 14:19 ?628次閱讀
    【迅為】瑞芯微RK3588<b class='flag-5'>開(kāi)發(fā)板</b>RK3568<b class='flag-5'>開(kāi)發(fā)板</b>區(qū)別及優(yōu)勢(shì)

    【RA8D1試用活動(dòng)】RA8D1B-CPKCOR開(kāi)發(fā)板移植linux

    【RA8D1試用活動(dòng)】RA8D1B-CPKCOR開(kāi)發(fā)板移植linux
    的頭像 發(fā)表于 11-16 01:02 ?339次閱讀
    【RA8D<b class='flag-5'>1</b>試用活動(dòng)】RA8D<b class='flag-5'>1</b>B-CPKCOR<b class='flag-5'>開(kāi)發(fā)板</b>移植linux

    正點(diǎn)原子fpga開(kāi)發(fā)板不同型號(hào)

    正點(diǎn)原子作為國(guó)內(nèi)領(lǐng)先的FPGA開(kāi)發(fā)板供應(yīng)商,其產(chǎn)品線(xiàn)覆蓋了從入門(mén)級(jí)到高端應(yīng)用的各個(gè)領(lǐng)域。這些開(kāi)發(fā)板不僅適用于學(xué)術(shù)研究,還廣泛應(yīng)用于工業(yè)控制、通信、圖像處理等多個(gè)領(lǐng)域。 1. 入門(mén)級(jí)開(kāi)發(fā)板
    的頭像 發(fā)表于 11-13 09:30 ?1314次閱讀

    【干貨】性?xún)r(jià)比拉滿(mǎn)!HK32F407VG開(kāi)發(fā)板介紹

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

    51開(kāi)發(fā)板芯片資料

    51開(kāi)發(fā)板芯片資料
    發(fā)表于 09-18 09:29 ?1次下載

    linux開(kāi)發(fā)板如何編譯curl

    在Linux開(kāi)發(fā)板上編譯 curl 庫(kù)通常涉及到幾個(gè)步驟,包括準(zhǔn)備開(kāi)發(fā)環(huán)境、下載源代碼、配置編譯選項(xiàng)以及執(zhí)行編譯和安裝過(guò)程。以下是一個(gè)基本的指南,幫助你在Linux開(kāi)發(fā)板上編譯 curl 。
    的頭像 發(fā)表于 08-30 15:33 ?802次閱讀

    機(jī)智云ESP8266開(kāi)發(fā)板RGB彩燈控件

    用戶(hù)帶來(lái)了全新的家居體驗(yàn)。無(wú)論是個(gè)性化的燈光設(shè)置,還是智能化的遠(yuǎn)程管理,這款產(chǎn)品都展現(xiàn)了其在智能家居領(lǐng)域的引領(lǐng)地位。機(jī)智云esp8266開(kāi)發(fā)板RGB彩燈控件1、將
    的頭像 發(fā)表于 08-09 08:10 ?469次閱讀
    機(jī)智云ESP8266<b class='flag-5'>開(kāi)發(fā)板</b><b class='flag-5'>RGB</b>彩燈控件

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

    怎么上HomeAssistant,然后控制Ai-M61開(kāi)發(fā)板RGB 燈的顏色,感覺(jué)這個(gè)項(xiàng)目用來(lái)控制家里的燈條就挺不錯(cuò)的。 彩燈實(shí)體創(chuàng)建 1.彩燈實(shí)體資源啟用 彩燈實(shí)體在 HomeAssistant
    的頭像 發(fā)表于 07-03 16:39 ?568次閱讀
    智能家居之旅(7):HomeAssistant<b class='flag-5'>開(kāi)發(fā)板</b>的<b class='flag-5'>RGB</b>顏色

    米爾NXP i.MX 93開(kāi)發(fā)板的Qt開(kāi)發(fā)指南

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

    鴻蒙OpenHarmony開(kāi)發(fā)板解析:【芯片解決方案】

    芯片解決方案是指基于某款開(kāi)發(fā)板的完整解決方案,包含驅(qū)動(dòng)、設(shè)備側(cè)接口適配、開(kāi)發(fā)板sdk等。
    的頭像 發(fā)表于 05-10 15:42 ?1314次閱讀
    鴻蒙OpenHarmony<b class='flag-5'>開(kāi)發(fā)板</b>解析:【芯片解決方案】

    玩轉(zhuǎn)PSoC 6 RTT積木式開(kāi)發(fā)套件,實(shí)現(xiàn)毫米波雷達(dá)等實(shí)用功能

    本期英飛凌手工課,將由來(lái)自英飛凌的工程師Jenson給大家?guī)?lái)PSoC62withCAPSENSEevaluationkit(下稱(chēng)PSoC6RTT開(kāi)發(fā)板)和其積木式開(kāi)發(fā)套件的全面介紹。讓我們跟著
    的頭像 發(fā)表于 03-20 08:35 ?1085次閱讀
    玩轉(zhuǎn)PSoC 6 <b class='flag-5'>RTT</b>積木式<b class='flag-5'>開(kāi)發(fā)</b>套件,實(shí)現(xiàn)毫米波雷達(dá)等實(shí)用功能

    fpga開(kāi)發(fā)板是什么?fpga開(kāi)發(fā)板有哪些?

    FPGA開(kāi)發(fā)板是一種基于FPGA(現(xiàn)場(chǎng)可編程門(mén)陣列)技術(shù)的開(kāi)發(fā)平臺(tái),它允許工程師通過(guò)編程來(lái)定義和配置FPGA芯片上的邏輯電路,以實(shí)現(xiàn)各種數(shù)字電路和邏輯功能。FPGA開(kāi)發(fā)板通常包括FPGA芯片、時(shí)鐘模塊、電源模塊、輸入輸出接口等組
    的頭像 發(fā)表于 03-14 18:20 ?2266次閱讀

    fpga開(kāi)發(fā)板使用教程

    FPGA開(kāi)發(fā)板的使用教程主要包括以下幾個(gè)關(guān)鍵步驟。
    的頭像 發(fā)表于 03-14 15:50 ?1269次閱讀