⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pwm_m.c

📁 TMS320F2812DSP的PWM模块的程序
💻 C
字号:
//
//      TMDX ALPHA RELEASE
//      Intended for product evaluation purposes
//
//###########################################################################
//
// FILE:	DSP28_Example.c
//
// TITLE:	DSP28 CPU_Timer example program.

// T1PWM_T1CMP 引脚输出PWM信号 JP7 23引脚 GPIOA6  
// T1PWM_T1CMP 输出信号接入 XF(JP5 17引脚,GPOI14),可以看到灯一闪一闪
//###########################################################################
//
//  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"
unsigned int step,step1;
float index;
void delay_loop(void);
void main(void)
{
	/*初始化系统*/
	InitSysCtrl();

	/*关中断*/
	DINT;
	IER = 0x0000;
	IFR = 0x0000;
	
	/*初始化PIE控制寄存器*/
	InitPieCtrl();
	
	/*初始化PIE矢量表*/
	InitPieVectTable();	
	
	/*初始化EV*/
	InitEv();
	
	EINT;
	ERTM;
	step=0;
	step1=0x1fff;
	index=0.1;
/*
	EvaRegs.GPTCONA.all = 0x0859;		 gp timer control register 
	0 屏蔽定时器2比较输出 8  使能定时器1比较输出 
	EvaRegs.T1CNT = 0;		Counter Register  timer1 count is zero 
	EvaRegs.T1CON.all = 0x1f42; //15M/128/65535=1.78Hz 
	EvaRegs.T1PR = 0x1fff;		//Period Register
	EvaRegs.T1CMPR = 0x0fff;	//Compare Register
*/
	while(1)
	{
	
		KickDog();
/**/	    GpioDataRegs.GPFDAT.bit.GPIOF14 =0; 		
	    EvaRegs.T1CMPR = step;	//Compare Register
		delay_loop();			
		GpioDataRegs.GPFDAT.bit.GPIOF14 =1;
	    delay_loop();	
	    if(step==0x1ffe)
		    index=0.1;
	    index=index+0.1;
	    step=0x1fff*index;
		GpioDataRegs.GPFDAT.bit.GPIOF14 =1;
	}

} 	

void delay_loop()
{
    short      i,j;
    for (i = 0; i < 10000; i++) 
    {
        for (j = 0; j < 1000; j++) {}
    }
    
}


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

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -