大佬們,萌新想用CH582M來控制舵機(jī),舵機(jī)的參數(shù)如下,我是該用定時器還是用管腳自帶的PWM調(diào)試,上午測試一下用定時器3來控制PB0來輸出波形,但是示波器沒有出現(xiàn),然后用管腳自帶的話,怎么設(shè)置2ms的周期和占空比呀,大佬們救救
定時器pwm輸出的io是固定的,tmr3對應(yīng)著pb22,pb0是8位pwm引腳。
精確的頻率建議使用定時器的pwm。
大佬,如果用8位的PWM的話,我這邊想設(shè)置2ms一個周期也就是500Hz,需要怎么設(shè)置,設(shè)置那些參數(shù),60Mhz的主頻超了
建議用定時器的pwm去配置。
GPIOB_ResetBits(GPIO_Pin_22);//配置PWM口PB22 GPIOB_ModeCfg(GPIO_Pin_22,GPIO_ModeOut_PP_5mA); TMR3_PWMInit(High_Level,PWM_Times_1); TMR3_PWMCycleCfg(120000);//周期2ms TMR3_Disable(); TMR3_PWMActDataWidth(60000);//占空比50%,修改占空比必須暫時關(guān)閉定時器 TMR3_Enable();
如果用8位的PWM,可以這樣配置看看:
SetSysClock(CLK_SOURCE_PLL_32MHz); GPIOA_ModeCfg(GPIO_Pin_13,GPIO_ModeOut_PP_5mA);//PA13-PWM5 PWMX_CLKCfg(250);//cycle=250/Fsys PWMX_CycleCfg(PWMX_Cycle_256);//周期=256*cycle PWMX_ACTOUT(CH_PWM5,256/2,Low_Level,ENABLE);//50%占空比
好的,謝謝大佬
怎么芯片上的PWM7、PWM8、PWM9有兩組,所以是PWM7-PB1、PWM8-PB2、PWM9-PB3還是PWM7-PB4、PWM8-PB6、PWM9-PB7呢
他們是映射關(guān)系,默認(rèn)PWM7-PB4,PWM8-PB6,PWM9-PB7,后面有下劃線的是用映射腳,調(diào)用
GPIOPinRemap(RB_PIN_PWMX);
就是選用映射功能腳。
收到,謝謝大佬
如果用CH592控制舵機(jī),用什么IO,該如何配置?有沒有控制舵機(jī)的樣機(jī),死活搜不到啊
感覺整個搜索引擎就這1個鏈接講CH582如何控制舵機(jī),沒有其它文章或者示例。
你需要去查看被控制的舵機(jī),是通過什么方式驅(qū)動,比如特定波形,則PWM進(jìn)行驅(qū)動?;蛘呤褂枚〞r器進(jìn)行驅(qū)動。比較建議的操作是,查找一份之前驅(qū)動過的MCU的代碼,然后查看它的驅(qū)動方式和通信協(xié)議,模仿該協(xié)議。