3934|5

7

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

关于PWM波形输出 [复制链接]

各位大侠,最近小弟自己做了一块2812的最小系统板,用于驱动电机,焊好调试,写了个小程序,程序内容为12个pwm输出不同占空比,EVA的六路PWM可以用示波器看到波形,EVB的六路就啥都测不到,求指教究竟有神马原因会导致这样,代码如下:
//
//      TMDX ALPHA RELEASE
//      Intended for product evaluation purposes
//
//###########################################################################
//
// FILE: DSP28_Example.c
//
// TITLE: DSP28 CPU_Timer example program.
//
//###########################################################################
//
//  Ver | dd mmm yyyy | Who  | Description of changes
// =====|=============|======|===============================================
//  0.55| 06 May 2002 | S.S. | EzDSP Alpha Release
//  0.57| 27 May 2002 | L.H. | No change
//###########################################################################

// Step 0.  Include required header files
         // DSP28_Device.h: device specific definitions #include statements for
         // all of the peripheral .h definition files.
         // DSP28_Example.h is specific for the given example.  

#include "DSP28_Device.h"
void Init_Port(void);//系统外部引脚初始化
void Init_Time1(void);//通用定时器1初始化
void Init_Time3(void); //通用定时器2初始化
Uint16 temp,temp1;
void main(void)
{
/*初始化系统*/
InitSysCtrl();

/*关中断*/
DINT;
IER = 0x0000;
IFR = 0x0000;
/*初始化PIE控制寄存器*/
InitPieCtrl();
/*初始化PIE矢量表*/
InitPieVectTable();
    Init_Port();//初始化端口
Init_Time1();
  Init_Time3();
EINT;
ERTM;

for(;;)
{

}

}
void Init_Port(void)
{
EALLOW;
GpioMuxRegs.GPAMUX.all=0x00ff;      
    GpioMuxRegs.GPBMUX.all=0x00ff;
EDIS;

}




//通用定时器1初始化
void Init_Time1(void)
{
    EvaRegs.T1PR=0x2710;//周期设置计数10000个
  EvaRegs.T1CMPR=0x0000;//比较器
  EvaRegs.T1CNT=0x0000;//计数器
  EvaRegs.T1CON.all=0x1042; //控制器
// EvaRegs.T2PR=0x0fff;//周期
 // EvaRegs.T2CMPR=0x03C0;//比较器
 // EvaRegs.T2CNT=0x0000;//计数器
 // EvaRegs.T2CON.all=0x1042;//控制器    具体可以看书里控制器具体位是怎么样

EvaRegs.CMPR1=0x0C00;    //设置比较寄存器比较值
EvaRegs.CMPR2=0x3C00;
EvaRegs.CMPR3=0xFC00;

    EvaRegs.ACTR.all=0x0666;//比较方式控制寄存器 
EvaRegs.DBTCONA.all=0x0000;//禁止死区
EvaRegs.COMCONA.all=0xA600;//比较控制寄存器
}
//通用定时器3初始化
void Init_Time3(void)
{
    EvbRegs.T3PR=0x2710;//周期
  EvbRegs.T3CMPR=0x0000;//比较器
  EvbRegs.T3CNT=0x0000;//计数器
  EvbRegs.T3CON.all=0x1042; //控制器
// EvbRegs.T4PR=0x0fff;//周期
 // EvbRegs.T4CMPR=0x3C00;//比较器
 // EvbRegs.T4CNT=0x0000;//计数器
 // EvbRegs.T4CON.all=0x1042; //控制器

    EvbRegs.CMPR4=0x0c00;
EvbRegs.CMPR5=0x3C00;
EvbRegs.CMPR6=0xFC00;

    EvbRegs.ACTRB.all=0x0666;//比较方式控制寄存器
EvbRegs.DBTCONB.all=0x0000;//禁止死区
EvbRegs.COMCONB.all=0xA600; //比较控制寄存器
}




//===========================================================================
// No more.
//===========================================================================

最新回复

楼主这是想说明啥  详情 回复 发表于 2011-12-19 10:45
 
点赞 关注

回复
举报

2606

帖子

0

TA的资源

五彩晶圆(初级)

沙发
 
这个偶没用过2812,但是你可以在仿真里看看程序有没有跑到你想要的位置。
 
个人签名工程 = 数学+物理+经济
 

回复

7

帖子

0

TA的资源

一粒金砂(中级)

板凳
 

回复 沙发 安_然 的帖子

