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 + -
显示快捷键?