Стивен Барретт - Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С

Тут можно читать онлайн Стивен Барретт - Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Издательский дом «ДМК-пресс», год 2007. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С
  • Автор:
  • Жанр:
  • Издательство:
    Издательский дом «ДМК-пресс»
  • Год:
    2007
  • Город:
    Москва
  • ISBN:
    5-9706-0034-2
  • Рейтинг:
    4/5. Голосов: 91
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Стивен Барретт - Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С краткое содержание

Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - описание и краткое содержание, автор Стивен Барретт, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

В книге последовательно рассматриваются все этапы создания встраиваемых систем на микроконтроллерах с применением современных технологий проектирования. Задумав эту книгу, авторы поставили перед собой задачу научить читателя искусству создания реальных устройств управления на однокристальных микроконтроллерах.

Издание содержит материал, охватывающий все вопросы проектирования, включает множество заданий для самостоятельной работы, примеры программирования, примеры аппаратных решений и эксперименты по исследованию работы различных подсистем микроконтроллеров.

Данная книга является прекрасным учебным пособием для студентов старших курсов технических университетов, которые предполагают связать свою профессиональную деятельность с проектированием и внедрением встраиваемых микропроцессорных систем. Книга также будет полезна разработчикам радиоэлектронной аппаратуры на микроконтроллерах.

Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - читать онлайн бесплатно полную версию (весь текст целиком)

Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - читать книгу онлайн бесплатно, автор Стивен Барретт
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Рис. 9.18.Процесс идентификации приемников: режим с двумя 32-разрядными фильтрами

Когда состояние битов IDAM1 и IDAM0 регистра CIDAC соответствует режиму четырех 16-разрядных приемных фильтров, могут использоваться только 11-разрядные идентификаторы и биты RTR (в регистрах IDR0 и IDR1) согласуются с сообщениями формата CAN 2.0A. Сообщениям в формате CAN 2.0B сопоставляются 14 значащих разрядов идентификатора. На рис. 9.19 показан процесс идентификации приемников для режима с четырьмя 16-разрядными фильтрами.

Рис 919Процесс идентификации приемников режим с четырьмя 16разрядными - фото 341

Рис. 9.19.Процесс идентификации приемников: режим с четырьмя 16-разрядными фильтрами

И наконец, когда биты IDAM1 и IDAM0 программируют работу в режиме восьми 8-разрядных фильтров, только восемь старших битов используются, чтобы пропустить или заблокировать входящие сообщения как в формате CAN 2.0A, так и в формате CAN 2.0B. На рис. 9.20 показан процесс идентификации для режима с восемью 8-разрядными фильтрами.

Рис 920Процесс идентификации приемников режим с восемью 8разрядными - фото 342

Рис. 9.20.Процесс идентификации приемников: режим с восемью 8-разрядными фильтрами

Обсудим теперь еще два регистра, связанные с приемным модулем. Первый из них — регистр флагов приемника CRFLG (рис. 9.21). Каждый бит этого регистра, кроме RXF, может быть очищен посредством записи в него логической 1. За исключением флага полного буфера RXF, все другие флаги используются, чтобы вызывать ряд прерываний. Флаг прерывания по событию пробуждения WUPIF (бит 7) используется, чтобы обнаружить воздействие сети CAN, когда контроллер msCAN12 находится в спящем режиме: логический 0 в этом бите указывает, что не имеется никакого воздействия шины, логическая 1 показывает, что на вход приемника контроллера msCAN12 пришел запрос на прерывание спящего состояния. Флаг аварийного прерывания приема RWRNIF устанавливается, когда одновременно происходят следующие события: число ошибок превышает 96; флаг пассивного прерывания по ошибке приемника RERRIF сброшен; флаг пассивного прерывания по ошибке передатчика TERRIF сброшен; флаг прерывания «шина отключена» BOFFIF также сброшен. Низкое логическое состояние показывает, что нет аварийной ситуации на всех приемниках. Высокое логическое состояние показывает, что приемник msCAN12 находится в аварийном состоянии.

Рис 921Формат регистра флагов приемников CRFLG Флаг TWRNIF бит 5 - фото 343

Рис. 9.21.Формат регистра флагов приемников CRFLG

Флаг TWRNIF (бит 5) используется, чтобы проверить, аварийное состояние передатчика. Логическая единица, соответствующая аварийному состоянию, появляется, когда одновременно происходят следующие четыре события:

• число ошибок передачи превышает 96;

• бит RERRIF находится в состоянии нуля;

• бит TERRIF находится в состоянии нуля;

• бит BOFFIF находится в состоянии нуля.

Логический нуль TWRNIF указывает на отсутствие передатчика, находящегося в аварийном состоянии.

