Цифровые микроконтроллеры

Полезные ссылки

Конфигурация потребителя Почтовый ящик переводится в режим потребителя путём соответствующего конфигурирования поля МОТ в регистре CAN_MMRx. Идентификатор сообщения и маски приёма сообщения должны быть заданы до разрешения режима приёма. После того как разрешается режим потребителя, флаг MRDY в регистре CAN_MSR автоматически сбрасывается, пока не запрашивается команда первой передачи.

Приложение посылает удалённый фрейм, устанавливая бит MTCR в регистре CAN_MCRx или бит МВх в глобальном регистре CAN_TCR. Приложение уведомляется об ответе установкой флага MRDY в регистре CAN_MSRx. Приложение может читать принятые данные в регистрах CAN_MDHx и CAN_MDLx. Когда устанавливается флаг MRDY, генерируется запрос прерывания от почтового ящика.

Это прерывание может быть замаскировано соответствующим флагом почтового ящика в глобальном регистре CAN_IMR. Бит MRTR в регистре CAN_MCRx не имеет никакого значения. Это поле используется только в режиме передачи. После посылки удалённого фрейма функции почтового ящика потребителя становятся подобными функциям почтового ящика приёма.

Первое полученное сообщение сохраняется в регистрах данных почтового ящика. Если поступают другие сообщения, предназначенные для этого почтового ящика, когда в регистре CAN_MSRx установлен флаг MRDY, то они будут потеряны. Приложение уведомляется об этом путём чтения поля MMI в регистре CAN_MSRx. Операция чтения автоматически сбрасывает флаг MMI.

Если производитель отвечает на несколько сообщений, то CAN-контроллер может иметь один почтовый ящик в режиме потребителя, не иметь или иметь несколько почтовых ящиков в режиме приёма и иметь один почтовый ящик в режиме приёма с наложением. В этом случае почтовый ящик потребителя должен иметь более низкий номер, чем почтовый ящик приёмника с наложением записей. Команда передачи может быть запущена для всех почтовых ящиков одновременно путём установки нескольких полей МВх в регистре CAN_TCR.

2009 © Copyright