更新README

This commit is contained in:
2023-11-25 16:55:26 +08:00
parent 8d3e445541
commit ab84321fd6

View File

@@ -6,6 +6,9 @@
`lib_rgb` 是一个用于控制RGB灯条的C语言库提供了一系列功能比如颜色渐变、呼吸灯效果和色调循环等。它支持通过RGB和HSV颜色空间来控制灯条的颜色输出。
## 功能
- **响度可视化**通过检测音频样本中的响度实现RGB跟随音量大小跳动
- **颜色渐变**通过逐步调整RGB值来模拟呼吸灯效果。
- **色调循环**在HSV颜色空间中循环改变色调以实现颜色渐变。
@@ -14,17 +17,12 @@
- **颜色填充**将单一颜色填充到整个RGB条中也可以将RGB条分组同时输出不同的颜色或响应
- **音量响应**:根据响度值(-xdB~0dB),获取音量等级,以实现响度可视化
- **RGB灯条驱动**启动一个永久循环持续更新RGB灯条的颜色。
- **HSV颜色循环驱动**驱动HSV颜色空间中的颜色循环以实现连续的颜色渐变效果。
- **音量响应**:根据响度值(-xdB~0dB),获取音量等级
## 使用方法
### 包含头文件
在你的项目中包含`rgb_effect.h`文件。
```c
@@ -33,26 +31,30 @@
### 快速开始
如果你想要一个开箱即用的持续的颜色渐变效果,可以使用`cycleRGB_driver``cycleHSV_driver`函数
如果你想要尝试开箱即用的持续的颜色渐变效果,可以使用`examples/app_hsv_cycle_example/src/hsv_cycle_example.c`中的`hsv_cycle_example`函数,具体的用法可以参考该示例
注意当前用于驱动LED组的默认的IO定义在`Tile[1]``4A3`端口上因此你需要添加对tile的声明。
```c
par
{
// 启动RGB颜色渐变驱动
on tile[1]: cycleRGB_driver();
}
```
#include <platform.h> // 包含对封装的定义,引用以使用 on tile[] 语法
或者:
```c
par
extern "C"
{
// 启动HSV颜色循环驱动
on tile[1]: cycleHSV_driver();
void hsv_cycle_example();
}
int main() // 定义主函数
{
par
{
on tile[1]:
{
hsv_cycle_example();
}
}
return 0; // 返回0表示程序正常结束
}
```
### 初始化颜色和方向
@@ -93,8 +95,7 @@ output_rgb_array(rgb_array, 3);
## 路线图
- [ ] 当RGB_MAX等值超限时raise error
- [ ] 为绘制RGB的函数添加可合并选项以减少资源占用
- [x] 为绘制RGB的函数添加可合并选项以减少资源占用
- [ ] 添加更多应用光效
- [x] RGB渐变
- [x] HSV渐变
@@ -104,6 +105,6 @@ output_rgb_array(rgb_array, 3);
- [ ] 使用fp/s32以增加`HSV_to_RGB`的计算效率
## 贡献
如果你有任何改进意见或者发现了bug请通过issues或pull requests来提交。
如果你有任何改进意见或者发现了bug请通过issues或pull requests来提交或贡献
感谢使用`lib_rgb`