Цитата(alogvinov @ Apr 19 2007, 13:39)

Это которое с номером 19?
Угу
Цитата
Правильно ли я понимая, что обработчик этого прерывания должен ( в идеале, конечно) обрабатывать все прерывания, за исключением приёма и передачи?
Не все, а нужные, я обрабатываю только EIE, проверяя в обработчике биты BEI и EI регистра ICR.
Т.е. у меня, в этом 19-ом прерывании цикл по всем используемым CAN-ам с вызовом общего для передачи и ошибок обработчика. А общий он у меня в связи с тем, что при чтении ICR его биты сбрасываются. И у меня была проблема с потерей прерываний, хотя, возможно, её можно было решить переупорядочиванием приоритетов в VIC.
В результате у меня для 2292
2-обработчика прерываний приёма (они ICR не читают)
2-обработчика прерываний передачи, читают ICR, вызывают общий обработчик передачи ошибок с номером шины и прочитанным ICR.
1-обработчик прерывания всего остального, в цикле по всем используемым CAN-ам читают ICR, вызывают общий обработчик передачи ошибок с номером шины и прочитанным ICR.
Цитата
CAN контроллер получился клёвый: 1 приёмный и 1 передающий буфер, FullCan не работает
А Вам реально надо слать тыщи пакетов с максимальной скоростью?
И что за время приёма следующего пакетта Вы предыдущий не успеваете обработать?
И FullCan нужен?
Меня больше вот это напрягает:
Цитата
CAN.7Receiving messages while arbitration is lost.
IntroductionThe CAN module can lose arbitration to another CAN node during an attempt to transmit a CAN message. The message of the CAN node the arbitration was lost to is supposed to be received correctly by the CAN module.
Problem Messages might not be received correctly if during a CAN Transmission the CAN bus arbitration is lost to another CAN node.
Work-around Use the Self Reception Request command instead of the Transmission Request command. However, it has to be taken into account that now all transmitted messages may be received if not prevented by appropriate Acceptance Filter settings. (Don’t set up Acceptance Filter Message Identifiers for the messages you are transmitting yourself.)
Хотя в моём случае Self Reception Request вместе с Acceptance Filter прокатывает, но в ряде случаев может быть печально.

Цитата
, а уж документация - так вообще, полное г###о.

Её просто долго курить нада, с ерратами вместе. У меня кстати 3 передающие буфера работали без проблем, пока еррата не появилась.