Цитата(Golikov A. @ Apr 5 2013, 11:21)

CAN1_TX_IRQn
это не единственное прерывание кана, это только от 1 буфера, есть еще и 0 (в проце 2 буфера). Надо обрабатывать оба прерывания!
Когда заполняется первый буфер данные приходят во второй. В какой они придут первыми хрен знает, недавно кто-то говорил что при дебуге у него данные сыпались в 1 буфер, а при работе в 0.
прерывание по передаче единственное. По приему, действительно, пара и так на каждый из двух ВОЗМОЖНЫХ модулей. Возможных, не значит обязательно использовать оба.
При приеме, тоже все не так сложно: фрейм прошедший через фильтр попадает в буфер(FIFO), назначенное этому фильтру. Если фрейм может пройти через 2 фильтра, настроенные на разные буфера, то он будет проходить через фильтр с меньшим порядковым номером и, соответственно, в ему, фильтру, приписанный буфер.
Моя проблема, как я описал выше, была в настройках IDE Keil - и хрен с ней, пока разбираться не приспичило.