і
АВТОМАТИКА
t
>
ДЕЖУРНЫЙ РЕЖИМ <-
кнопка
ASC/C
----» НАСТРОЙКИ
ВРЕМЯ ОТКРЫТИЯ
I
ИНДИКАЦИЯ ОШБКИ
I
РЕЗЕРВ
-кнопка »-I
-кнопка <
кнопка
ASC/C
Рис. 3
Л
кл ю ч и <
кнопка
ASCIC
ПРОСМОТРЕТЬ
I
ДОБАВИТЬ
ЗАМЕНИТЬ
I
УДАЛИТЬ
ИЗМЕНЕНИЕ УРОВНЯ ДОСТУПА
Система меню
Система меню позволяет пользователю изменять настрой-
ки и контролировать состояние ячеек памяти микроконтрол-
лера, то есть просматривать, добавлять, заменять, удалять
карточки из памяти (рис. 3).
Меню “ НАСТРОЙКИ”
Меню “ВРЕМЯ ОТКРЫТИЯ" позволяет изменять время
открьяия замка от 1 до 9 с.
Меню “ИНДИКАЦИЯ ОШИБКИ” позволяет включить или
выключить звуковую сигнализацию при не верном считыва-
нии карточки, не верным считыванием считается 0000 или
РРРР.
Меню “РЕЗЕРВ” резервное меню “пустышка”.
Меню “ КЛЮЧИ”
Меню “ПРОСМОТРЕТЬ" просмотр ячеек памяти Для хра-
нения карточек.
Меню “ДОБАВИТЬ” добавление карточек в память мик-
роконтроллера, при наличии свободной ячейки.
Меню “ЗАМЕНИТЬ” замена карточки на другую, если та-
кой в памяти нет.
Меню “УДАЛИТЬ” удаление карточки из памяти, освобож-
дение ячейки.
Изменеие уровня доступа
Изменение уровня доступа позволяет запретить доступ
в помещение тем, чьи карточки занесены во второй список.
Уровень доступа можно изменить изнутри, путем нажа-
тия на кнопку 8А4 “АЭС/С”, или снаружи, любая карточка из
первого списка считанная устройством, автоматически сни-
мает ограничение доступа для карточек второго списка.
Программа
Номера карточек сохраняются в пользовательской АаБИ-па-
мяти. Так как ее объем составляет всего 64 байта, а исполь-
зуются два байта номера карточки, то можно сохранить 32
карточки. Служебную информацию тоже надо где-то хранить
(время открьяия и уровень доступа), и для этого выделено
два байта, значит можно сохранить 31 карточку. Организо-
вано два списка, в первом 10 карточек, во втором 21, первый
список является главным, то есть карточки, в него входящие,
не ограничиваются в доступе; карточки второго списка мо-
гут бьяь ограничены в доступе, снять ограничение можно
либо кнопкой ЭА4 “АБС/С", либо считыванием любой кар-
точки из первого списка. Устанавливается ограничение той
же кнопкой БА4 “АЗС/С".
Так как устройство является полностью функционально
завершенным, а именно предоставляет пользователю гиб-
кую систему меню, изменение настроек, контроль памяти,
то программа получается не маленькая. Некоторые версии
занимали все пространство памяти программ до последне-
го байта, но оптимизация позволило уменьшить объем кода.
Основные подпрограммы
Структура программы (не алгоритм):
Основной цикл программы
m a in :
w a it
/о ж и д а н и е п р е р ы в а н и й
b t t l
r d c
/ф л а г ч т е н и я к а р т о ч к и у с т а н а в л и в а е т с я
/ в п р е р ы в а н и и о т с ч и т ы в а т е л я п о р т В
jn z
r d c o n
; о б р а б о т к а с о б ы т и я
b t t h
d o o r
/ф л а г о т к р ы т и я д в е р и к н о п к о й
/у с т а н а в л и в а е т с я в п р е р ы в а н и и о т п о р т а А
jn z
d v r
; о б р а б о т к а с о б ы т и я
b t t h
b t n
/ф л а г у с т а н а в л и в а е т с я в п р е р ы в а н и и
/ о т п о р т а А к н о п к и »
m enu
С
jn z
b tn o n
/о б р а б о т к а с о б ы т и я
b t t h
t i m
/ф л а г п р е р ы в а н и я о т т а й м е р а д л я м и га н и я
, ; с в е т о д и о д а
j z
m a in
/в о з в р а т н а в с я к и й с л у ч а й
Подпрограмма считывания номера карточки
READC0D
r e a d c o d :
p u s h
# c
I d r
# c ,0 7 8 h /■
в ы д е л я е м с е г м е н т п а м я т и д а н н ы х
м и к р о к о н т р о л л е р а д л я с о х р а н е н и я
с ч и т а н н о г о н о м е р а к а р т о ч к и
m o v i
c 3 , 4 7
; к о л - в о и м п у л ь с о в п о д а в а е м ы х н а с ч е т н ы й
в х о д к а р т о ч к и д о б а й т о в с н о м е р о м
m o v i
c 4 ,2
/ к о л - в о б а й т в н о м е р е к а р т о ч к и
b i s l
d t r
; в ы в о д к а р т о ч к и r e s e t
/ -
j s r
c lo c k
/ и м п у л ь с н а с ч е т н ы й в х о д
b i d
d t r
; в ы в о д к а р т о ч к и r e s e t - \
с ! :
j s r
d o c k
;■ и м п у л ь с н а с ч е т н ы й в х о д
lo o p
c 3 , c l
/■
з а д е р ж к а
CIS:
m o v i
c 3 , 8
;■ с ч е т ч и к б и т д л я п р и н я т и я б а й т а
j s r
c lo c k
;■ и м п у л ь с н а с ч е т н ы й в х о д
b t t l
d a t
;■ п р о в е р к а в ы в о д а д а н н ы х к а р т о ч к и
j z
b tO
b i s l
c 5 ,0 0 0 1 b
jm p
c r d
b tO :
b i d
c 5 ,0 0 0 1 b
c r d :
d e c
c3
j z
e x c o d 1
s h l
cb
:
с д в и г в л е в о н а о д и н р а з р я д
jm p
c l 8 + l
e x c o d _ 1 : d e c c 4
\ ■
j z
e x c o d
m ov
c 0 ,c 5
; м л а д ш и й с ч и т а н н ы й б а й т с о х р а н я е м в СО
m ov
tm p ,c O
;:р е з е р в и р о в а н и е в о в н е ш н е м с е гм е н т е
д л я д р у г и х п о д п р о гр а м м
jm p
c l8
е х с с ^ :
ш о у
с 1 /с 5
/с т а р ш и й с ч и т а н н ы й б а й т с о х р а н я е м в С1 '
ш оу
Ш р 1 , с 1 /р е з е р в и р о в а н и е в о вн е ш н е м с е гм е н т е
/д л я д р у г и х п о д п р о гр а м м
:Іт р
р о р с гЬ э /В ы х о д с в о с с т а н о в л е н и е м а д р е с а с е гм е н т а
;# С и с п о л ь з у е т с я о д н а т о ч к а в ы х о д а д л я
/ в с е х п \ п и зм е н я ю щ и х а д р е с с е гм е н т а #С
Код программы (файл
LCDZAM.zip)
вы можете загру-
зить с сайта нашего журнала и сайта автора:
http://w ww.radiollga.com (раздел “Программы”)
^
http://com m unique.narod.ru/zam ok1878.htm
^
\ »
Радиолюбитель - ] I /2 0 0 6 1
предыдущая страница 17 Радиолюбитель 2006-11 читать онлайн следующая страница 19 Радиолюбитель 2006-11 читать онлайн Домой Выключить/включить текст