【GD32F470紫藤派开发板使用手册】第六讲 TIMER_3路PWM输出实验
2024-12-13 来源:elecfans
6.1实验内容
通过本实验主要学习以下内容:
TIMER PWM输出原理
TIMER 定时中断
6.2实验原理
本例程中,采用TIMER5进行定时中断,在中断中改变TIMER0前三个通道的占空比,使用示波器或逻辑分析仪,可以测量TIMER0前三个通道PA8、PA9和PA10的波形。也可以通过飞线的方式将三个IO口分别接到红绿蓝三种不同颜色灯珠上,实现RGB彩灯的效果。
6.3硬件设计
TIMER0的前三个通道分别为PA8、PA9和PA10,读者直接对开发板上引出的排针进行测试即可。

6.4代码解析
本例程使用了两个TIMER,其中TIMER5用来产生30ms的周期性中断,在TIMER5的中断中,对TIMER0的三个通道占空比进行调整,从而实现占空比可变的效果。
6.4.1主函数代码解析
主函数代码如下所示,主要包括串口初始化、LED初始化、RGB灯珠初始化(即timer0的三个通道初始化)、timer驱动初始化(该timer用于调整RGB灯珠PWM驱动时间)。
| C++ int main(void) { //延时和公共驱动部分初始化 driver_init(); //打印串口初始化 bsp_uart_init(&BOARD_UART); //初始化LED组 bsp_led_group_init(); bsp_led_on(&LED2); bsp_led_off(&LED1); //TIMER0设置1M频率,重载值设置100,PWM频率为10K bsp_rgb_init(1000000,100);// //注册rgb_switch函数到timer定时中断的回调函数 TIMER_INT.timer_updata_callback=rgb_switch; //初始化定时器,默认计数器频率100K,周期值3000,中断频率100K/3000= 33HZ(30ms) bsp_timer_init(100000,3000); printf_log('rn RGB breathing lamprn'); while(1) { } } |
6.4.2RGB灯珠初始化函数解析
RGB灯珠初始化函数如下,在此定义了RGB_TIMER_R、RGB_TIMER_G、RGB_TIMER_B三个灯的控制结构体,并通过timer驱动进行配置。
6.4.3基础定时器初始化及中断处理函数
基础定时器初始化配置代码如下,在此用一个定时器TIMER5,并使能了其溢出中断。该定时器用于控制RGB PWM输出时间。
| C void bsp_timer_init(uint32_t counter_frequency,uint16_t period) { driver_timer_base_int_init(&TIMER_INT,counter_frequency,period); nvic_irq_enable(TIMER5_DAC_IRQn,0,0); } |
其中断回调函数如下,通过该函数定时调整RGB三路PWM的占空比。
6.5实验结果
将本例程代码下载到紫藤派开发板中,使用示波器测量PA8、PA9、PA10上,可以看大三个通道占空比的变化。
相关文章
- 【GD32F470紫藤派开发板使用手册】第七讲 FWDG-看门狗实验
- 【GD32F470紫藤派开发板使用手册】第一讲 GPIO-流水灯实验
- 【GD32F470紫藤派开发板使用手册】第四讲 FMC-片内Flash擦写读实验
- 【GD32F470紫藤派开发板使用手册】第十讲 USART-中断串口收发实验
- 【GD32F470紫藤派开发板使用手册】第三讲 EXTI-按键中断检测实验
- 【GD32F470紫藤派开发板使用手册】第二讲 GPIO-按键查询实验
- 【GD32F470紫藤派开发板使用手册】第五讲 PMU-低功耗实验
- GD32F470的RTC时间设置和获取,以及其中BCD码的坑
- 采用GD32F470高性能MCU的PowerWriter X1多功能调试烧录器
- 【GD32F470紫藤派开发板使用手册】第八讲 ADC-规则组多通道采样实验
- 六大全新产品系列推出,MCX A微控制器家族迎来创新
- 意法半导体全新STM32C5系列,重新定义入门级微控制器性能与价值,赋能万千智能设备
- 模组复用与整机重测在SRRC、CCC、CTA/NAL认证中的实践操作指南
- 从控制到系统:TI利用边缘AI重塑嵌入式MCU的边界
- 有源晶振与无源晶振的六大区别详解
- 英飞凌持续巩固全球微控制器市场领导地位
- 使用 Keil Studio for Visual Studio Code开发 STM32 设备
- 蓝牙信道探测技术原理与开发套件实践
- Microchip 推出生产就绪型全栈边缘 AI 解决方案,赋能MCU和MPU实现 智能实时决策
- LoRa、LoRaWAN、NB-IoT与4G DTU技术对比及工业无线方案选型分析
热门新闻




