Цитата:
Как я понял из спецификации для отправки необязательно использовать прерывание, и в моем случае достаточно просто убрать функцию CAN_TxITConfig( MDR_CAN1 ,(1<<tx_buf), ENABLE);(так как я ей не пользуюсь), верно?
Верно, для отправки необязательно использовать прерывание передачи. В Вашем случае, убрав функцию CAN_TxITConfig( MDR_CAN1 ,(1<<tx_buf), передача будет осуществляться, так как прерывания передачи запрещены.
Цитата:
Цитата:
В Вашем случае после отправки сообщения программа переходит в обработчик прерывания void CAN1_IRQHandler(), после чего там и остаётся.
В этом я сомневаюсь, т.к. светодиод не перестает мигать (В программе между передачами то загорается то погасает светодиод).
В коде Вы не указали, как именно у Вас реализованы обработчики прерывания:
#include "MDR32F9Qx_it.h"
Если функция обработчика прерывания CAN1_IRQHandler() не реализована, либо пустая, то программа самостоятельно не сможет выйти из прерывания.
Цитата:
Перемычки установлены. Остается единственный вопрос: перемычка XP15(SLEW RATE), если код будет сконфигурирован на скорость передачи отличную от 125 и 500 перемычка не устанавливается? если так, то какой в ней смысл?
Перемычка XP15(SLEW RATE) позволяет выбрать крутизну фронтов передаваемых импульсов интерфейсной микросхемы путем изменения нагрузки на линии RS. На отладочной плате в качестве приемопередатчика интерфейса CAN используется микросхема ATA6660 компании Atmel. Если не устанавливать перемычку XP15, микросхема ATA6660 перейдёт в режим Standby Mode. Подробнее можете прочитать в спецификации на микросхему.
_________________
Отдел технической поддержки
support@milandr.ru