Флаг RERRIF (бит 4) используется, чтобы указать, находится или нет модуль msCAN12 в состоянии пассивной ошибки. Этот флаг устанавливается, когда число полученных ошибок находится в диапазоне от 128 до 255, и бит BOFFIF равен нулю. Установка бита RERRIF в 1 показывает, что модуль msCAN12 вошел в состояние пассивной ошибки приемника, в то время как очистка бита показывает, что модуль msCAN12 не находится в этом состоянии. Точно так же установка флага TERRIF (бит 3) показывает, что модуль msCAN12 вошел в состояние пассивной ошибки передатчика. Модуль входит в это состояние, когда число ошибок передачи находится в диапазоне от 128 до 255 и флаг BOFFIF сброшен.

И, наконец, флаг заполнения приемного буфера RXF (бит 0) устанавливается, когда модуль msCAN12 желает «сообщить» процессорному ядру МК, что получено новое непрочтенное сообщение. ЦПУ сбрасывает этот флаг, чтобы перегрузить новое сообщение с предварительного буфера в основной. Логическая 1 указывает, что имеется готовое сообщение, а логический 0, что новых сообщений нет.

Последним регистром, связанным с приемным модулем, является регистр счетчика ошибок приемника CRXERR (рис. 9.22). Этот регистр подсчитывает число ошибок приема и предназначен только для чтения.

Рис 922Формат регистра счетчика ошибок приемника CRXERR Мы заканчиваем этот - фото 344

Рис. 9.22.Формат регистра счетчика ошибок приемника CRXERR

Мы заканчиваем этот раздел фрагментом программы, позволяющим конфигурировать приемный модуль для приема определенного набора сообщений. Текст программного фрагмента предполагает, что все имена используемых регистров были правильно определены в файле заголовка А мы лишь устанавливаем модуль приемника в режим 16-разрядного фильтра, чтобы получить данные со значением идентификатора $28E при использовании стандартного формата. Кроме того, мы программируем это, чтобы искать соответствие только по фильтру 0.

:

:

: /*включить модуль msCAN, инициализировать его */

: /*ввести режим программного сброса: установить SFTRES =1*/

: /*конфигурировать 16-разрядный режим приемного */

/* фильтра: установить IDAM1 = 1, IDAM0 = 0*/

line i CIDAC = $10;

line i+1 CIDMR0 = $00;

/*задать значения первых 11 бит, RTR и IDE бит*/

line i+2 CIDMR1 = $07;

: /*установить все другие CIDMRx регистры to have*/

/*$00: игнорировать остальные биты*/

line j CIDAR0 = $51;

/*%01010001 bits 10 - 3 of ID*/

line j+1 CIDAR1 = $C0;

/*%11000000 bits 2 - 0 of ID, RTR = 0, и */

/*IDE =0*/

:

: /*ввести рабочий режим : установить SFTRES = 0 */

:

: /*дождаться установки флага приема и просмотреть */

/*соответствие фильтру 0, чтобы считать данные*/

Подсистема прерывания контроллера msCAN12.

Модуль msCAN12 имеет четыре типа прерываний: прерывание пробуждения (1), прерывания по ошибкам (6), прерывание при заполнении буфера приема (1) и прерывания при пустом буфере передатчика (3). В скобках указано число возможных прерываний, связанных с каждым из классифицированных типов.

Прерывание пробуждения допускается, когда установлен флаг WUPIE (бит 7) в регистре CRIER разрешения прерываний приемника msCAN12 (рис. 9.23). Если обнаружена активность шины, прерывание, связанное с пробуждением, инициализируется сразу после установки флага WUPIE.

Рис 923Формат регистр разрешения прерывания приема CRIER Контроллер msCAN12 - фото 345

Рис. 9.23.Формат регистр разрешения прерывания приема CRIER

Контроллер msCAN12 имеет шесть различных прерываний по ошибкам. Первое из эти шести — аварийное прерывание приема, которое допускается, когда в регистре CRIER установлен бит RWRNIE (бит 6). Если при этом обнаружено событие, вызывающее состояние аварийного прерывания приема, то устанавливается связанный с этим флаг RWRNIF в регистре CRFLG и выполняется соответствующая пользовательская программа обработки прерывания. Когда установлен бит TRWNIE (бит 5) регистра CRIER, состояние аварийного прерывания передачи устанавливает флаг TWRNIF в регистре CRFLG, и выполняется другая пользовательская программа обработки прерывания.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Стивен Барретт читать все книги автора по порядку

Стивен Барретт - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С отзывы


Отзывы читателей о книге Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С, автор: Стивен Барретт. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x