Board logo

标题: [求助]DP256 PWM模块使用问题 [打印本页]

作者: tottilang    时间: 2007-1-14 10:29     标题: [求助]DP256 PWM模块使用问题



PWM程序编译,调试都无误,单步时出现ILLEGAL_BP
不知道哪里出错,连接示波器也看不到脉冲,这是源程序:


/*预编译处理*/
#include /* common defines and macros */
#include /* derivative information */

/*函数原型声明*/



void main(void){


PWMPOL=0xFF; //决定16位PWM的极性

PWMCLK=0x33; //使用CLOCK SA

PWMPRCLK=0x06; //8M/64=125KHZ
PWMSCLA=0x7D; //125KHZ/2/125=500HZ
PWMCAE=0x00; //左对齐
DDRP=0xFF; //通道1、5决定16位PWM的输出

PWMPER1=0x32; //500HZ/50=10HZ
PWMPER0=0x32;
PWMDTY1=0x19;
PWMDTY0=0x19; //占空比=1/2
PWMCNT0=0x32;
PWMCNT1=0x32;
PWMPER5=0x32;
PWMPER4=0x32;
PWMDTY5=0x19;
PWMDTY4=0x19;
PWMCNT4=0x32;
PWMCNT5=0x32;
PWME=0xFF; //决定16位PWM的使能
}

作者: tottilang    时间: 2007-1-15 09:30

高手帮看看这个程序,也是调试没问题,示波器没有信号

#include /* common defines and macros */
#include /* derivative information */

#pragma LINK_INFO DERIVATIVE "mc9s12dp256b"


void main(void){

/* put your own code here */

PWME=0x00;
PWMPRCLK=0x06; //8M/64=125KHZ
PWMCLK=0x01; //使用CLOCK SA
PWMSCLA=125; //125KHZ/2/125=500HZ
PWMPOL=0x01; //决定16位PWM的极性
PWMCAE=0x00; //左对齐
PWMPER0=50; //500HZ/50=10HZ
PWMDTY0=25; //占空比=1/2
DDRP=0xFF;
PWMCNT0=0;
PWME=0x01; //决定16位PWM的使能
for(;;) {
} /* wait forever */
}
作者: seuafu2005    时间: 2007-1-15 09:49

参考一下这个帖子
作者: strongchen    时间: 2007-1-15 09:51

没有置TIOS寄存器?
作者: tottilang    时间: 2007-1-15 14:24

to seuafu2005:参考哪一个帖子啊

to strongchen:TIOS是输入输出选择位,跟PWM模块有什么关系?怎么设置啊
作者: strongchen    时间: 2007-1-15 14:47

请参看文档《S12ECT16B8CV1.pdf》的第4.2.4节(第53页)的内容。
作者: hudron    时间: 2007-1-16 22:01

tottilang的程序应该没有什么问题。
建议检查一下硬件。
作者: hudron    时间: 2007-1-16 22:05

PWM是单独的模块,不属于ECT管的吧
作者: strongchen    时间: 2007-1-17 09:33

是的,不好意思我弄混了。
作者: seuafu2005    时间: 2007-1-17 09:36

参考这个帖子
http://bbs.eccn.com/dispbbs.asp?boardID=3&RootID=76420&ID=76420
作者: tottilang    时间: 2007-1-17 09:45

谢谢各位,调试出来了,是硬件问题




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0