- •Сандық техниканы және басқару микробақылауыштарын программалау
- •5В070200-Автоматтандыру және басқару мамандығының студенттері
- •Мазмұны
- •Кіріспе
- •1 Зертханалық жұмыс. Байттық және биттік командалар. Логика
- •1.1 Зертханалық жұмыс тапсырмасы
- •1.2 Жұмысты орындау тәртібі
- •1.3 Жұмыс тақырыбы бойынша қысқаша теориялық ақпарат
- •1.4 Бақылау сұрақтары
- •2 Зертханалық жұмыс. Маскілеу. Массив қосындысын алу
- •2.1 Зертханалық жұмыс тапсырмасы
- •2.1 Сурет– Массивті суммалау және орташаны табу блок-сұлбасы
- •2.2 Жұмысты орындау тәртібі
- •2.3 Жұмыс тақырыбы бойынша қысқаша теориялық ақпарат
- •2.4 Бақылау сұрақтары
- •3 Зертханалық жұмыс. Бояу камерасын автоматтандыру. Ішкі программалар
- •3.1 Зертханалық жұмыс тапсырмасы және берілгендер
- •3.1 Сурет–Құрылғылардыжалғау сұлбасы
- •3.2 Сурет–Бояу камерасының уақыттық диаграммасы
- •3.2 Жұмысты орындау тәртібі
- •3.3 Жұмыс тақырыбы бойынша қысқаша теориялық ақпарат
- •3.3 Сурет– Блок-сұлба
- •3.4 Бақылау сұрақтары
- •4 Зертханалық жұмыс. Көбейту және бөлу
- •4.1 Зертханалық жұмыс тапсырмасы және берілгендер
- •4.2 Жұмысты орындау тәртібі
- •5 Зертханалық жұмыс. Газ шығынын реттеу
- •5.1 Зертханалық жұмыс тапсырмасы және берілгендер
- •5.2 Жұмысты орындау тәртібі
- •5.3 Жұмыс тақырыбы бойынша қысқаша теориялық ақпарат
- •5.4 Бақылау сұрақтары
- •6.3 Жұмысты орындау тәртібі
- •6.3 Жұмыс тақырыбы бойынша қысқаша теориялық ақпарат
- •6.4 Бақылау сұрақтары
- •7 Зертханалық жұмыс. Буып-түю жұмысын автоматтандыру. Дыбыс түзу
- •7.1 Зертханалық жұмыс тапсырмасы және берілгендер
- •7.2 Жұмысты орындау тәртібі
- •7. 3 Жұмыс тақырыбы бойынша қысқаша теориялық ақпарат
- •7.2 Сурет– Буып-түйгіш жұмысының уақыттық диаграммасы
- •7.4 Бақылау сұрақтары
- •8 Зертханалық жұмыс. Сандарды 2-санақ жүйесінен 2_10 санақ жүйесіне ауыстыру
- •8.1 Зертханалық жұмыс тапсырмасы және берілгендер
- •8.2 Жұмысты орындау тәртібі
- •8.3 Жұмыс тақырыбы бойынша қысқаша теориялық ақпарат
- •8.2 Сурет– Блок-сұлба
- •8.3 Сурет – Жеті сегментті индикатор
- •8.4 Бақылау сұрақтары
- •9 Зертханалық жұмыс. Таймер tmr1
- •9.1 Зертханалық жұмыс тапсырмасы және берілгендер
- •9.2 Жұмысты орындау тәртібі
- •9.3 Жұмыс тақырыбы бойынша қысқаша теориялық ақпарат
- •9.4 Бақылау сұрақтары
- •10 Зертханалық жұмыс. Үзулер
- •10.1 Зертханалық жұмыс тапсырмасы және берілгендер
- •10.3 Жұмысты орындау тәртібі
- •10.3 Жұмыс тақырыбы бойынша қысқаша теориялық ақпарат
- •10.4 Бақылау сұрақтары
- •11 Зертханалық жұмыс. Екі байттық сандарды қосу
- •11.1 Зертханалық жұмыс тапсырмасы және берілгендер
- •11.3 Жұмысты орындау тәртібі
- •11.1 Жұмыс тақырыбы бойынша қысқаша теориялық ақпарат
- •11.4 Бақылау сұрақтары
- •А қосымшасы Status регистрі
- •Б қосымшасы pic* мб нұсқауларының сипаттамасы
- •В қосымшасы Модуль tmr1 таймері
- •Г қосымшасы pic16877 микропроцессорының жады картасы
- •Д қосымшасы умк-7 сипаттамасы
- •Әдебиеттер тізімі
- •5В070200- Автоматтандыру және басқару мамандығының студенттері үшін зертханалық жұмыстарды орындауға арналған әдістемелік нұсқау
- •050013, Алматы, Байтұрсынұлы көшесі, 126
- •Сандық техниканы және микробақылауыштарды программалау
- •5В070200- Автоматтандыру және басқару мамандығының студенттері үшін зертханалық жұмыстарды орындауға арналған әдістемелік нұсқау
2.4 Бақылау сұрақтары
Есептеу операцияларынан кейін Statusрегистрінің қай биттері өзгереді?
BTFSSSTATUS,Z шартты өту көмандасының қызметін түсіндіріңіз.
Сандардың теңдігін қалай тексеруге болады?
Адрестеудің қандай әдістерін білесіздер?
Массивтен шығу қалай бақыланады?
FSR, INDF регистрлерінің қызметі.
SUMрегистрі қосынды алу алдында неге тазартылады?
Status регистірінің C битінің жылжыту операциясына қатысы қандай?
Регистрдің тақ разрядтарын қалай тазартуға болады?
Регистрдің разрядтарына қалай 1 орнатуға болады?
XOR (ИсключительноеИЛИ) қай кезде қолданылады?
AND,OR,XOR үшін шындық кестесін келтріңіздер.
Wаккумулятордыңадресі қандай?
3 Зертханалық жұмыс. Бояу камерасын автоматтандыру. Ішкі программалар
Жұмыс мақсаты: уақыттық тежеу ішкі программаларын қолданып бояу камерасын автоматтандырупроцесінің программасын құру,уақыттық тежеуді есептеу.
3.1 Зертханалық жұмыс тапсырмасы және берілгендер
Тапсырма. Бояу камерасын автоматтандыру процесінің программасын құруда келесі жұмыстар орындалсын:
- қорек көзін қосқанда оператор пультіндегі L2 жарықтық және S1 дыбыстық сигнализацияны қосу;
- 2 секундтан кейін сиренаны өшіріп бояубүріккіштің D1 қозғалтқышын, вентилятор қозғалтқышын D2 және боялғаны жайлы сигнал беретін L1 лампасын қосу керек;
- үш секундтан кейінбояубүріккіштің қозғағалтқышынD1 өшіру;
- енді 2 секундтан кейінD2 вентиляторынжәне L1 лампасын өшіру;
- камерадағы затты ауыстыру үшін1 секундқа паузажасау;
- сирена қосылғаннан бастап жаңа затты бояуды қайта бастау.
3.1 суретте құрылғылардың PORTC регистрінің биттеріне жалғану сұлбасы келтірілген.
3.1 Сурет–Құрылғылардыжалғау сұлбасы
3.2 Сурет–Бояу камерасының уақыттық диаграммасы
Л3 программасы:
include<p16F877.inc> ; РСН символдық аттары сипатталған файл.
; Жалпы қызмет регистрлерінің символдық аттарының сипаттамасы
Sch_in EQU H'22' ; тежеудің ішкі циклының санағышы.
Sch_out EQU H'24' ; тежеудің сыртқы циклының санағышы.
Sch3 EQU H'23' ; тежеудің үшінші циклының санағышы.
МБ стандартты нұсқаулары көрсетілмеген.
; Программаның жұмысшы бөлігі
MOVLW B'10000000'
MOVWF PORTC ; оператор пультіндегі L2 сигнализациясын қосу.
Sled_det BSF PORTC, 0 ; S1 дыбыстық сигнализацияны қосу.
MOVLW d’40’ ; W-ға таймера уақытын береміз. Қадамдық режим
; үшін d’2’ алу керек.
CALL Timer
MOVLW B’10001110’
MOVWF PORTC ; S1 өшіріп, D1, D2 және L1 қосу.
MOVLW d’60’ ; бояу уақытын береміз.
CALL Timer
BCF PORTC, 2 ; D1 өшіреміз, D2, L1 және L2 жұмыс істей береді.
MOVLW d’40’ ; D2 және L1 жұмыс уақытын береміз.
CALL Timer
MOVLW B'10000000'
MOVWF PORTC ;бояу аяқталды, L2 сигнализациясы жұмыс істеуде.
MOVLW d’20’ ; затты ауыстыру уақытын береміз.
CALL Timer
GOTO Sled_det ; жұмысты қайталау үшін Sled_det белгісіне ауысу.
; Ішкі программа
Timer ; Timer ішкі программасы. Екі ішкі цикл қолданылды.
MOVWF Sch3 ; W мәні ішкі программа үшін аргумент.
M3 MOVLW D'150'
MOVWF Sch_out ; сыртқы санағыштың мәнін орнатамыз.
M_out ; сыртқы санағыштың белгісі.
MOVLW D’255';
MOVWF Sch_in ; ішкі санағыштың мәнін орнатамыз.
M_in ; ішкі санағыштың белгісі.
DECF Sch_in, F ; Sch_in санағыштың мәнін 1-ге кемітеміз.
BTFSS STATUS, Z ;егер Sch_in=0 болса (Z=1), GOTO-ды аттап кетеміз.
GOTO M_in ; Z=0 болғанда ғана орындалады.
DECF Sch_out, F ; Sch_out санағыштың мәнін 1-ге кемітеміз.
BTFSS STATUS, Z ;егер Sch_out=0 болса (Z=1), GOTO-ы аттап кетеміз
GOTO M_out ; Z=0 болғанда ғана орындалады.
DECF Sch3, F ; Sch3 санағыштың мәнін 1-ге кемітеміз,
BTFSS STATUS, Z ; егер Sch3=0 болса (Z=1), GOTO-ды аттап кетеміз.
GOTO M3 ; Z=0 болғанда ғана орындалады.
RETURN ; Timer ішкі программасының соңы.
END
Құрылғыларды нұсқаға сәйкесуақытқа өшіріп, қосатын программа құрыңыз. Жоғарыда жызылған программаны өзгертіңіз.
3.1 кесте–Тапсырма нұсқалары
Нұсқа |
S1, D1, D2 L1, L2 қосылу биттері |
Жұмыс істеу уақыты, сек |
Нұсқа |
S1, D1, D2 L1, L2 қосылу биттері |
Жұмыс істеу уақыты, сек | ||||
S1 |
D1 |
D2 |
S1 |
D1 |
D2 | ||||
1 |
1, 2, 3, 4, 5 |
5 |
6 |
3 |
6 |
6, 7, 0, 1, 2 |
6 |
6 |
4 |
2 |
2, 3, 4, 5, 6 |
6 |
7 |
4 |
7 |
7, 0, 1, 2, 3 |
7 |
7 |
5 |
3 |
3, 4, 5, 6, 7 |
7 |
6 |
5 |
8 |
0 ,1 ,2 ,3, 4 |
8 |
6 |
6 |
4 |
4, 5, 6, 7, 0 |
8 |
5 |
6 |
9 |
1, 3, 5, 7, 0 |
9 |
5 |
7 |
5 |
5, 6, 7, 0, 1 |
9 |
7 |
7 |
10 |
2, 4, 6, 0, 1 |
10 |
6 |
3 |