完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
`GD32F350使用timer1,参照例程,通道1、2、3产生PWM信号正常,当不使用通道2、3时,PB10引脚有不固定的波形输出,怀疑是干扰信号。
void timer_config(void) { /* ----------------------------------------------------------------------- TIMER1 configuration: generate 3 PWM signals with 3 different duty cycles: TIMER1CLK is 1MHz TIMER1 channel1 duty cycle = (4000/ 16000)* 100 = 25% TIMER1 channel2 duty cycle = (8000/ 16000)* 100 = 50% TIMER1 channel3 duty cycle = (12000/ 16000)* 100 = 75% ----------------------------------------------------------------------- */ timer_oc_parameter_struct timer_ocintpara; timer_parameter_struct timer_initpara; rcu_periph_clock_enable(RCU_TIMER1); timer_deinit(TIMER1); /* TIMER1 configuration */ #ifdef GD32F330 timer_initpara.prescaler = 83; #endif /* GD32F330 */ #ifdef GD32F350 timer_initpara.prescaler = 107; #endif /* GD32F350 */ timer_initpara.alignedmode = TIMER_COUNTER_EDGE; timer_initpara.counterdirection = TIMER_COUNTER_UP; timer_initpara.period = 15999; timer_initpara.clockdivision = TIMER_CKDIV_DIV1; timer_initpara.repetitioncounter = 0; timer_init(TIMER1,&timer_initpara); /* CH1,CH2 and CH3 configuration in PWM mode0 */ timer_ocintpara.ocpolarity = TIMER_OC_POLARITY_HIGH; timer_ocintpara.outputstate = TIMER_CCX_ENABLE; timer_channel_output_config(TIMER1,TIMER_CH_1,&timer_ocintpara); timer_channel_output_pulse_value_config(TIMER1,TIMER_CH_1,3999); timer_channel_output_mode_config(TIMER1,TIMER_CH_1,TIMER_OC_MODE_PWM0); timer_channel_output_shadow_config(TIMER1,TIMER_CH_1,TIMER_OC_SHADOW_DISABLE); /* auto-reload preload enable */ timer_auto_reload_shadow_enable(TIMER1); /* auto-reload preload enable */ timer_enable(TIMER1); } void gpio_config(void) { /*Configure PB3 PB10 PB11(TIMER1 CH1 CH2 CH3) as alternate function*/ gpio_mode_set(GPIOB, GPIO_MODE_AF, GPIO_PUPD_NONE, GPIO_PIN_3); gpio_output_options_set(GPIOB, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ,GPIO_PIN_3); gpio_af_set(GPIOB, GPIO_AF_2, GPIO_PIN_3); } ` |
|
相关推荐
3个回答
|
|
|
|
PB4是定时器Timer2输出的PWM信号,PB10应该没有输出
|
|
|
|
干扰只会从外部耦合,先断开输出检查。如果还有“干扰”,说明程序有问题。如果IO恢复正常,分析PCB及电路设计,解决干扰耦合。
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-移植前准备之git管理内核源码
1905 浏览 0 评论
【瑞萨RA2L1入门学习】+ MacOS安装e2studio
750 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-本地仓库管理之分支间的操作
791 浏览 0 评论
【RA-Eco-RA4E2-64PIN-V1.0开发板试用】3D 图形显示
665 浏览 0 评论
756 浏览 1 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12251 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-2-3 06:09 , Processed in 0.465616 second(s), Total 43, Slave 35 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号