智能车制作
标题:
XS128控制器中8路PWM初始化占空比设置完全相同但只有0123这思路有输出而4567没有使出
[打印本页]
作者:
级黑墨水(构建)
时间:
2013-8-6 16:27
标题:
XS128控制器中8路PWM初始化占空比设置完全相同但只有0123这思路有输出而4567没有使出
我是初学者不太明白,是芯片坏了还是程序的问题???
/* PWME = 0x00;//PWM启动寄存器,禁止8个PWM通道输出
PWMCTL = 0x00;//0Xf0=1111 0000=通道0-1,4-5,2-3,6-7级联;0X00=0000 0000=不级联
PWMCLK = 0xff;//PWM时钟选择寄存器:其中0、1、4、5通道可选用ClockA或ClockSA时钟源;2、3、6、7通道可选用ClockB或ClockSB
//0Xff=1111 1111;2467时钟源选择为SA,0145时钟源选择为SB
PWMPRCLK=0x00;//时钟预分频寄存器:0-2位是对ClockA进行预分频,4-6位是对ClockB进行预分频;0x00表示ClockA=ClockB=总线频率40MHz
//通过设置PWMRCLK的值ClockA=Fbus÷2的PCKA次方 ClockB=Fbus÷2的PCKb次方
PWMSCLA =0x0a;//ClockSA比例因子:ClockSA=ClockA(40MHz)/(2*PWMSCLA)=2MHz 可以通过此值来得出时钟SA的频率
PWMSCLB =0x0a;//ClockSB比例因子:ClockSB=ClockB(40MHz)/(2*PWMSCLB)=2MHz 可以通过此值来得出时钟SA的频率
//分别知道了SA SB 的时钟周期
PWMPOL = 0xff;//输出波形开始极性为高电平; 1=每个周期起始为高电平;0=起始为低电平
PWMCAE = 0x00;//对齐方式:1=居中对齐;0=左边对齐
PWMPER0=150;//设定输出周期=通道时钟周期*40000=(1/2MHz)*40000=0.02s=20ms //舵机周期=20ms,频率=50HZ:舵机为Futaba S3010型号
PWMDTY0=140;//占空比=[(PWMDTY0+1)/(PWMPER0+1)]*100%
PWMPER1=150;//设定输出周期=通道时钟周期*PWMPER23;驱动电机=1KHZ
PWMDTY1=140;//占空比=[(PWMDTY23+1)/(PWMPER23+1)]*100%
PWMPER2=150;
PWMDTY2=150;
PWMPER3=150;
PWMDTY3=140;
PWMPER4=150;
PWMDTY4=140;
PWMPER5=150;
PWMDTY5=140;
PWMPER6=150;
PWMDTY6=140;
PWMPER7=150;
PWMDTY7=140;
PWME=0xff; */ //PWM输出使能
PWME = 0x00;//PWM启动寄存器,禁止8个PWM通道输出
PWMCTL = 0xf0;//0Xf0=1111 0000=通道0-1,4-5,2-3,6-7级联;0X00=0000 0000=不级联
PWMCLK = 0xAA;//PWM时钟选择寄存器:其中0、1、4、5通道可选用ClockA或ClockSA时钟源;2、3、6、7通道可选用ClockB或ClockSB
//0XAA=1010 1010;PWM1,PWM3,PWM5,PWM7时钟源选择为SA或SB,当级联后时钟源同样为SA或SB
PWMPRCLK=0x00;//时钟预分频寄存器:0-2位是对ClockA进行预分频,0-6位是对ClockB进行预分频;0x00表示ClockA=ClockB=总线频率40MHz
PWMSCLA =0x0a;//ClockSA比例因子:ClockSA=ClockA(40MHz)/(2*PWMSCLA)=2MHz
PWMSCLB =0x0a;//ClockSB比例因子:ClockSB=ClockA(40MHz)/(2*PWMSCLB)=2MHz
PWMPOL = 0xff;//输出波形开始极性为高电平; 1=每个周期起始为高电平;0=起始为低电平
PWMCAE = 0x00;//对齐方式:1=居中对齐;0=左边对齐
PWMPER45=40000;//设定输出周期=通道时钟周期*40000=(1/2MHz)*40000=0.02s=20ms //舵机周期=20ms,频率=50HZ:舵机为Futaba S3010型号
PWMPER23=4000;//设定输出周期=通道时钟周期*PWMPER23;驱动电机=1KHZ
PWMDTY23=4000;//占空比=[(PWMDTY23+1)/(PWMPER23+1)]*100%
PWMPER01=4000;
PWMDTY01=3000;
PWMPER67=4000;
PWMDTY67=2000;
PWME=0xff; //PWM输出使能
复制代码
欢迎光临 智能车制作 (http://111.231.132.190/)
Powered by Discuz! X3.2