Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые обзорные » Мікропроцесорний контролер кодового замка

Реферат Мікропроцесорний контролер кодового замка





додаються паролів */(75) byte,/* масив останніх 10 введ паролів */_Ini (*) byte constant (08h, 02h, 0fh, 01h),/* команди ініціалізації РКІ */(56) bute,/* вміст індикатора */

(i, ip, jp, per, s, np, st, timN, nreg, pl) byte,/* змінні для роботи */

(flag, fl_p, flH, fl_key, fl_pasv, fl_ok, fl_ind) byte,/* прапори визначення режиму роботи */_key byte,/* номер натиснутоюклавіші */

(k1_old) byte,/* номер останньої натиснутоюклавіші */

(sek, min, chas) word ;/ * секунди, хвилини та години */

/* пеpеіменованіе pазpядов поpта */rs literally 'P3.0',/* RS лінія зв'язку з LCD */

rw literally 'P3.1',/* RW лінія зв'язку з LCD */literally P3.2 ; _int: procedure interrupt 1;/* --- Обробник переривання таймера --------------- */

if st = 0 then P2 = 10111111;/* установка сканируемого стовпця */

if st = 1 then P2 = 11011111; st = 2 then P2 = 11101111; st = 3 then P2 = 11110111; st = 4 then do;/* якщо немає натиснутий клавіш скидання прапора натискання інакше утанавлівается */n_key = 0 then do; fl_key = 0; key_old = 0; end

else key_old = n_key ;/ * предшеств кл */= 0; n_key = 0;; st = st +1;

/* блок перевірки натискання клавіш */(p2.0 = 0b) then do n_key = st * 3 +1; fl_key = 1; end; (p2.1 = 0b) then do n_key = st * 3 +2; fl_key = 1; end; (p2.2 = 0b) then do n_key = st * 3 +3; fl_key = 1; end;

if fl_key = 1 then do/* обробка натискань на определеннике клавіші */

if (n_key = 11) and (n_key <> key_old) then fl_pasv = 1 ;/ * прапор введення пароля на вхід */(n_key = 12) and (n_key <> key_old) then fl_ok = 1 ;/ * прапор установки підтвердження */

end; = per +1;/* збільшуємо лічильник переповнень */

if per> = 15 then do;/* відлік часу */

per = 0; sek = sek +1 ;/ * відлік секунд */

if sek> = 60 then do; min = min +1; sek = 0 ;/ * хвилин */min = 60 then do; chas = chas +1; if chas = 24 then chas = 0; end; end ;/ * годин */

flag = 1 ;/ * прапор необхідності відновлення зображення індикатора * /; = 0;/* скидання прапора переповнення */

end timer_int; _ind: procedure;/* висновок Введіть */= 0; j = 1; do while str_vvedite (i) <> 20h; ind (j) = str_vvedite (i); = i +1; j = j +1; end; ind (j) = 20h; j = j +1; vvod_ind; _ind: procedure;/* висновок новий */= 0; do while str_nov (i) <> ; 20h; ind (j) = str_nov (i); = i +1; j = j +1; end; ind (j) = 20h; j = j +1; nov_ind; _ind: procedure;/* висновок пароль * /= 0; do while str_parol (i) <> 20h; ind (j) = str_parol (i); = i +1; j = j +1; end; ind (j) = 20h; j = j + 1; parol_ind; _ind: procedure;/* висновок Помилка *...


Назад | сторінка 6 з 9 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Procedure of preparation business-plan
  • Реферат на тему: Аудиторський висновок
  • Реферат на тему: Аудиторський висновок
  • Реферат на тему: Обвинувальний висновок
  • Реферат на тему: Обвинувальний висновок