реклама на сайте
подробности

 
 
> Stellaris LM3S9B96, CAN, помогите разобраться с CAN
Chip115
сообщение Mar 20 2012, 07:59
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 28-12-07
Пользователь №: 33 709



Всем привет! Пытаюсь заставить работать CAN 0 , но пока все четно ((
Да и не совсем пока я разобрался с stellarisware. помогите осилить )
Как я понимаю, надо юзасть can.c и can.h из driverlib.
Вот такие ф-ции там есть

CODE
//*****************************************************************************
extern void CANBitTimingGet(unsigned long ulBase, tCANBitClkParms *pClkParms);
extern void CANBitTimingSet(unsigned long ulBase, tCANBitClkParms *pClkParms);
extern unsigned long CANBitRateSet(unsigned long ulBase,
unsigned long ulSourceClock,
unsigned long ulBitRate);
extern void CANDisable(unsigned long ulBase);
extern void CANEnable(unsigned long ulBase);
extern tBoolean CANErrCntrGet(unsigned long ulBase, unsigned long *pulRxCount,
unsigned long *pulTxCount);
extern void CANInit(unsigned long ulBase);
extern void CANIntClear(unsigned long ulBase, unsigned long ulIntClr);
extern void CANIntDisable(unsigned long ulBase, unsigned long ulIntFlags);
extern void CANIntEnable(unsigned long ulBase, unsigned long ulIntFlags);
extern void CANIntRegister(unsigned long ulBase, void (*pfnHandler)(void));
extern unsigned long CANIntStatus(unsigned long ulBase,
tCANIntStsReg eIntStsReg);
extern void CANIntUnregister(unsigned long ulBase);
extern void CANMessageClear(unsigned long ulBase, unsigned long ulObjID);
extern void CANMessageGet(unsigned long ulBase, unsigned long ulObjID,
tCANMsgObject *pMsgObject, tBoolean bClrPendingInt);
extern void CANMessageSet(unsigned long ulBase, unsigned long ulObjID,
tCANMsgObject *pMsgObject, tMsgObjType eMsgType);
extern tBoolean CANRetryGet(unsigned long ulBase);
extern void CANRetrySet(unsigned long ulBase, tBoolean bAutoRetry);
extern unsigned long CANStatusGet(unsigned long ulBase, tCANStsReg eStatusReg);


Хочу просто передать сообщение не важнно какое и не важно с каким идентификатором. Просто для начала хочу понять как эта штука работает. А саму передачу буду наблюдать по осциллографу.
Я так думаю, что вначале юзаются эти функции

Код
extern void CANEnable(unsigned long ulBase);
extern void CANInit(unsigned long ulBase);

А как быть с передачей сообщения? как понимаю, надо юзать эту функцию CANMessageSet, но что то до меня туго доходит sad.gif
Помогите разобраться. Может у кого есть пример для этого МК?

Сообщение отредактировал IgorKossak - Mar 20 2012, 14:40
Причина редактирования: [codebox]
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 12:35
Рейтинг@Mail.ru


Страница сгенерированна за 0.01354 секунд с 7
ELECTRONIX ©2004-2016