Поиск по сайту:

 


По базе:  

микроэлектроника, микросхема, микроконтроллер, память, msp430, MSP430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, SED1335, mega128, avr, mega128  
  Главная страница > Компоненты > Infineon Technologies AG > C500-C800

реклама

 




Мероприятия:




Буфера сообщений (Message Object)

Буфера сообщений - это основной способ взаимодействия между микроконтроллером и CAN - контроллером.

Каждый из 15 буферов сообщений занимает 15 последовательных байт и начинается с адреса кратного 16 (см. рисунок).

Примечание: Все буфера сообщений должны инициализироваться С505С, перед тем как они начнут использоваться, т.е. перед сбросом бита INIT.

Каждый элемент регистра CAN Message Control Register Low (High) буфера сообщения состоит из двух бит. Специальный механизм позволяет избирательно устанавливать или сбрасывать определенные битовые поля (не изменяя другие) без ввода циклов чтение - модификация - запись.

Установка / сброс битов:
Значение двухбитного поля Для записи При чтении
0 0 Зарезервировано Зарезервировано
0 1 Элемент сбрасывается Элемент сброшен
1 0 Элемент устанавливается Элемент установлен
1 1 Данный элемент не изменяется Зарезервировано

CAN Message Control Register Low MCR0

Адрес - F7n0h.

Значение после сброса - UUh.

Бит 7 6 5 4 3 2 1 0
Доступ rw rw rw rw
Назван. MSGVAL TXIE RXIE INTPND

CAN Message Control Register High MCR1

Адрес - F7n1h.

Значение после сброса - UUh.

Бит 7 6 5 4 3 2 1 0
Доступ rw rw rw rw
Назван. RMTPND TXRQ MSGLST NEWDAT
      CPUUPD  


Бит Назначение
MSGVAL Действительность буфера.
Показывает, используется данный буфер или нет. Буфер может быть недействительным, если сообщение в данном буфере изменяется или не используется совсем.
TXIE Разрешение прерывания после передачи.
Определяет, установится ли бит INTPND после передачи. 1
RXIE Разрешает прерывание после приема.
Определяет, установится ли бит INTPND после успешного принятия сообщения.
INTPND Ожидание прерывания.
Показывает, сгенерировал ли если этот буфер сообщения запрос на прерывание (см. TXIE и RXIE), с тех пор, когда этот бит был последний раз сброшен микроконтроллером.
RMTPND Удаленный запрос (используется для буферов передачи).
Показывает, что передача сообщения из этого буфера была затребована удаленным узлом, но данные не были переданы. Когда RMTPND установлен, CAN - контроллер также устанавливает бит TXRQ. TXRQ и RMTPND будут сброшены, когда сообщение будет успешно передано.
TXRQ Запрос на передачу 1 3
Показывает, что требуется передача данного сообщения микроконтроллером или удаленным узлом. TXRQ может быть отключен сбросом бита CPUUPD 1 3.
MSGLST Сообщение потеряно (только для буфера приема)
Показывает, что CAN - контроллер сохранил новое сообщение в этот буфер, когда был установлен бит NEWDAT, т.е. предыдущий кадр был потерян.
CPUUPD Бит изменения (только для буфера передачи)
Показывает, что сообщение в этом буфере передачи не может быть передано сейчас. Микроконтроллер устанавливает этот бит, для того чтобы запретить передачу сообщения из данного буфера передачи или для контроля над автоматическим ответом на удаленный запрос данных.
NEWDAT Новые данные
Показывает, что в данный буфер были записаны новые данные микроконтроллером или CAN - контроллером с тех пор как был последний сброс микроконтроллера2.

  1. В буфере сообщения №15 этот бит аппаратно установлен в лог. 0
  2. Когда CAN - контроллер записывает новые данные в буфер сообщения, неиспользованные байты сообщения перезаписываются неопределенными значениями. Обычно микроконтроллер очищает этот бит перед работой с данными и проверяет, чтобы этот бит был сброшен до окончания работы с данными, чтобы при работе не произошло наложения части нового пакета и старого пакета.
    Для буфера передачи микроконтроллер устанавливает этот бит вместе со сбросом бита CPUUPD. Если сообщение действительно началось передаваться то CAN - контроллер не сбрасывает бит TXRQ. Бит TXRQ сбрасывается только после передачи сообщения.
  3. Когда микроконтроллер требует передачу сообщения из буфера приема, вместо кадра данных необходимо послать кадр удаленного запроса данных, чтобы запросить передачу кадра данных с тем же идентификатором от удаленного узла. Этот бит очищается CAN - контроллером вместе с битом RMTPND, если не был установлен, бит NEWDAT. Если имеется несколько сообщений на передачу, то первым будет передано сообщение из буфера передачи, имеющего наименьший номер.


<-- Предыдущая страница Оглавление Следующая страница -->





 
Впервые? | Реклама на сайте | О проекте | Карта портала
тел. редакции: +7 (995) 900 6254. e-mail:info@eust.ru
©1998-2023 Рынок Микроэлектроники