一、介绍
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 两引脚为烧录端供电
五、实验现象
-
单片机
+关注
关注
6035文章
44554浏览量
634628 -
开发板
+关注
关注
25文章
5032浏览量
97371 -
RT-Thread
+关注
关注
31文章
1285浏览量
40081 -
RISC-V
+关注
关注
45文章
2270浏览量
46127 -
中科蓝讯
+关注
关注
9文章
57浏览量
9868
发布评论请先 登录
相关推荐
评论