Стивен Барретт - Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 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 с применением языка С - читать книгу онлайн бесплатно, автор Стивен Барретт
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Достаточно часто переменная счетчика циклов оператора for используется также в теле цикла этого оператора. Например, следующий программный фрагмент вычисляет таблицу соответствия значений температуры, записанных по шкале Цельсия и по шкале Фаренгейта, и последовательно выводит эти значения на экран монитора. Диапазон исходных значений температуры составляет от –10°C до +40°C.

1 for(k = –10; k <= 40; k++)

2 {

//преобразовать значения температуры, измеренные по шкале Цельсия

// к численному значению по шкале Фаренгейта

3 Temperature = k*9/5+32;

4 printf("Current temperature is \%f\n", Temperature);

5 }

Как видите, значение переменной k используется как параметр для вычисления новых значений температуры в теле цикла.

3.8.2. Оператор WHILE

Второй способ организации циклов использует оператор while. Применение оператора while иллюстрирует следующий программный фрагмент:

1 k = -10;

2 while(k < 40)

3 {

4 Temperature = k*9/5+32;

5 k++;

6 printf("Current temperature is \%f\n", Temperature);

7 }

В отличие от оператора for, переменная k, используемая в качестве счетчика циклов, должна быть инициализирована перед оператором while, например, в строке 1. Обратите внимание, что в строке 2 в скобках оператора while записано всего лишь одно выражение, которое называется условием цикла. Выполнение оператора while начинается с вычисления этого выражения. Если значение выражения отлично от нуля («истина»), то выполняются операторы 4…6 тела цикла. После выполнения операторов тела цикла снова вычисляется выражение условия и процесс повторяется. Таким образом, выполнение тела цикла происходит пока значение выражения условия цикла отлично от нуля («истина»).

Следует заметить, что если условие цикла не выполнится на первой итерации, то тело цикла не будет выполнено ни разу. Для того чтобы тело цикла выполнялось хотя бы один раз, в языке Си предусмотрен оператор do while, который рассматривается далее. Одним из результатов выполнения тела цикла, как правило, является изменение условия цикла, иначе цикл будет бесконечным. Но, естественно, возможны случаи, когда условие цикла зависит от результата работы вызываемой из выражения функции, или условие цикла меняется в функции обработки прерывания, которая активизируется во время выполнения тела цикла.

Тело цикла может вообще отсутствовать, в случае применения на его месте пустого оператора. Это бывает нужно, например, при программном ожидании установки какого либо аппаратного флага микроконтроллера, который изменяется встроенной периферией. С помощью оператора while можно создавать бесконечные циклы.

1 while (1)

2 {

3 Instructions //выполнение блока операторов

4 }

Так в приведенном примере блок операторов с именем Instructions будет исполняться микроконтроллером до тех пор, пока МК не перейдет в состояние сброса или не произойдет прерывание. В первом случае МК начнет исполнение программы сначала, во втором — МК перейдет к исполнению программы обслуживания прерывания.

3.8.3. Оператор DO-WHILE

Третий способ организации циклов в Си использует оператор do-while. Синтаксис оператора do-while:

do {

<���операторы тела цикла>

} while (выражение 1);

Пример записи вычисления таблицы соответствия температур с использованием оператора do while приведен ниже:

1 k = -10;

2 do

3 {

4 Temperature = k*9/5+32;

5 k++;

6 printf("Current temperature is \%f\n", Temperature);

7 }

8 while (k < 40)

Оператор do продолжает циклическое исполнение операторов тела цикла 4…6 до тех пор, пока значение выражения 1 не станет равным нулю («ложным»). Оператор do while похож на оператор while, но условие цикла в нём вычисляется и проверяется после очередного исполнения операторов тела цикла. Таким образом, операторы тела цикла выполняются, по крайней мере, один раз, даже если условие цикла заведомо ложно.

3.9. Операторы принятия решения

В этом параграфе мы обсудим примеры применения операторов if-then-else. Анализируя в главе 2 различные блок схемы алгоритмов управления, Вы часто наблюдали ситуацию, при которой некоторые действия должны были быть произведены только в том случае, если выполняется определенное условие. Мы рассмотрим четыре способа записи программного кода на Си, реализующего выполнение отдельных фрагментов программы при соблюдении заданного условия.

3.9.1. Оператор IF

Оператор if — это оператор выбора. Синтаксис оператора if:

if (<���выражение>) {

<���оператор 1>

} else {

<���оператор 2>

}

Работа оператора if заключается в следующем. Сначала вычисляется заключенное в скобки выражение. Если его значение оказалось отличным от нуля («истина»), то выполняется оператор 1. Если используется служебное слово else и значение выражения равно нулю («ложь»), то выполняется оператор 2, указанный после else. Если значение выражения равно нулю («ложь»), а служебное слово else не указано, управление передаётся следующему за if оператору программы.

1 if (input == 0x00)

2 {

3 output = 0x0F;

4 }

5 …………………

В этом примере переменная input проверяется на равенство 0. Если текущее значение этой переменной действительно равно 0, то выполняется оператор, записанный в строке 3. Служебное слово else в данном примере отсутствует, поэтому, если текущее значение переменной input не равно 0, то программа осуществляет переход к строке 5. В качестве первого и второго операторов в условном операторе if можно применять блоки операторов. Приведенный выше пример может быть записан в сокращенной форме, без выделения фигурными скобками блока операторов условно выполняемых операторов:

1 if (input == 0x00)

2 output = 0x0F;

Применяя конструкции с оператором if, полезно знать, что программа принимает решение о выполнении того или иного блока операторов по значению внутренней логической переменной, которая устанавливается в 0 или в 1 по результату анализа заключенного в скобки условного выражения. Поэтому в качестве выражения условия программист может записать некоторую логическую формулу. В ходе исполнения конструкции if ее значение будет вычислено, по результату вычисления (0 или 1) будет принято решение о выполнении той или иной группы операторов. Частным случаем логического выражения условия является запись:

1 if (1)

2 output = 0x0F;

Понятно, что действие output = 0x0F будет выполняться всегда, что иногда полезно на этапе отладки программы.

3.9.2. Оператор IF-ELSE

Многие алгоритмы управления требуют применения оператора if-else, который позволяет выполнить ту или иную группу операторов, в зависимости от результата анализа условия, следующего в скобках за оператором if. Допустим, встраиваемая система должна осуществлять управление кондиционером, анализируя текущее значение температуры воздуха. Эта задача может быть решена посредством записи следующего фрагмента программы:

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

Интервал:

Закладка:

Сделать


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

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




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


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


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

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