Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Порядок использования библиотеки






1. Подключить библиотеку eCANLib.lib, если программируется МК TMS320F2808, или библиотеку eCANLib_fpu.lib, если программируется МК TMS320F28335.

2. Включить в проект заголовочный файл eCanLib.h.

3. Объявить экземпляр структуры регистров управления:

eCAN_params_REG eCAN_params;

4. Объявить экземпляр структуры регистра результата:

extern union CANResult_REG CANResult;

5. Определить значения параметров в регистрах CANACtrlReg и CANBCtrlReg и, при необходимости CANMsgCtrl и CANMsgID структуры eCAN_params.

6. Использовать функции библиотеки в соответствии с их описанием.

 

Для удобства использования настроенного с помощью библиотеки eCANLib модуля eCAN в протоколе CANopen, в файле eCanLib.h определены имена буферов (MBOXx), битов наличия нового кадра в буфере (RMPx) и битов запуска передачи из буфера (TRSx) в соответствии с их настройкой под протоколы PDO, SDO и др.

Имена определены следующим образом:

// Определение имен буферов

#define hMBNMT MBOX31

#define hMBSYNC MBOX30

#define hMBTmSt MBOX29

#define hMBEmcy MBOX28

#define hMBPDO1Tx MBOX27

#define hMBPDO1Rx MBOX26

#define hMBPDO2Tx MBOX25

#define hMBPDO2Rx MBOX24

#define hMBPDO3Tx MBOX23

#define hMBPDO3Rx MBOX22

#define hMBPDO4Tx MBOX21

#define hMBPDO4Rx MBOX20

#define hMBSDOTx MBOX19

#define hMBSDORx MBOX18

#define hMBErNMT MBOX17

#define hMBLSS MBOX16

 

#define MBNMT MBOX15

#define MBSYNC MBOX14

#define MBTmSt MBOX13

#define MBEmcy MBOX12

#define MBPDO1Tx MBOX11

#define MBPDO1Rx MBOX10

#define MBPDO2Tx MBOX9

#define MBPDO2Rx MBOX8

#define MBPDO3Tx MBOX7

#define MBPDO3Rx MBOX6

#define MBPDO4Tx MBOX5

#define MBPDO4Rx MBOX4

#define MBSDOTx MBOX3

#define MBSDORx MBOX2

#define MBErNMT MBOX1

#define MBLSS MBOX0

 

// Определение имен битов наличиЯ нового кадра в буфере

#define hRMPNMT RMP31

#define hRMPSYNC RMP30

#define hRMPTmSt RMP29

#define hRMPEmcy RMP28

#define hRMPPDO1Tx RMP27

#define hRMPPDO1Rx RMP26

#define hRMPPDO2Tx RMP25

#define hRMPPDO2Rx RMP24

#define hRMPPDO3Tx RMP23

#define hRMPPDO3Rx RMP22

#define hRMPPDO4Tx RMP21

#define hRMPPDO4Rx RMP20

#define hRMPSDOTx RMP19

#define hRMPSDORx RMP18

#define hRMPErNMT RMP17

#define hRMPLSS RMP16

 

#define RMPNMT RMP15

#define RMPSYNC RMP14

#define RMPTmSt RMP13

#define RMPEmcy RMP12

#define RMPPDO1Tx RMP11

#define RMPPDO1Rx RMP10

#define RMPPDO2Tx RMP9

#define RMPPDO2Rx RMP8

#define RMPPDO3Tx RMP7

#define RMPPDO3Rx RMP6

#define RMPPDO4Tx RMP5

#define RMPPDO4Rx RMP4

#define RMPSDOTx RMP3

#define RMPSDORx RMP2

#define RMPErNMT RMP1

#define RMPLSS RMP0

 

// Определение имен битов запуска передачи из буфера

#define hTRSNMT TRS31

#define hTRSSYNC TRS30

#define hTRSTmSt TRS29

#define hTRSEmcy TRS28

#define hTRSPDO1Tx TRS27

#define hTRSPDO1Rx TRS26

#define hTRSPDO2Tx TRS25

#define hTRSPDO2Rx TRS24

#define hTRSPDO3Tx TRS23

#define hTRSPDO3Rx TRS22

#define hTRSPDO4Tx TRS21

#define hTRSPDO4Rx TRS20

#define hTRSSDOTx TRS19

#define hTRSSDORx TRS18

#define hTRSErNMT TRS17

#define hTRSLSS TRS16

 

#define TRSNMT TRS15

#define TRSSYNC TRS14

#define TRSTmSt TRS13

#define TRSEmcy TRS12

#define TRSPDO1Tx TRS11

#define TRSPDO1Rx TRS10

#define TRSPDO2Tx TRS9

#define TRSPDO2Rx TRS8

#define TRSPDO3Tx TRS7

#define TRSPDO3Rx TRS6

#define TRSPDO4Tx TRS5

#define TRSPDO4Rx TRS4

#define TRSSDOTx TRS3

#define TRSSDORx TRS2

#define TRSErNMT TRS1

#define TRSLSS TRS0

 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.007 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал