Читайте также:
|
|
Технологиялық қондырғыны қосар кезде әрқашан ескертуші үзілісті дыбыстық немесе жанып-өшіп жыпылықтайтын жарықтық сигнализация қосылады. Бұл қондырғы PORTC биттеріне қосылады. 7.2 суретте келтірілген уақыттық диаграммаға сәйкес S1 дыбыстық сигнализациямен қатара L2 лампасы жанады. Сәйкесінше «0» битке пульстік кернеу беру керек, ал «1» битке тұрақты кернеу.
7.2 сурет – Буып-түйгіш жұмысының уақыттық диаграммасы
Қосымша ішкі программа жазбас үшін пульстік кернеуді PORTC «0» битін терістеу арқылы аламыз, ол нақты бір уақыттан кейін Timer ішкі программасының сыртқы циклында орындалады (№3зертханалық жұмыстан). Терістеуді ХOR (Исключительное ИЛИ) логикалық операциясымен орындауға болады. Inver_Bit регистрінде терістелетін бит нөмірін жазамыз, өйткені сирена нөлінші битке жазылған, сонда Inver_Bit=h’01’.
Программа келесі алгоритмді орындауы керек:
Inver_Bit=h’01’; нөлінші битті терістейтінімізді көрсетеміз.
_PORTC= PORTC; PORTC күйін _ PORTC регистрінде сақтаймыз.
W=d’40’; сигнал беру уақытын береміз.
Call Timer; ішкі программаны шақырамыз.
PORTC=_ PORTC; PORTC сақталған мәнін қайтарамыз.
Inver_Bit=h’00’; PORTC битін терістеуге тыйым саламыз.
Timer ішкі программасының өзгертілген бөлігінің блок-сұлбасы 7.3 суретте көрсетілген, оң жағында түсініктемесі келтірілген.
- мұнда W=h’00’ - XOR логикалық операциясының маскасы. Оны нөлге теңестіру арқылы PORTC битін терістеу қажет емесе деп шешеміз. - терістелетін биттер көрсетілгенін тексереміз. - инверсия қажет болса, онда маскаға инверсияланатын биттердің нөмірлерін жазамыз. - маска (W) және PORTC арасындағы логикалық операцияны орындаймыз. Егер масканың қандай да бір разрядында ‘1’ жазылса, онда PORTC-дағы сәйкес разряд инверсияланады, PORTC қалған разрядтары өзгерусіз қалады. | |
7.3 сурет – Timer ішкі программасы |
Дата добавления: 2015-07-19; просмотров: 99 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Жұмысты орындау тәртібі | | | Жұмысты орындау тәртібі |