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

📄 dsp281x_ecan.h

📁 自己编写的几个小程序,大家看看,希望能对大家有帮助.
💻 H
字号:
//###########################################################################
//
// FILE:   DSP281x_ECan.h
//
// TITLE:  DSP281x Device eCAN Register Definitions.
//
//###########################################################################
//
//  Ver | dd mmm yyyy | Who  | Description of changes
// =====|=============|======|===============================================
//  0.00| 04/21/2005  | Y.Z.Y|(i) Support for errata (as explained in SPRZ193E and above) incorporated
//			                 |(ii)Don't support the ECana control and status registers
//                           |    They are defined in file 'F2812reg.h'

//###########################################################################

extern void CanDoubleRead(unsigned long *StorePtr, volatile unsigned long *RegPtr);
extern void CanDoubleWrite(volatile unsigned long *RegPtr, unsigned long *LoadPtr);

/* --------------------------------------------------- */
/* eCAN Mailbox Registers                               */
/* ----------------------------------------------------*/
struct MBOX {
   unsigned long MSGID;  /* eCAN Message ID (MSGID) bit definitions */
   unsigned long MSGCTRL;/* eCAN Message Control Field (MSGCTRL) bit definitions */
   unsigned long MDL;    /* eCAN Message Data Register low (MDR_L) word definitions */
   unsigned long MDH;    /* eCAN Message Data Register high  (MDR_H) word definitions */
};
/**************************************/
/*          eCAN Mailboxes             */
/**************************************/
struct ECAN_MBOXES {
   struct MBOX MBOX0;
   struct MBOX MBOX1;
   struct MBOX MBOX2;
   struct MBOX MBOX3;
   struct MBOX MBOX4;
   struct MBOX MBOX5;
   struct MBOX MBOX6;
   struct MBOX MBOX7;
   struct MBOX MBOX8;
   struct MBOX MBOX9;
   struct MBOX MBOX10;
   struct MBOX MBOX11;
   struct MBOX MBOX12;
   struct MBOX MBOX13;
   struct MBOX MBOX14;
   struct MBOX MBOX15;
   struct MBOX MBOX16;
   struct MBOX MBOX17;
   struct MBOX MBOX18;
   struct MBOX MBOX19;
   struct MBOX MBOX20;
   struct MBOX MBOX21;
   struct MBOX MBOX22;
   struct MBOX MBOX23;
   struct MBOX MBOX24;
   struct MBOX MBOX25;
   struct MBOX MBOX26;
   struct MBOX MBOX27;
   struct MBOX MBOX28;
   struct MBOX MBOX29;
   struct MBOX MBOX30;
   struct MBOX MBOX31;
}; 
/**************************************/
/*    eCAN Local Acceptance Masks      */
/**************************************/
/* eCAN Local Acceptance Mask (LAM) definitions */
struct LAM_REGS {
   unsigned long LAM0; 
   unsigned long LAM1; 
   unsigned long LAM2; 
   unsigned long LAM3; 
   unsigned long LAM4; 
   unsigned long LAM5; 
   unsigned long LAM6; 
   unsigned long LAM7; 
   unsigned long LAM8; 
   unsigned long LAM9; 
   unsigned long LAM10;
   unsigned long LAM11;
   unsigned long LAM12;
   unsigned long LAM13;
   unsigned long LAM14;
   unsigned long LAM15;
   unsigned long LAM16;
   unsigned long LAM17;
   unsigned long LAM18;
   unsigned long LAM19;
   unsigned long LAM20;
   unsigned long LAM21;
   unsigned long LAM22;
   unsigned long LAM23;
   unsigned long LAM24;
   unsigned long LAM25;
   unsigned long LAM26;
   unsigned long LAM27;
   unsigned long LAM28;
   unsigned long LAM29;
   unsigned long LAM30;
   unsigned long LAM31;
};

/**************************************/
/*    eCAN Local Acceptance Masks      */
/**************************************/

/* Mailbox MOTS File */

struct MOTS_REGS {
   unsigned long MOTS0;
   unsigned long MOTS1;
   unsigned long MOTS2;
   unsigned long MOTS3;
   unsigned long MOTS4;
   unsigned long MOTS5;
   unsigned long MOTS6;
   unsigned long MOTS7;
   unsigned long MOTS8;
   unsigned long MOTS9;
   unsigned long MOTS10;
   unsigned long MOTS11;
   unsigned long MOTS12;
   unsigned long MOTS13;
   unsigned long MOTS14;
   unsigned long MOTS15;
   unsigned long MOTS16;
   unsigned long MOTS17;
   unsigned long MOTS18;
   unsigned long MOTS19;
   unsigned long MOTS20;
   unsigned long MOTS21;
   unsigned long MOTS22;
   unsigned long MOTS23;
   unsigned long MOTS24;
   unsigned long MOTS25;
   unsigned long MOTS26;
   unsigned long MOTS27;
   unsigned long MOTS28;
   unsigned long MOTS29;
   unsigned long MOTS30;
   unsigned long MOTS31;
};

/* Mailbox MOTO File */

struct MOTO_REGS {
   unsigned long MOTO0;
   unsigned long MOTO1;
   unsigned long MOTO2;
   unsigned long MOTO3;
   unsigned long MOTO4;
   unsigned long MOTO5;
   unsigned long MOTO6;
   unsigned long MOTO7;
   unsigned long MOTO8;
   unsigned long MOTO9;
   unsigned long MOTO10;
   unsigned long MOTO11;
   unsigned long MOTO12;
   unsigned long MOTO13;
   unsigned long MOTO14;
   unsigned long MOTO15;
   unsigned long MOTO16;
   unsigned long MOTO17;
   unsigned long MOTO18;
   unsigned long MOTO19;
   unsigned long MOTO20;
   unsigned long MOTO21;
   unsigned long MOTO22;
   unsigned long MOTO23;
   unsigned long MOTO24;
   unsigned long MOTO25;
   unsigned long MOTO26;
   unsigned long MOTO27;
   unsigned long MOTO28;
   unsigned long MOTO29;
   unsigned long MOTO30;
   unsigned long MOTO31;
};

/*-----------------TIMER REGISTER-------------------------*/
struct CPUTIMER
{
    unsigned long Timer;        // Timer Counter
    unsigned long Period;       // Timer Period
    unsigned int  Control;      // Timer Control
    unsigned int  Rsvd;         // Reserved
    unsigned long Prescale;     // Timer Pre-Scale
};
extern volatile struct CPUTIMER Timer0;
extern volatile struct CPUTIMER Timer1;
extern volatile struct CPUTIMER Timer2;
//---------------------------------------------------------------------------
// eCAN External References & Function Declarations:
//
extern volatile struct ECAN_MBOXES ECanaMboxes;
extern volatile struct LAM_REGS ECanaLAMRegs;
extern volatile struct MOTO_REGS ECanaMOTORegs;
extern volatile struct MOTS_REGS ECanaMOTSRegs;

⌨️ 快捷键说明

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