/************************************************************/
/* Название: 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 не должны присутствовать. Это наше дополнение для удобства восприятия материала.