Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: помогите с CANoм d TMS470 !
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Faterland
Нужно к девайсу прикрутить CAN шину. Подключил примеры от Техаса - полный абзац!
Прошу передать посылку - он останавливается и ждет сброса флага окончания передачи....
Если кто-то разобрался - вышлите исходники настройки модуля CAN,плиз!!
spf
Для успешной передачи на шлейфе должно быть не меньше двух CAN устройств, активированных.
Одно - тестируемый, в данном случае передающий. Второе - приемник, настроен прием сообщений, скорость и т.п. должны точно совпадать с передающим. В качестве последнего можно использовать любое заведомо рабочее CAN-устройство. Если не будет приемника то передатчик не будет получать подверждение приема "ASK" и пытаться передавать снова ...
Это учтено?
Шина (развязка, провода, нагрузка) в порядке?
Осциллом смотрели?

CAN у TMS470 имеет режим loopback?
lim
Вот вырезка из моего проекта (он вообще-то написан на С++). CAN-модуль в TMS470 не очень сложный, сравним примерно с MiBADC. Это Вам не HET. Так что заработал сразу. Я вообще никогда не загружаю примеры! Изучаю их --- Да. Хорошо читаю описания. В большинстве случаев этого вполне достаточно. Если не помогает --- обращаюсь на фирму. Правда, когда я не давно послал запрос на TI по поводу HET (правильнее бы было на IAR, но они чётко отфутболивают, когда видят, что твой триальный срок компилятора истёк, хотя всё-же берут вопросы на заметку и устраняют свои ляпы. Так было с FlashLoader-ом для TMS470R1A128. Пришлось его ручками доделывать. И обидно было, когда IAR недели через три выложила patch к IAR EWARM 4.30, где на каждый TMS470 сделали свой FlashLoader. В версии 4.31 он уже входит стационарно).
Так вот из службы поддержки TI ответили, что мол по микросхеме TMS470 не существует никакой on-line поддержки, а только то, что находится на их сайте в соответствующем разделе. Ну это всё к слову...

Constructor CANBASE
********************************************************************************
************************************************/
CANBASE::CANBASE( BIT_RATES bitrate, unsigned long lam0, unsigned long lam3, unsigned long gam )
{
// Use CANTX pin for the CAN transmit functions
CANTIOC.TXFUNC = 1;

// Use CANRX pin for the CAN receive functions
CANRIOC.RXFUNC = 1;

// Setup master control register
// Enable configuration mode
CANMC.CCR = 1;
CANMC.ABO = 1;
CANMC.DBO = 1;

// Wait until CPU has access to CAN configuration registers
while ( !CANES.CCE )
;

// Setup CAN Bit-Timing Configuration Register
CANBTC.REG32 = TSEG1_13 + TSEG2_2 + SJW_1; // BitTime = 16 TQ and CAN module samples only once at the sampling point.

switch( bitrate )
{
case BITRATE_10: CANBTC.BRP = 124;
CANBTC.SAM = 1; // The CAN module will sample three times
break;
case BITRATE_20: CANBTC.REG32 = _SAM + TSEG1_7 + TSEG2_2 + SJW_1; // BitTime = 10 TQ and CAN module will sample three times
CANBTC.BRP = 99;
break;

И т.д. --------- // ----------

}


// Acceptance Mask Registers initialization
CANLAM0 = lam0;
CANLAM3 = lam3;
CANGAM = gam;

// normal operation mode request
CANMC.CCR = 0;

// Wait until CAN module is exited the configuration mode
while ( CANES.CCE )
;

Конечно были ещё и инициализация самих mailbox-классов. Думаю всё-же, что примеры TI должны работать. У вас есть устройство --- анализатор CAN-шины ? Человек Вам правильно ответил. Вы сам CAN хорошо знаете ?
Faterland
Господа,большое спасибо всем ответившим. Все оказалось проще,аж стыдно :-))))
Монтажники ПЕРЕПУТАЛИ CANH и CANL !!!!! А мотивировали - ну дык у RS232 RX на TX; TX на RX
Крови было много..... :-)))))
spf
Цитата(Faterland @ Jun 16 2006, 23:26) *
Монтажники ПЕРЕПУТАЛИ CANH и CANL !!!!! А мотивировали - ну дык у RS232 RX на TX; TX на RX
Крови было много..... :-)))))

Интересно чьей? smile.gif Виноваты не монтажники, они люди подневольные, а тот кто выдал им работу (чертежи, схемы и т.п.). Их вина может быть только в том что они не задали вопрос, а самостоятельно приняли решение.
Faterland
"> Их вина может быть только в том что они не задали вопрос, а самостоятельно приняли решение."

Они самостоятельно приняли решение. Не хотели лишний раз меня "дергать" . Мое мнение -
- хотели показать,что "тоже не лыком шиты". Как по мне - грубейшее нарушение дисциплины!

TOO "Lim" . С HET мне надо будет разбираться. Я могу расчитывать на Вашу помощь?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.