首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

关于PWM的问题

关于PWM的问题







代码如下,各位大虾给看看,用示波器测试PWM0口没有反映,到底怎么回事



#include <hidef.h>      /* common defines and macros */
#include <mc9s12dg128.h>     /* derivative information */




#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"




#define PWCLK_   (*((volatile unsigned char*)(0x0040)))
#define PWPOL_   (*((volatile unsigned char*)(0x0041)))
#define PWEN_    (*((volatile unsigned char*)(0x0042)))
#define PWSCAL0_ (*((volatile unsigned char*)(0x0044)))
#define PWCNT0_  (*((volatile unsigned char*)(0x0048)))
#define PWPER0_  (*((volatile unsigned char*)(0x004c)))
#define PWDTY0_  (*((volatile unsigned char*)(0x0050)))
#define PWCTL_   (*((volatile unsigned char*)(0x0054)))
#define PORTP_   (*((volatile unsigned char*)(0x0056)))



void main(void) {
  /* put your own code here */
  EnableInterrupts;
 
     PWCLK_   = 0x18;  //通道分用A口32分频
     PWPOL_   = 0x11;   //用s0口做0通道的时钟 先高电平
     PWSCAL0_ = 4;     //s0口提供10kHz的频率                         
   PWPER0_  = 99;    //舵机的频率是100Hz
   DDRP     = 0xff;  //控制输出,此行有没有都结果
    PWDTY0_ = 49;
    PWEN_   = 0x01;

  for(;;) {} /* wait forever */
}

我思故我在
怎么没人回啊,斑竹帮帮忙解决下
我思故我在
直接使用头文件里的寄存器,不用这么定义吧。
曾經滄海難爲水
在程序一开始,应该先把定时器停了,然后设完值后,再打开。以下是具体流程:
1,停止定时器PWME=0; 2,选择时钟来源 3,选择极性 4,选择对齐方式 5,占空比和周期 6,开定时器PWME=1;
lazy crazy
选择时钟来源是什么意思呀?是选择A,B吗?
是的,选择是A还是B
贴一个调试通过了的程序
#include /* common defines and macros */
#include /* derivative information */

#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"

void main(void) {
/* put your own code here */
//EnableInterrupts;
PWME_PWME0 = 0x00;
PWMPRCLK = 0x04; //通道分用A口16分频
PWMCLK=0x01;//通道0用sA时钟源
PWMSCLA=75; //s0口提供10kHz的频率 24MHZ/16/2/75=10K
PWMPOL_PPOL = 1; //用s0口做0通道的时钟 先高电平
//对齐方式默认 左对齐

PWMPER0 = 200; //舵机的频率是50Hz 1/10k*x=1/50Hz
PWMDTY0 = 10; //占空比10%200
DDRP = 0xff; //控制输出
PWMCNT0 = 0;
PWME_PWME0 = 0x01;//PWM通道0输出

for(;;) {
} /* wait forever */
}
好好学习,天天向上 
ping-yang163@163.com
谢谢楼上的老兄 呵呵 你也参加智能车比赛吗?
这个还是比较容易看出来的,呵呵 多多交流啊,
我的信箱ping-yang163@163.com
好好学习,天天向上 
ping-yang163@163.com
用专家助手可以直观地产生吧
dragon.liang
弱弱问一下:清华书上附赠的CW2.0 有楼上所说的专家助手功能吗?
如果没有 ,是不是只有正式版本才有啊??
飞思卡尔带我走进神奇的单片机世界
CW2.0?太旧了,快到飞思卡尔网站上下载新的版本吧。
海纳百川  有容乃大
大侠们能不能给我介绍下你们小车的思路啊?跑道怎么铺的?以后我也很想参加这样的比赛!
:)
返回列表