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

聚豐項目 > 基于RTT與AB32VG1的智能彩燈與OLED屏顯示

基于RTT與AB32VG1的智能彩燈與OLED屏顯示

基于RT-Thread實時操作系統,以多線程的方式輪詢調度RGB彩燈閃爍與OLED屏幕顯示,同時使用FinSH組件通過串口與RTT系統進行交互。

煙火里的塵埃7 煙火里的塵埃7

分享
2 喜歡這個項目
團隊介紹

煙火里的塵埃7 煙火里的塵埃7

團隊成員

萬兆華 學生

分享
項目簡介
基于RT-Thread實時操作系統,以多線程的方式輪詢調度RGB彩燈閃爍與OLED屏幕顯示,同時使用FinSH組件通過串口與RTT系統進行交互。
硬件說明

硬件主要采用:

  1. AB32VG1開發板

  2. SSD1306單色OLED屏幕

  3. USB轉TTL模塊

IMG_20220115_232424.jpg

如上圖所示,將OLED的SDA與SCL引腳分別連接至AB32VG1開發板的PE2與PE3引腳,USB轉TTL模塊的TX連接板子的RX1,RX連接板子的TX1。


軟件說明

使用env工具配置本次開發所需要的組件和軟件包,在RT-Thread Studio軟件中查看配置如下:

image.png

使用ssd1306軟件包用模擬IIC協議驅動OLED屏幕,同時創建屏幕顯示線程,入口函數功能主要為顯示“RT-Thread”字樣,tick配置為30。

RGB驅動主要操作GPIO,主要代碼如下:

#define LED_R_PIN rt_pin_get("PE.1")
#define LED_G_PIN rt_pin_get("PE.4")
#define LED_B_PIN rt_pin_get("PA.1")

//定義顏色枚舉
typedef enum
{
    white = 0,  //白色
    black = 1,  //黑色
    red   = 2,  //紅
    green = 3,  //綠
    blue  = 4,  //藍色
    yellow= 5,  //黃色
    violet= 6,  //紫色
    cyan  = 7,  //青色
}led_t;

void led_init(void)
{
    rt_pin_mode(LED_R_PIN, PIN_MODE_OUTPUT);
    rt_pin_mode(LED_G_PIN, PIN_MODE_OUTPUT);
    rt_pin_mode(LED_B_PIN, PIN_MODE_OUTPUT);
}


/**
  * @brief   RGB led color control
  * @param   color
  * @return
  */
void led_color(led_t color)
{
    switch(color)
    {
        case white:
            rt_pin_write(LED_R_PIN, PIN_LOW);
            rt_pin_write(LED_G_PIN, PIN_LOW);
            rt_pin_write(LED_B_PIN, PIN_LOW);
            break;
        case black:
            rt_pin_write(LED_R_PIN, PIN_HIGH);
            rt_pin_write(LED_G_PIN, PIN_HIGH);
            rt_pin_write(LED_B_PIN, PIN_HIGH);
            break;
        case red:
            rt_pin_write(LED_R_PIN, PIN_LOW);
            rt_pin_write(LED_G_PIN, PIN_HIGH);
            rt_pin_write(LED_B_PIN, PIN_HIGH);
            break;
        case green:
            rt_pin_write(LED_R_PIN, PIN_HIGH);
            rt_pin_write(LED_G_PIN, PIN_LOW);
            rt_pin_write(LED_B_PIN, PIN_HIGH);
            break;
        case blue:
            rt_pin_write(LED_R_PIN, PIN_HIGH);
            rt_pin_write(LED_G_PIN, PIN_HIGH);
            rt_pin_write(LED_B_PIN, PIN_LOW);
            break;
        case yellow:
            rt_pin_write(LED_R_PIN, PIN_LOW);
            rt_pin_write(LED_G_PIN, PIN_LOW);
            rt_pin_write(LED_B_PIN, PIN_HIGH);
            break;
        case violet:
            rt_pin_write(LED_R_PIN, PIN_LOW);
            rt_pin_write(LED_G_PIN, PIN_HIGH);
            rt_pin_write(LED_B_PIN, PIN_LOW);
            break;
        case cyan:
            rt_pin_write(LED_R_PIN, PIN_HIGH);
            rt_pin_write(LED_G_PIN, PIN_LOW);
            rt_pin_write(LED_B_PIN, PIN_LOW);
            break;
        default:
            break;
    }
}

通常串口可以直接與OS交互,交互界面圖如下:

image.png

可以查看當前的內核線程與用戶線程、CPU占用率、線程狀態等信息。

項目代碼開源地址(gitee):https://gitee.com/Isaac_wan/rtt.git

演示效果

最后演示效果如視頻所示,RGB以7種不同的顏色輪詢顯示(算上黑色就是8種/doge),屏幕上顯示“RT-Thread”。

附件

(5.02 MB)下載

評論區(0 )
主站蜘蛛池模板: yezhulu在线永久网址yellow | 欧美日韩国产一区 | 最新丁香六月 | 国产手机在线国内精品 | 欧美一级一一特黄 | 国产一区二区三区免费大片天美 | 手机免费看a | 人人爽人人澡 | 精品人人| 四虎精品影院永久在线播放 | 日韩免费精品视频 | 婷婷久久综合网 | 国产欧美一区二区三区观看 | 天天操狠狠操 | 九色九色九色在线综合888 | 成人影院久久久久久影院 | 亚洲一区二区三区首页 | 户外露出精品视频国产 | 午夜色a大片在线观看免费 午夜色大片在线观看 | 色无欲天天天影视综合网 | bt在线www天堂资源网 | 久久精品人人爽人人爽 | 精品啪啪 | 亚洲香蕉国产高清在线播放 | 美女张开腿让男生桶出水 | 午夜毛片视频高清不卡免费 | 三级理论在线 | 天天操天天爱天天干 | 天天添天天操 | a亚洲 | 爱看精品福利视频观看 | 手机午夜视频 | 网站在线观看视频 | h视频在线观看免费网站 | 色综合久久综合欧美综合网 | 91免费网站在线看入口黄 | 天天摸天天操天天射 | 高清一级做a爱视频免费 | 男女爱爱视频免费 | 四虎精品影院4hutv四虎 | 午夜视频h |