完善资料让更多小伙伴认识你,还能领取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及电路设计,解决干扰耦合。
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
182 浏览 0 评论
如何用OpenCV的相机捕捉视频进行人脸检测--基于米尔NXP i.MX93开发板
1207 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十章 YOLO2人手检测实验
493 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-网络编程示例之开发板测试
420 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-网络编程示例之网络socket程序编程
957 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11742 浏览 31 评论
浏览过的版块 |
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-19 05:23 , Processed in 0.605360 second(s), Total 48, Slave 39 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号