дії SSP і TC74temperature-unsigned intПеременная для зберігання значення поточної температуриseconds, minutes, hours-unsigned intПеременние для зберігання значення поточного часу, відповідно секунд , хвилин і годин
4.3 Основні конструкції та процедури, які використовуються для написання програми
При розробці проекту необхідно підключити заголовні файли:
1. # Include - стандартний заголовний файл з оголошенням спеціальних регістрів і бітів мікроконтролера PIC18F4520;
2. # Include - дозволяє організувати затримки;
3. # Include - дозволяє використовувати функції перетворюють цілочисельні значення в символи, які можна вивести на LCD;
. p18lcd.asm - набір стандартних функцій для роботи з LCD.
Приклади найбільш значущих для проекту функцій наведені у таблиці 4.2.
Таблиця 4.2 Опис основних функцій програми.
Ім'я функцііОпісаніеmainТочка входу в программуstartВизивается першої, при вході у функцію main (). Виконує налаштування системи для подальшої роботи. Зокрема, виконує ініціалізацію екрану і інтерфейсу передачі даннихd_writeПроізводіт автоматичний вивід на екран вмісту глобальної змінної temp_wrLCDInitВиполняет настройку і дозволяє доступ до LCDLCDLine_1, LCDLine_2Виполняет перехід віртуального курсора на першу (другу) рядок екранаstan_char_1, stan_char_2Отображают на екрані послідовність символів залежно від значення ptr_pos на відповідно 1 ю і 2ю рядках LCDitoaПреобразовивает цілочисельні значення в символи, які можна вивести на LCD
Розберемо детальніше найбільш важливі функції.
void stan_char_1 (void); stan_char_2 (void);
(). Функція виконує настройку необхідних для нормальної роботи пристрою модулів мікроконтролера. До таких можна віднести модуль LCD-екрану, MSSP, USART і CCP. p align="justify"> Функція LCDInit () описана у файлі p18LCD.ASM.
void start (void)
{(); = 0b10100100;// initialize USART = 25; = 0b10010000;
. TRISC2 = 0;// initialize CCP = 0x80; L = 0x80; CONbits.CCP1X = 0; CONbits.CCP1Y = 0; CON = 0x05;
// initialize timer2.TRISA4 = 1;// knopki S1 I S2 aktivni.TRISB0 = 1;
}
itoa (). Функція перетворює, отриману в якості параметра змінну типу int в змінну типу * char і поміщає її в масив char який обробляється в залежності від вхідного значення int. Це стандартна функція, для звернення до н їй підключаємо бібліотеку stdlib.h.
menu (). Функція організовує в нескінченному циклі висновок на LCD меню, яке дозволяє вибрати підпрограми реалізують вольтметр, звуко-випромінювач, термометр і годинн...