> if (! RB4) kl = 4; = 0 ;//скидання прапора запиту переривання від клавіатури
}
}// кінець обробки прериванійmain ()
{= 0xFF ;//налаштування RA <0-5> як входи = 0xF0 ;//(11110000) конфігурація порту на введення = 0 ;//конфігурація порту на вивід (0x30);
WriteCommand (0x28) ;//(00101000) 5x8, 2 рядка, 4 розр. SD (0x0С) ;//(00001100) включення РК (0x06) ;//(00000110) настройка курсора (зрушення на 1 вправо) ADCON0 = 0x41 ;//(01000001) включення модуля АЦП, частота Fosc/8; = 0x8E; // (10001110)// включаємо 0-й каналів АЦП = 0xA8 ;//(10101000)
// біт 7 - дозволені всі немаскірованном переривання (GIE)
// біт 6 - заборонені переривання від периферійних модулів (PEIE)
// біт 5 - дозволені переривання по переповнення TMR0 (T0IE)
// біт 4 - заборонені зовнішні переривання INT (INTE)
// біт 3 - Можна переривання по зміні сигналів на входах-RB4 (RBIE)
// біт 2 - прапор переривання по переповнення TMR0 (T0IF)
// біт 1 - прапор зовнішнього переривання INT (INTF)
// біт 0 - прапор переривання по зміні сигналів на входах-RB4 (RBIF) (1)
{
// перевірка термодатчика (d1 == 1)
{d1 = 0; = 1 ;//запускаємо АЦП (ADGO) ;//чекаємо поки АЦП закінчить перетворення
temperature = (ADRESL + ADRESH * 256) * 5000/1023 ;//обчислюємо температуру ((temperature> settemperature) && (status == 1))
RB0 = 1 else RB0 = 1;// спрацював датчик температури
} (d2 == 1) _time1 = _time;// спрацював 1-й датчик руху (d3 == 1) _time2 = _time;// спрацював 2-й датчик руху (d4 == 1) _time3 = _time; // спрацював 3-й датчик руху
if (d1 | | d2 | | d3) {RB1 = 1; d1 = d2 = d3 = 0;} else RB1 = 0; (d5 == 1) {RB2 = 1; d5 = 0} else RB2 = 0;// спрацював датчик диму (d6 == 1) {RB3 = 1; _time4 = _time; d6 = 0} else RB3 = 0;// спрацювала лінія розриву (displayed) {Display (Regim); displayed = 0;} (kl == 1) {on_off (); kl = 0;} (kl == 2) {Down (); kl = 0;} (kl == 3) {Up (); kl = 0;} p>
if (kl == 4) {Select (); kl = 0;}
};
}
Висновок
При виконанні даного курсового проекту була вивчена архітектура мікроконтролера PIC16F876 фірми Microchip і побудована на його основі мікропроцесорна система сигналізації. При цьому також був вивчений текстовий рідкокристалічний дисплей WH1602A-YYK-CP фірми Winstar і вбудований в нього контролер HD44780. Придбано навички програмування мікропроцесорних систем і побудови на їх основі пристроїв збору та обробки інформації. br/>