dsp28_ev.c

来自「F2812实现电机控制源程序.rar」· C语言 代码 · 共 57 行

C
57
字号
//
//      TMDX ALPHA RELEASE
//      Intended for product evaluation purposes
//
//###########################################################################
//
// FILE:	DSP28_Ev.c
//
// TITLE:	DSP28 Event Manager Initialization & Support Functions.
//
//###########################################################################
//
//  Ver | dd mmm yyyy | Who  | Description of changes
// =====|=============|======|===============================================
//  0.55| 06 May 2002 | L.H. | EzDSP Alpha Release
//  0.56| 20 May 2002 | L.H. | No change
//  0.57| 27 May 2002 | L.H. | No change
//###########################################################################

#include "DSP28_Device.h"

//---------------------------------------------------------------------------
// InitEv: 
//---------------------------------------------------------------------------
// This function initializes to a known state.
//
/*这里的配置大家可参照课本时间管理器*/
void InitEv(void)
{

	EvaRegs.ACTR.all = 0x0006;   ///通过对比较方式控制寄存器的配置,得PWM2低有效,PWM1高有效,改变设置可使电机反转
	EvaRegs.DBTCONA.all = 0x0530;///使能死区定时器,分频45/16=2.8125M,死区时间5*0.356us=1.78us
	EvaRegs.COMCONA.all = 0xa600; ///比较器控制A

	EvaRegs.T1PR =5000;        ////定时器1周期值0.356us*N
	EvaRegs.T1CMPR =2500;      ///定时器1比较值,没什么用,没用这种方式
	EvaRegs.T1CNT = 0;			///定时器1初值设为0
	EvaRegs.T1CON.all = 0x144E; ///连续增模式,TPS系数45M/2/16,T1使能
/*
	EvaRegs.T2PR = 5000;        ////定时器2周期值0.356us*N
	EvaRegs.T2CMPR =4000;       ///定时器2比较值
	EvaRegs.T2CNT = 0;			///定时器2初值设为0
	EvaRegs.T2CON.all = 0x144E; ///连续增模式,TPS系数45M/2/16,T2使能

	EvaRegs.GPTCONA.bit.TCOMPOE=1;
	EvaRegs.GPTCONA.bit.T1PIN=1;
	EvaRegs.GPTCONA.bit.T2PIN=2;
*/
	EvaRegs.CMPR1=500;//	占空比越小,转得越快
	//EvaRegs.CMPR2=2000;
	//EvaRegs.CMPR3=3000;
}	
	
//===========================================================================
// No more.
//===========================================================================

⌨️ 快捷键说明

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