智能车制作
标题:
单片机开通了spi和多路pwm出现问题
[打印本页]
作者:
chihua
时间:
2010-3-17 23:49
标题:
单片机开通了spi和多路pwm出现问题
求助!!我用XS128开通了PWM01,45通道来控制舵机和电机。没有问题,加上个spi驱动的液晶后,液晶显示不了,PWM45通道没有输出。去掉PWM45通道后,液晶可以显示。spi我用的是M4,M5口作mosi和SCK0的。用的最小系统是龙邱80pin的MC9s12xs128MMA。
请问是不是板的问题还是有什么地方要注意的??谢谢
作者:
chihua
时间:
2010-3-18 08:29
pwm初始化为:
DDRP = 0X3b; //电机 舵机 输出
PWMCTL = 0X30; //0和1联合成16位PWM,P1输出控制舵机,23控制电机
PWMCAE = 0X00; //选择输出模式为左对齐输出模式
PWMCNT01 = 0;
PWMCNT23 = 0; //计数器清零;
PWMPOL = 0X0A; //先输出高电平,计数到DTY时,反转电平
PWMPRCLK = 0X21; //clockA 2分频,clockA=busclock/2=20MHz;CLK B 4分频:10Mhz
PWMSCLA = 0x0A; //对clock A 20分频,pwm sa clock=clockA/20=1MHz;
PWMSCLB = 0X0A; //对clock B 20 分频 500 khz Clock SB = Clock B / (2 * PWMSCLB)
PWMCLK_PCLK1 = 1; //pwm1 选择clock SA做时钟源 pwm3 选择clock a
PWMCLK_PCLK3 = 1; //SB
PWMPER01 = 20000;
//20000周期20ms; 50Hz;(可以使用的范围:50-200hz)10000用10ms时灵敏
Servo_dty = 1500; //高电平时间为1.5ms;正中
PWMPER23 = 1000; //电机频率
Motor_dty = 0; // 高电平时间为0
PWME_PWME1 = 1; //1,3输出,舵机,电机
PWME_PWME3=1;
spi初始化为:
MODRR = 0x10; //spi use m4 m5 port
SPI0CR1 = 0x50;
SPI0CR2 = 0x08;
SPI0BR = 0x01; //BR=busclk/((SPPR + 1)· 2^(SPR + 1))
作者:
chihua
时间:
2010-3-18 22:35
没人回答,自己改用PT口来输出PWM.可以正常工作。暂时这样先。希望有人有另外的解决方法。
作者:
ming076
时间:
2010-5-4 14:27
我也是液晶没调出来,SPI的,现在也不知道问题在哪?很郁闷
作者:
zuixian
时间:
2010-7-8 14:15
spi 沃野没用过
欢迎光临 智能车制作 (http://111.231.132.190/)
Powered by Discuz! X3.2