智能车制作

标题: 困惑!各位路过的大虾帮帮忙,多谢多谢``````` [打印本页]

作者: fengsanpi    时间: 2008-7-4 17:22
标题: 困惑!各位路过的大虾帮帮忙,多谢多谢```````
为什么我的PWM信号输出占空比是先变大后变小,一直循环,而拿来控制舵机的时候却只是正转呢?
作者: Flyingpigone    时间: 2008-7-4 17:55
标题: Re:困惑!各位路过的大虾帮帮忙,多谢多谢```````
是不是占空比太高了?
作者: fengsanpi    时间: 2008-7-4 18:20
标题: Re:困惑!各位路过的大虾帮帮忙,多谢多谢```````
<>这样设占空比有没有问题</P><P>周期:PWMPER01=60000;</P><P>初始值:PWMDTY01=2000;</P><P>if(PWMDTY01&lt;40000)<BR>&nbsp;&nbsp; PWMDTY01+=1000;</P><P>&nbsp;else {<BR>&nbsp;&nbsp;&nbsp;&nbsp; for (k=0;k&lt;32;k++) {<BR>&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PWMDTY01-=1000; </P><P>&nbsp;</P>
作者: liang110034    时间: 2008-7-4 21:18
标题: Re:困惑!各位路过的大虾帮帮忙,多谢多谢```````
舵机占空比是从2.5%到12.5%之间变化的。用示波器检查下波形。
作者: fengsanpi    时间: 2008-7-5 16:39
标题: Re:困惑!各位路过的大虾帮帮忙,多谢多谢```````
我的程序占空比是从2000/60000——40000/60000应该满足的吧,看波形也是先增大后减小,如此循环。可舵机就只是正转。
作者: fengsanpi    时间: 2008-7-5 16:57
标题: Re:困惑!各位路过的大虾帮帮忙,多谢多谢```````
<>这是我的程序,请哪个大虾帮忙修改一下,多谢多谢~`````````</P><P>#include &lt;hidef.h&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* common defines and macros */<BR>#include &lt;mc9s12dg128.h&gt;&nbsp;&nbsp;&nbsp;&nbsp; /* derivative information */<BR>#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"<BR>void pwminitial()<BR>{<BR>PWME=0x22;//通道01,45使能&nbsp; <BR>PWMPOL=0x22;//通道01,45输出波形开始极性为1 <BR>PWMCAE=0x00;&nbsp;&nbsp;&nbsp; //左对齐输出模式<BR>PWMCTL=0x50;//通道01,45级联&nbsp;&nbsp; <BR>PWMCLK=0x02;//通道01选择SA为时钟源&nbsp;&nbsp; <BR>PWMSCLA=0X04;//通道01时钟SA为3MHz(24/(2*4))<BR>PWMPER01=60000;//设定通道01输出频率(50Hz)&nbsp;&nbsp;&nbsp;&nbsp;<BR>}</P><P>void main()<BR>{<BR>&nbsp; pwminitial();<BR>&nbsp; DDRP=0XFF;<BR>&nbsp; PWMDTY01=2000;&nbsp;<BR>&nbsp; while(1)<BR>{<BR>&nbsp; int i;<BR>&nbsp; int k;<BR>&nbsp;/* for(i=0;i&lt;30000;i++)<BR>&nbsp;{if(PTP_PTP0==0)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //PTP0口作为输出引脚<BR>&nbsp;&nbsp;&nbsp;PORTB=0X00;<BR>&nbsp;&nbsp;else<BR>&nbsp;&nbsp;&nbsp;PORTB=0XFF;<BR>&nbsp;_asm "nop";<BR>&nbsp;_asm "nop";<BR>&nbsp;_asm "nop";<BR>&nbsp;} */&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </P><P>&nbsp;&nbsp; if(PWMDTY01&lt;55000)<BR>&nbsp;&nbsp; PWMDTY01+=1000;<BR>&nbsp;&nbsp; <BR>&nbsp;&nbsp; else {<BR>&nbsp;&nbsp;&nbsp;&nbsp; for (k=0;k&lt;30;k++) {<BR>&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PWMDTY01-=1000; <BR>&nbsp;&nbsp;&nbsp; /*&nbsp;&nbsp; for(i=0;i&lt;30000;i++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;{if(PTP_PTP0==0)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //PTP0口作为输出引脚<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;PORTB=0X00;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;else<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PORTB=0XFF;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;_asm "nop";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;_asm "nop";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;_asm "nop";<BR>&nbsp;} */&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp; }&nbsp;&nbsp; <BR>}<BR>&nbsp; EnableInterrupts;</P><P>&nbsp; for(;;) {} /* wait forever */<BR>&nbsp; /* please make sure that you never leave this function */</P><P>}</P>
作者: Flyingpigone    时间: 2008-7-7 00:39
标题: Re:困惑!各位路过的大虾帮帮忙,多谢多谢```````
<>接地正确吗</P>
作者: whut_wj    时间: 2008-7-7 02:57
标题: Re:困惑!各位路过的大虾帮帮忙,多谢多谢```````
<>检查一下接线,包括共地,信号输入正确,再看频率和占空比.</P>
作者: fengsanpi    时间: 2008-7-7 03:38
标题: Re:困惑!各位路过的大虾帮帮忙,多谢多谢```````
<>好像是共地的问题,我是把P1的引脚5与直流稳压电源的负接了起来(直流稳压是供舵机的)。现在又只是反转了,有点正转的意思,但好象是转了很小的角度,总体看来是反转的,与原来刚好相反,应该是程序不恰当吧。哪位高手帮我改下,多谢多谢````程序就在上面,劳驾......</P>
作者: fengsanpi    时间: 2008-7-7 04:13
标题: Re:困惑!各位路过的大虾帮帮忙,多谢多谢```````
哈哈,我搞定了,是程序设置没调好。现在好了,多谢各位`````




欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2