• 大小: 10KB
    文件类型: .c
    金币: 1
    下载: 0 次
    发布日期: 2021-05-20
  • 语言: 其他
  • 标签: 电机控制  

资源简介

F2812 开发板 的电机控制源程序,PWM波控制直流电机,能够实现调速和正反转调节

资源截图

代码片段和文件信息

#include “DSP281x_Device.h“     // DSP281x Headerfile Include File
#include “DSP281x_Examples.h“   // DSP281x Examples Include File

// Prototype statements for functions found within this file.
interrupt void cpu_timer0_isr(void);
void Delay(unsigned int nDelay);

void Gpio_select(void);
void error(int);
void program_stop();
void Gpio_PortA(void);
void Gpio_PortB(void);
void Gpio_PortF(void);
void Gpio_PortDEG(void);
char ConvertScanToChar(unsigned char cScanCode);
void RefreshLEDArray(); // 刷新显示
void SetLEDArray(int nNumber); // 修改显示内容

#define T46uS 0x0d40
#define SCANCODE_0 0x70
#define SCANCODE_1 0x69
#define SCANCODE_2 0x72
#define SCANCODE_3 0x7A
#define SCANCODE_4 0x6B
#define SCANCODE_5 0x73
#define SCANCODE_6 0x74
#define SCANCODE_7 0x6C
#define SCANCODE_8 0x75
#define SCANCODE_9 0x7D
#define SCANCODE_Del 0x49
#define SCANCODE_Enter 0x5A
#define SCANCODE_Plus 0x79
#define SCANCODE_Minus 0x7B
#define SCANCODE_Mult 0x7C
#define SCANCODE_Divid 0x4A
#define SCANCODE_Num 0x77
#define CTRGR *(int *)0x108000
#define CTRLCDCMDR *(int *)0x108001
#define CTRKEY *(int *)0x108001
#define CTRLCDCR *(int *)0x108002
#define CTRCLKEY *(int *)0x108002
#define CTRLCDLCR  *(int *)0x108003
#define CTRLCDRCR *(int *)0x108004
#define CTRLA *(int *)0x108005
#define CTRLR *(int *)0x108007

Uint16 var1 = 0;
Uint16 var2 = 0;
Uint16 var3 = 0;
Uint16 test_count = 0;
Uint16 Test_flag = 0;
Uint16 Test_var  = 0;
Uint16 Test_status[32];

Uint16 PASS_flag = 0;
unsigned int uWork;

int jishu=0;
unsigned int uWorknCount=0uNuN1nCount1nDir;
unsigned int uPort8000;

unsigned int nScreenBuffer[1024];
unsigned char ledbuf[8]ledx[8];
unsigned char ledkey[10][8]=
{
{0x000x000x7C0x820x820x820x7C0x00}
{0x000x000x000x840xFE0x800x000x00} //1
{0x000x000x840xC20xA20x920x8C0x00} //2
{0x000x000x440x920x920x920x6C0x00}
{0x000x000x300x280x240xFE0x200x00}
{0x000x000x4E0x920x920x920x620x00}
{0x000x000x7C0x920x920x920x640x00}
{0x000x000x020xC20x320x0A0x060x00}
{0x000x000x6C0x920x920x920x6C0x00}
{0x000x000x4C0x920x920x920x7C0x00}
};

void main(void)
{   
//int nCount=0;
    char cKeycOldKey;
unsigned int nScanCodenKeyCode;
unsigned int nSpeed;

// Step 1. Initialize System Control:
// PLL WatchDog enable Peripheral Clocks
// This example function is found in the DSP281x_SysCtrl.c file.
   InitSysCtrl();

// Step 2. Initalize GPIO: 
// This example function is found in the DSP281x_Gpio.c file and
// illustrates how to set the GPIO to it‘s default state.
// InitGpio();  // Skipped for this example  


// Step 3. Clear all interrupts and initialize PIE vector table:
// Disable CPU interrupts 
   DINT;

// Initialize the PIE control registers to their default state.
// The default state is all PIE interrupts disabled and flags
// are cleared.  
// This function is found in the DSP281x_PieCtr

评论

共有 条评论