KnigaRead.com/
KnigaRead.com » Компьютеры и Интернет » Программирование » Стивен Барретт - Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С

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

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Стивен Барретт, "Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С" бесплатно, без регистрации.
Назад 1 ... 146 147 148 149 150 Вперед
Перейти на страницу:

9.8. Что еще почитать?

1. Motorola, Inc. «HC12-M68HC12B Family Advance Information, M68HC12B/D», 2000.

2. Motorola, Inc. «CAN-Bosch Controller Area Network (CAN) Version 2.0,» Protocol Standard, BCANPSV2.0/D, Rev. 3, 1998.

3. Motorola, Inc. «The msCAN on the MC9S12DP256 Compared with the msCAN on the HC12 Family,» AN2011/D, Rev. 1, 01/2002.

4. Motorola, Inc. «Scalable Controller Area Network (msCAN) Interrupts», AN2283/D, Rev. 0, 08/2002.

5. Motorola, Inc. «VPW J1850 Multiplexing and Motorola's Byte Data Link Controller (BDLC) Module,» 1998.

9.9. Вопросы и задания

Основные

1. Сравните распределенную систему управления систему из нескольких автономных встраиваемых систем.

2. Расшифруйте следующие аббревиатуры: WAN, LAN, SAN, CAN.

3. Дайте короткое определение понятия «протокол».

4. Сколько уровней ISO существует в протоколе CAN версии 2.0/A?

5. Сколько уровней ISO существует в протоколе CAN версии 2.0/В?

6. Какие биты являются доминантными и рецессивными в CAN протоколе?

7. Перечислите возможные типы кадров, передающихся по CAN шине.

8. Перечислите возможные режимы работы контроллера последовательного обмена msCAN12.

9. В контроллере последовательного обмена заполнены три буфера передатчика.

Как контроллер msCAN12 решает, содержимое какого буфера передать первым?

Более сложные

1. CAN протокол не использует в сообщении адресов передающего и принимающего узлов. Как образом узел сети определяет, принимать сообщение, появившееся на шине, или нет?

2. Опишите механизм синхронизации приема бита, используемый в протоколе CAN с целью повышения надежности приема.

3. Опишите процесс передачи сообщения на шину CAN аппаратными и программными средствами контроллера msCAN12.

4. Опишите процесс, приема сообщения с шины CAN при использовании контроллера msCAN12.

5. Запишите на Си фрагмент программного кода, который загружает в буфер 0 подсистемы передатчика произвольное кодовое сообщение для контроллера CAN.

6. Запишите на Си фрагмент программного кода, который сначала опрашивает флаг состояния заполнения буфера 0 передатчика, а затем, когда буфер освободится, загружает в него новое произвольное сообщение.

7. Запишите на Си фрагмент программного кода, позволяющий конфигурировать подсистему приемника контроллера msCAN12 так, чтобы он получал любое сообщение с номерами идентификатора «2003» и «1995».

8. Запишите на Си фрагмент программного кода, который создает сообщение об ошибке, когда переполняется регистр счетчика ошибок приема. Используйте программу обработки прерываний, связанную с регистром счетчика ошибок, чтобы установить в передающий буфер 0 сообщение «Error».

Исследовательские

1. Нарисуйте схему аппаратного подключения для сети CAN с тремя узлами (A, B и C), использующую соответствующие приемопередатчики.

2. По техническому условию требуется, чтобы узел А передал сообщение с числовым значением узлу В, узел В добавил к этому значению 1 и переслал результат узлу C, а узел С еще раз добавил 1 к полученному значению и переслал полученный результат снова узлу А. Этот процесс должен быть периодическим. Узел А начинает весь процесс с нулевого начального значения. Нарисуйте блок-схему, выполняющую эту задачу.

3. Запишите на Си программы для всех трех узлов в предыдущей задаче.

Примечания

1

таблица рис. 1.10 была дополнена авторами перевода с учетом выпущенных в 2005–2006 г.г. новых моделей МК семейства HCS12.

Назад 1 ... 146 147 148 149 150 Вперед
Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*