谢谢了,这个搞定了,是在外设高速时钟使能问题上出了问题
 
 
 

回复

2606

帖子

0

TA的资源

五彩晶圆(初级)

4
 
哦。搞定就OK 。做软年编程要仔细,至少明白原理
 
个人签名工程 = 数学+物理+经济
 
 

回复

12

帖子

0

TA的资源

一粒金砂(中级)

5
 
关于PWM波形输出
各位大侠,最近小弟自己做了一块2812的最小系统板,用于驱动电机,焊好调试,写了个小程序,程序内容为12个pwm输出不同占空比,EVA的六路PWM可以用示波器看到波形,EVB的六路就啥都测不到,求指教究竟有神马原因会导致这样,代码如下:
//
//      TMDX ALPHA RELEASE
//      Intended for product evaluation purposes
//
//###########################################################################
//
// FILE:DSP28_Example.c
//
// TITLE:DSP28 CPU_Timer example program.
//
//###########################################################################
//
//  Ver | dd mmm yyyy | Who  | Description of changes
// =====|=============|======|===============================================
//  0.55| 06 May 2002 | S.S. | EzDSP Alpha Release
//  0.57| 27 May 2002 | L.H. | No change
//###########################################################################


// Step 0.  Include required header files
         // DSP28_Device.h: device specific definitions #include statements for
         // all of the peripheral .h definition files.
         // DSP28_Example.h is specific for the given example.  


#include "DSP28_Device.h"
void Init_Port(void);//系统外部引脚初始化
void Init_Time1(void);//通用定时器1初始化
void Init_Time3(void); //通用定时器2初始化
Uint16 temp,temp1;
void main(void)
{
/*初始化系统*/
InitSysCtrl();


/*关中断*/
DINT;
IER = 0x0000;
IFR = 0x0000;
/*初始化PIE控制寄存器*/
InitPieCtrl();
/*初始化PIE矢量表*/
InitPieVectTable();
    Init_Port();//初始化端口
Init_Time1();
Init_Time3();
EINT;
ERTM;


for(;;)
{


}


}
void Init_Port(void)
{
EALLOW;
GpioMuxRegs.GPAMUX.all=0x00ff;      
    GpioMuxRegs.GPBMUX.all=0x00ff;
EDIS;


}








//通用定时器1初始化
void Init_Time1(void)
{
    EvaRegs.T1PR=0x2710;//周期设置计数10000个
EvaRegs.T1CMPR=0x0000;//比较器
EvaRegs.T1CNT=0x0000;//计数器
EvaRegs.T1CON.all=0x1042; //控制器
//EvaRegs.T2PR=0x0fff;//周期
//EvaRegs.T2CMPR=0x03C0;//比较器
//EvaRegs.T2CNT=0x0000;//计数器
//EvaRegs.T2CON.all=0x1042;//控制器    具体可以看书里控制器具体位是怎么样


EvaRegs.CMPR1=0x0C00;    //设置比较寄存器比较值
EvaRegs.CMPR2=0x3C00;
EvaRegs.CMPR3=0xFC00;


    EvaRegs.ACTR.all=0x0666;//比较方式控制寄存器
EvaRegs.DBTCONA.all=0x0000;//禁止死区
EvaRegs.COMCONA.all=0xA600;//比较控制寄存器
}
//通用定时器3初始化
void Init_Time3(void)
{
    EvbRegs.T3PR=0x2710;//周期
EvbRegs.T3CMPR=0x0000;//比较器
EvbRegs.T3CNT=0x0000;//计数器
EvbRegs.T3CON.all=0x1042; //控制器
//EvbRegs.T4PR=0x0fff;//周期
//EvbRegs.T4CMPR=0x3C00;//比较器
//EvbRegs.T4CNT=0x0000;//计数器
//EvbRegs.T4CON.all=0x1042; //控制器


    EvbRegs.CMPR4=0x0c00;
EvbRegs.CMPR5=0x3C00;
EvbRegs.CMPR6=0xFC00;


    EvbRegs.ACTRB.all=0x0666;//比较方式控制寄存器
EvbRegs.DBTCONB.all=0x0000;//禁止死区
EvbRegs.COMCONB.all=0xA600; //比较控制寄存器
}








//===========================================================================
// No more.
//===========================================================================
 
 
 

回复

2606

帖子

0

TA的资源

五彩晶圆(初级)

6
 

回复 5楼 longweiyanwei 的帖子

楼主这是想说明啥
 
个人签名工程 = 数学+物理+经济
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表