Files
petio/PWM_README.md
MiaoMint 4dcbb9c05b init
2025-08-12 04:24:15 +08:00

71 lines
1.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# PetIO PWM 功能说明
## 新增功能
### PWM 模式支持
- 在手动控制中新增了 PWM 模式开关
- 可以通过滑块调节 PWM 输出强度 (0-100%)
- 在定时器中也支持设置 PWM 模式和强度
### 使用方法
#### 手动控制 PWM
1. 在"手动控制"标签页中
2. 选择要控制的引脚
3. 勾选"PWM 模式"复选框
4. 使用滑块调节 PWM 强度 (0-100%)
5. 设置持续时间0表示切换状态
6. 点击"执行控制"
#### 定时器 PWM
1. 在"定时器管理"标签页中
2. 填写引脚、时间、持续时间等基本信息
3. 勾选"PWM 模式"复选框
4. 使用滑块调节 PWM 强度
5. 设置是否每天重复
6. 点击"添加定时器"
### API 变化
#### 手动控制 API
- 端点: `POST /api/manual`
- 新增参数:
- `isPWM`: 布尔值是否为PWM模式
- `pwmValue`: 整数 (0-1023)PWM强度值
#### 定时器 API
- 端点: `POST /api/timers``PUT /api/timers/{id}`
- 新增参数:
- `isPWM`: 布尔值是否为PWM模式
- `pwmValue`: 整数 (0-1023)PWM强度值
#### PWM 配置 API
- 端点: `GET /api/pwm/config`
- 返回 PWM 配置信息:
- `frequency`: PWM频率
- `resolution`: PWM分辨率
- `maxValue`: PWM最大值
- `minValue`: PWM最小值
- `defaultValue`: PWM默认值
### 技术细节
#### PWM 配置
- 频率: 1 KHz
- 分辨率: 10位 (0-1023)
- ESP8266 的 `analogWrite()` 函数用于PWM输出
#### 数据存储
- PWM 设置会保存到 EEPROM
- 向后兼容旧的定时器配置
#### 显示功能
- 定时器列表会显示PWM模式和强度百分比
- 手动控制页面显示实时PWM强度百分比
### 注意事项
1. 并非所有引脚都支持PWM输出请参考ESP8266文档
2. PWM值范围是0-1023对应0%-100%的输出强度
3. 在数字模式下PWM值被忽略
4. 旧的定时器配置会自动设置为数字模式