stm32 ST7796如何调节背光亮度
时间: 2024-06-09 09:10:08 浏览: 22
STM32 ST7796液晶屏的背光亮度可以通过PWM调光来实现。在STM32的内核驱动框架中,需要初始化定时器来使用PWM功能。具体的初始化代码可以在内核驱动文件drv_pwm.c的stm32_pwm_init函数中找到。在设置完定时器的初始化参数后,就可以使用官方提供的接口函数来控制PWM了。
以下是一个示例代码,展示了如何使用PWM来调节ST7796液晶屏的背光亮度:
```c
#include <rtthread.h>
#include <rtdevice.h>
#include "mpwm.h"
#include <stm32h7xx.h>
struct rt_device_pwm *pwm_lcd;
static uint32_t mpulse = 0;
void mpwm_set(uint32_t pulse) {
mpulse = pulse;
rt_pwm_set(pwm_lcd, 2, 1000, pulse);
}
uint32_t mpwm_get(void) {
return mpulse;
}
void mpwm_init(void) {
pwm_lcd = (struct rt_device_pwm *)rt_device_find("pwm1");
if (!pwm_lcd) {
rt_kprintf("pwm1 can't find\n");
}
rt_pwm_enable(pwm_lcd, 2);
rt_pwm_set(pwm_lcd, 2, 1000, 0);
}
```
以上代码中,mpwm_set函数用于设置背光的亮度,参数pulse表示亮度大小。mpwm_get函数用于获取当前背光亮度的值。mpwm_init函数用于初始化PWM相关的设置。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)