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

/************************************************************/

/* Название: Sample.c                                       */

/* Описание: Эта программа производит включение             */

/* и выключение светодиодов с интервалом                    */

/* времени 1 с. Используется МК 68НС12ВЗ2                   */

/* Файл заголовка header содержит адреса всех               */

/* портов и регистров специальных функций                   */

/* Контроллер должен быть сконфигурирован                   */

/* для работы в однокристальном режиме                      */

/* Дата создания: May 15, 2004                              */

/* Авторы: Daniel Pack and Steve Barrett                    */

/************************************************************/

1 #include <68НС12ВЗ2.h>

2 /*****************************************************/

3 void TOIISR(void);

4 /*****************************************************/

5 #pragma interrupt_handler TOIISR() /* Объявление подпрограммы

6  прерывания по переполнению таймера*/

7 #pragma abs_address:0x0B1E /*задать адрес подпрограммы прерывания ISR */

8 void (* Timer_Overflow_interrupt_vector[])()={TOIISR}

9 #pragma end_abs_address

10 unsigned char second = 0x00;

11 void main (void)

12 {

13  TSCR=0x80; /*включить таймер*/

14  TMSK2=0x80; /*разрешить прерывания по таймеру*/

15  TFLG2=0x80; /*очистить флаг TOIF*/

16  DDRA=0xFF; /* настроить порт Port A на вывод*/

17  CLI(); /*разрешить прерывания*/

19  EXIT()

20 }

21

22 void TOIISR(void) /*подпрограмма прерывания*/

23 {

24  TFLG2=0x80; /*очистить флаг TOIF*/

25  second += 1; /*увеличить на 1 программный счетчик с именем second*/

26  if (second == 122)

27  {

28   PORTA = !PORTA; /*инвертировать порт PORT A*/

29   second = 0x00; /*обнулить программный счетчик*/

30  }

31 }

Обратите внимание! Каждая программа должна обязательно иметь заголовок, в котором прописаны: название программы, краткое описание реализуемого алгоритма, авторы и дата создания программы. Файл заголовка 68HC12B32.h содержит определения регистров специальных функций МК B32 и макроопределения для препроцессора компилятора. Номера строк в приведенном тексте программы при вводе исходного текста в редакторе интегрированной среды ICC12 не должны присутствовать. Это наше дополнение для удобства восприятия материала.

Перейти на страницу:

Похожие книги

C# 4.0: полное руководство
C# 4.0: полное руководство

В этом полном руководстве по C# 4.0 - языку программирования, разработанному специально для среды .NET, - детально рассмотрены все основные средства языка: типы данных, операторы, управляющие операторы, классы, интерфейсы, методы, делегаты, индексаторы, события, указатели, обобщения, коллекции, основные библиотеки классов, средства многопоточного программирования и директивы препроцессора. Подробно описаны новые возможности C#, в том числе PLINQ, библиотека TPL, динамический тип данных, а также именованные и необязательные аргументы. Это справочное пособие снабжено массой полезных советов авторитетного автора и сотнями примеров программ с комментариями, благодаря которым они становятся понятными любому читателю независимо от уровня его подготовки. Книга рассчитана на широкий круг читателей, интересующихся программированием на C#.Введите сюда краткую аннотацию

Герберт Шилдт

Программирование, программы, базы данных
Программирование. Принципы и практика использования C++ Исправленное издание
Программирование. Принципы и практика использования C++ Исправленное издание

Специальное издание самой читаемой и содержащей наиболее достоверные сведения книги по C++. Книга написана Бьярне Страуструпом — автором языка программирования C++ — и является каноническим изложением возможностей этого языка. Помимо подробного описания собственно языка, на страницах книги вы найдете доказавшие свою эффективность подходы к решению разнообразных задач проектирования и программирования. Многочисленные примеры демонстрируют как хороший стиль программирования на С-совместимом ядре C++, так и современный -ориентированный подход к созданию программных продуктов. Третье издание бестселлера было существенно переработано автором. Результатом этой переработки стала большая доступность книги для новичков. В то же время, текст обогатился сведениями и методиками программирования, которые могут оказаться полезными даже для многоопытных специалистов по C++. Не обойдены вниманием и нововведения языка: стандартная библиотека шаблонов (STL), пространства имен (namespaces), механизм идентификации типов во время выполнения (RTTI), явные приведения типов (cast-операторы) и другие. Настоящее специальное издание отличается от третьего добавлением двух новых приложений (посвященных локализации и безопасной обработке исключений средствами стандартной библиотеки), довольно многочисленными уточнениями в остальном тексте, а также исправлением множества опечаток. Книга адресована программистам, использующим в своей повседневной работе C++. Она также будет полезна преподавателям, студентам и всем, кто хочет ознакомиться с описанием языка «из первых рук».

Бьёрн Страуструп , Ирина Сергеевна Козлова , Бьерн Страуструп , Валерий Федорович Альмухаметов

Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT