Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: lpc2119 CAN bit timing
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
ToniPizecato
Доброго времени суток.
Работаю с CAN интерфейсом lpc2119. Отсылаю/принимаю на/с компьютер через usb-can. Все прекрасно работает на 125 и 250 kb/s. Пытался повысить до 1Mb/s - не отсылает/принимает. Сперва думал на usb переходник и замкнул передачу CAN'а на себя - не работает. Смотрел в даташите - все делаю правильно. Нашел пример LPC2000_CAN_Driver_Demo со строчками
Цитата
/**
* Bit Timing Values for 20MHz clk frequency
*/
#define LPC2000_CANDRIVER_CANBITRATE125K20MHZ 0x002B0009
#define LPC2000_CANDRIVER_CANBITRATE250K20MHZ 0x002B0004
#define LPC2000_CANDRIVER_CANBITRATE500K20MHZ 0x00140004
#define LPC2000_CANDRIVER_CANBITRATE1000K20MHZ 0x00250001

Юзаю 20МГц. Но значение для 250kb\s у меня отличается от вышеуказанного (у меня 0x0011000F). При подстановке бадрейта на 1Mb\s, указанного выше, ничего не работает. Нашел бадрейт калькулятор в интернете - не помогает.
Для 1mbit/s и 20Mhz вычислил BRP = 3, Tseg1 = 1, Tseg2 = 1, SAM = 1, SJW = 0 (0x00910003).
Зашел в тупик. Как выйти из ситуации?
KRS
Цитата(ToniPizecato @ Mar 6 2009, 00:05) *
Для 1mbit/s и 20Mhz вычислил BRP = 3, Tseg1 = 1, Tseg2 = 1, SAM = 1, SJW = 0 (0x00910003).
Зашел в тупик. Как выйти из ситуации?

Так нельзя!
Время бита равно (TSEG1 + TSEG2 + 1(SYNC)) * (TQ - время кванта)
так вот время бита может быть минимум 5! Но в большинтсве контроллеров минимум 8 * TQ
т.е. TSEG1 + TSEG2 >= 7 и TSEG1 > TSEG2
можно почитать например это
http://www.freescale.com/files/microcontro...note/AN1798.pdf
ToniPizecato
Цитата(KRS @ Mar 6 2009, 01:29) *
Так нельзя!
Время бита равно (TSEG1 + TSEG2 + 1(SYNC)) * (TQ - время кванта)
так вот время бита может быть минимум 5! Но в большинтсве контроллеров минимум 8 * TQ
т.е. TSEG1 + TSEG2 >= 7 и TSEG1 > TSEG2
можно почитать например это
http://www.freescale.com/files/microcontro...note/AN1798.pdf

Большое спасибо, KSR за доку и совет. Все настроил, прекрасно работает.
Для 20Mhz 1Mbit/s настройки будут такие Tseg1 = 4, Tseg2 = 3, BRP = 1, SAM = 1, SJW = 0
C1BTR = 0x00B40001
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.