一、介紹
AB32VG1 開發板是以中科藍訊 (Bluetrum) 公司推出的基于RISC-V 架構的高配置芯片 AB32VG1 為核心所組成的。
· CPU: AB32VG1 (LQFP48 封裝,主頻 120M ,片上集成
RAM 192K, flash 8Mbit,ADC,PWM,USB,UART,IIC 等資源)
。
· 搭載藍牙模塊
· 搭載FM模塊
· 一路 TF Card 接口
· 一路 USB 接口
· 一路 IIC 接口
· 一路音頻接口 (美標 CTIA)
· 六路 ADC 輸入引腳端子引出
· 六路 PWM 輸出引腳端子引出
· 一個全彩 LED 燈模塊,一個電源指示燈,三個燒錄指示燈
· 一個 IRDA (紅外接收端口)
· 一個 Reset 按鍵,三個功能按鍵 (通用版為兩個功能按鍵
)
· 板子規格尺寸:6cm * 9cm
· I/O口通過 2.54MM 標準間距引出,同時兼容 Arduino Uno
擴展接口,方便二次開發
二、實驗準備
第一步:
安裝 rt-thread studio 默認安裝即可
第二步:
配置安裝 rt-thread studio
三、創建第一個項目
·引腳PA1對應RGB燈的藍燈
· 引腳PE1對應RGB燈的紅燈
· 引腳PE4對應RGB燈的綠燈
RGB為共陰極。
*.h文件
#ifndef __LED_H__
#define __LED_H__
#include "board.h"
#define ON 1
#define OFF 0
struct RGBLeds {
uint8_t LED_R;
uint8_t LED_B;
uint8_t LED_G;
};
void RGBLeds_Init(void);
void RGBLeds_Red(rt_bool_t status);
void RGBLeds_Blue(rt_bool_t status);
void RGBLeds_Green(rt_bool_t status);
void RunningWaterLamp(void);
#endif
*.c文件
#include "led.h"
struct RGBLeds Led;
void RGBLeds_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);
}
void RGBLeds_Red(rt_bool_t status){
if (status) {
rt_pin_write(Led.LED_R, PIN_LOW);
}else {
rt_pin_write(Led.LED_R, PIN_HIGH);
}
rt_pin_write(Led.LED_G, PIN_HIGH);
rt_pin_write(Led.LED_B, PIN_HIGH);
}
void RGBLeds_Blue(rt_bool_t status){
if (status) {
rt_pin_write(Led.LED_B, PIN_LOW);
}else {
rt_pin_write(Led.LED_B, PIN_HIGH);
}
rt_pin_write(Led.LED_G, PIN_HIGH);
rt_pin_write(Led.LED_R, PIN_HIGH);
}
void RGBLeds_Green(rt_bool_t status){
if (status) {
rt_pin_write(Led.LED_G, PIN_LOW);
}else {
rt_pin_write(Led.LED_G, PIN_HIGH);
}
rt_pin_write(Led.LED_R, PIN_HIGH);
rt_pin_write(Led.LED_B, PIN_HIGH);
}
void RunningWaterLamp(void){
RGBLeds_Red(ON);
mdelay(500);
RGBLeds_Red(OFF);
RGBLeds_Blue(ON);
mdelay(500);
RGBLeds_Blue(OFF);
RGBLeds_Green(ON);
mdelay(500);
RGBLeds_Green(OFF);
RGBLeds_Red(ON);
RGBLeds_Blue(ON);
mdelay(500);
RGBLeds_Red(OFF);
RGBLeds_Blue(OFF);
RGBLeds_Red(ON);
RGBLeds_Blue(ON);
RGBLeds_Green(ON);
mdelay(500);
RGBLeds_Red(OFF);
RGBLeds_Blue(OFF);
RGBLeds_Green(OFF);
mdelay(500);
}
主函數:
#include "led/led.h"
int main(void)
{
RGBLeds_Init();
while (1)
{
RunningWaterLamp();
}
}
四、下載RT-Thread固件
J5 為連接待燒錄芯片
J1 兩引腳為燒錄端供電
五、實驗現象
-
單片機
+關注
關注
6043文章
44621瀏覽量
638618 -
開發板
+關注
關注
25文章
5121瀏覽量
98214 -
RT-Thread
+關注
關注
31文章
1305瀏覽量
40388 -
RISC-V
+關注
關注
45文章
2324瀏覽量
46602 -
中科藍訊
+關注
關注
9文章
57瀏覽量
9933
發布評論請先 登錄
相關推薦
評論