Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Код програми




ORG 0; початок програми

call zapovnennya; виклик підпрограми заповнення

call DEL1; виклик підпрограми затримки

call nahriv; виклик підпрограми нагріву

call DEL1; виклик підпрограми затримки

call proyavka; виклик підпрограми проявки

call DEL1; виклик підпрограми затримки

call zliv; виклик підпрограми зливу

call DEL1; виклик підпрограми затримки

call zapovnennya; виклик підпрограми заповнення

call DEL1; виклик підпрограми затримки

call ficks; виклик підпрограми фіксації

call DEL1; виклик підпрограми затримки

call zliv; виклик підпрограми зливу

call DEL1; виклик підпрограми затримки

call promuvka; виклик підпрограми промивання

call DEL1; виклик підпрограми затримки

kinec: jmp kinec; зациклення програми

;==================================================

zapovnennya:; підпрограма заповнення

mov A,#000000000; код гасіння ССІ

mov DPTR,#8001h; занесемо в DPTR адресу ССІ

movx @DPTR,A; гасіння ССІ

call DEL5; виклик підпрограми затримки на 5 с

mov A,#00011111b; код свічення всіх діодів в рядку

mov DPTR,#08000h; занесемо в DPTR адресу стовбців ЗСІ

movx @DPTR,A; засвічення всіх діодів одного ряду

mov A,#011111110b; код свічення нижнього рядка ЗСІ

mov DPTR,#08002h; занесемо в DPTR адресу свічення стовбців

movx @DPTR,A; засвічення першого діоду

call DEL5; виклик підпрограми затримки на 5 с

mov A,#00011111b; код свічення всіх діодів в рядку

mov DPTR,#08000h; занесемо в DPTR адресу стовбців ЗСІ

movx @DPTR,A; засвічення всіх діодів одного ряду

mov A,#011111100b; код свічення двох нижніх рядків ЗСІ

mov DPTR,#08002h; занесемо в DPTR адресу свічення стовбців

movx @DPTR,A; засвічення двох рядків ЗСІ

call DEL5; виклик підпрограми затримки на 5 с

mov A,#00011111b; код свічення всіх діодів в рядку

mov DPTR,#08000h; занесемо в DPTR адресу стовбців ЗСІ

movx @DPTR,A; засвічення всіх діодів одного ряду

mov A,#011111000b; код свічення трьох нижніх рядків ЗСІ

mov DPTR,#08002h; занесемо в DPTR адресу свічення стовбців

movx @DPTR,A; засвічення трьох рядків ЗСІ

call DEL5; виклик підпрограми затримки на 5 с

mov A,#00011111b; код свічення всіх діодів в рядку

mov DPTR,#08000h; занесемо в DPTR адресу стовбців ЗСІ

movx @DPTR,A; засвічення всіх діодів одного ряду

mov A,#011110000b; код свічення чотирьох нижніх рядків ЗСІ

mov DPTR,#08002h; занесемо в DPTR адресу свічення стовбців

movx @DPTR,A; засвічення чотирьох рядків ЗСІ

call DEL5; виклик підпрограми затримки на 5 с

mov A,#00011111b; код свічення всіх діодів в рядку

mov DPTR,#08000h; занесемо в DPTR адресу стовбців ЗСІ

movx @DPTR,A; засвічення всіх діодів одного ряду

mov A,#011100000b; код свічення п’яти нижніх рядків ЗСІ

mov DPTR,#08002h; занесемо в DPTR адресу свічення стовбців

movx @DPTR,A; засвічення п’яти рядків ЗСІ

call DEL5; виклик підпрограми затримки на 5 с

ret; вихід з підпрограми

;==================================================

nahriv:; підпрограма нагріву

;>>>>>>>>>>>>>>>>>>> температура 21

mov DPTR,#8002h; занесемо в DPTR адресу вибору розряду

mov A,#0010b; код розряду десятків на СДІ

movx @DPTR, A; вибір розряду десятків на СДІ

mov A, #01011011b; код числа 2

mov DPTR, #8001h; занесемо в DPTR адресу СДІ

movx @DPTR, A; вивід числа десятків 2

mov DPTR,#8002h; занесемо в DPTR адресу вибору розряду

mov A,#0011b; код розряду одиниць на СДІ

movx @DPTR, A; вибір розряду одиниць на СДІ

mov A,#00000110b; код числа 1

mov DPTR,#8001h; занесемо в DPTR адресу СДІ

movx @DPTR,A; вивід числа одиниць 1

call DEL2; виклик підпрограми затримки на 2 с

;>>>>>>>>>>>>>>>>>>> температура 23

mov DPTR,#8002h; занесемо в DPTR адресу вибору розряду

mov A,#0010b; код розряду десятків на СДІ

movx @DPTR, A; вибір розряду десятків на СДІ

mov A, #01011011b; код числа 2

mov DPTR, #8001h; занесемо в DPTR адресу СДІ

movx @DPTR, A; вивід числа десятків 2

mov DPTR,#8002h; занесемо в DPTR адресу вибору розряду

mov A,#0011b; код розряду одиниць на СДІ

movx @DPTR, A; вибір розряду одиниць на СДІ

mov A,#01001111b; код числа 3

mov DPTR,#8001h; занесемо в DPTR адресу СДІ

movx @DPTR,A; вивід числа одиниць 3

call DEL2; підпрограма затримки на 2 с

;>>>>>>>>>>>>>>>>>>> температура 25

mov DPTR,#8002h; занесемо в DPTR адресу вибору розряду

mov A,#0010b; код розряду десятків на СДІ

movx @DPTR, A; вибір розряду десятків на СДІ

mov A, #01011011b; код числа 2

mov DPTR, #8001h; занесемо в DPTR адресу СДІ

movx @DPTR, A; вивід числа десятків 2

mov DPTR,#8002h; занесемо в DPTR адресу вибору розряду

mov A,#0011b; код розряду одиниць на СДІ

movx @DPTR, A; вибір розряду одиниць на СДІ

mov A,#01101101b; код числа 5

mov DPTR,#8001h; занесемо в DPTR адресу СДІ

movx @DPTR,A; вивід числа одиниць 5

call DEL2; підпрограма затримки на 2 с

;>>>>>>>>>>>>>>>>>>> температура 27

mov DPTR,#8002h; занесемо в DPTR адресу вибору розряду

mov A,#0010b; код розряду десятків на СДІ

movx @DPTR, A; вибір розряду десятків на СДІ

mov A, #01011011b; код числа 2

mov DPTR, #8001h; занесемо в DPTR адресу СДІ

movx @DPTR, A; вивід числа десятків 2

mov DPTR,#8002h; занесемо в DPTR адресу вибору розряду

mov A,#0011b; код розряду одиниць на СДІ

movx @DPTR, A; вибір розряду одиниць на СДІ

mov A,#00000111b; код числа 7

mov DPTR,#8001h; занесемо в DPTR адресу СДІ

movx @DPTR,A; вивід числа одиниць 5

call DEL2; підпрограма затримки на 2 с

;>>>>>>>>>>>>>>>>>>> температура 29

mov DPTR,#8002h; занесемо в DPTR адресу вибору розряду

mov A,#0010b; код розряду десятків на СДІ

movx @DPTR, A; вибір розряду десятків на СДІ

mov A, #01011011b; код числа 2

mov DPTR, #8001h; занесемо в DPTR адресу СДІ

movx @DPTR, A; вивід числа десятків 2

mov DPTR,#8002h; занесемо в DPTR адресу вибору розряду

mov A,#0011b; код розряду одиниць на СДІ

movx @DPTR, A; вибір розряду одиниць на СДІ

mov A,#01101111b; код числа 9

mov DPTR,#8001h; занесемо в DPTR адресу СДІ

movx @DPTR,A; вивід числа одиниць 9

call DEL2; підпрограма затримки на 2 с

;>>>>>>>>>>>>>>>>>>> температура 31

mov DPTR,#8002h; занесемо в DPTR адресу вибору розряду

mov A,#0010b; код розряду десятків на СДІ

movx @DPTR, A; вибір розряду десятків на СДІ

mov A, #01001111b; код числа 3

mov DPTR, #8001h; занесемо в DPTR адресу СДІ

movx @DPTR, A; вивід числа десятків 3

mov DPTR,#8002h; занесемо в DPTR адресу вибору розряду

mov A,#0011b; код розряду одиниць на СДІ

movx @DPTR, A; вибір розряду одиниць на СДІ

mov A,#00000110b; код числа 1

mov DPTR,#8001h; занесемо в DPTR адресу СДІ

movx @DPTR,A; вивід числа одиниць 1

call DEL2; підпрограма затримки на 2 с

;>>>>>>>>>>>>>>>>>>> температура 33

mov DPTR,#8002h; занесемо в DPTR адресу вибору розряду

mov A,#0010b; код розряду десятків на СДІ

movx @DPTR, A; вибір розряду десятків на СДІ

mov A, #01001111b; код числа 3

mov DPTR, #8001h; занесемо в DPTR адресу СДІ

movx @DPTR, A; вивід числа десятків 3

mov DPTR,#8002h; занесемо в DPTR адресу вибору розряду

mov A,#0011b; код розряду одиниць на СДІ

movx @DPTR, A; вибір розряду одиниць на СДІ

mov A,#01001111b; код числа 3

mov DPTR,#8001h; занесемо в DPTR адресу СДІ

movx @DPTR,A; вивід числа одиниць 3

call DEL2; підпрограма затримки на 2 с

;>>>>>>>>>>>>>>>>>>> температура 35

mov DPTR,#8002h; занесемо в DPTR адресу вибору розряду

mov A,#0010b; код розряду десятків на СДІ

movx @DPTR, A; вибір розряду десятків на СДІ

mov A, #01001111b; код числа 3

mov DPTR, #8001h; занесемо в DPTR адресу СДІ

movx @DPTR, A; вивід числа десятків 3

mov DPTR,#8002h; занесемо в DPTR адресу вибору розряду

mov A,#0011b; код розряду одиниць на СДІ

movx @DPTR, A; вибір розряду одиниць на СДІ

mov A,#01101101b; код числа 5

mov DPTR,#8001h; занесемо в DPTR адресу СДІ

movx @DPTR,A; вивід числа одиниць 5

call DEL2; підпрограма затримки на 2 с

ret; вихід з підпрограми

;==================================================== mov A,#00011111b; код свічення всіх діодів в рядку

mov DPTR,#08000h; занесемо в DPTR адресу стовбців ЗСІ

movx @DPTR,A; засвічення всіх діодів одного ряду

mov A,#011111000b; код свічення трьох нижніх рядків ЗСІ

mov DPTR,#08002h; занесемо в DPTR адресу свічення стовбців

movx @DPTR,A; засвічення трьох рядків ЗСІ

proyavka:; підпрограма проявки

ficks:; підпрограма фіксації

mov R7,00001111b; занесемо в регістр R7 число 00001111b

blum:; мітка блим

mov A,#00011111b; код свічення всіх діодів в рядку

mov DPTR,#08000h; занесемо в DPTR адресу стовбців ЗСІ

movx @DPTR,A; засвічення всіх діодів одного ряду

mov A,#011100000b; код свічення пяти нижніх рядків ЗСІ

mov DPTR,#08002h; занесемо в DPTR адресу свічення стовбців

movx @DPTR,A; засвічення трьох рядків ЗСІ

call DEL1; виклик підпрограми затримки на 1 с

mov A,#00011111b; код свічення всіх діодів в рядку

mov DPTR,#08000h; занесемо в DPTR адресу стовбців ЗСІ

movx @DPTR,A; засвічення всіх діодів одного ряду

mov A,#011111111b; код свічення ні одного з рядків ЗСІ

mov DPTR,#08002h; занесемо в DPTR адресу свічення стовбців

movx @DPTR,A; засвічення жодного з рядків ЗСІ

djnz R7, blum; декремент R7 ы перехід в мітку blum якщо не рівне 0

ret; вихід з підпрограми

ret; вихід з підпрограми

;===================================================

zliv:; підпрограма зливу

mov A,#00011111b; код свічення всіх діодів в рядку

mov DPTR,#08000h; занесемо в DPTR адресу стовбців ЗСІ

movx @DPTR,A; засвічення всіх діодів одного ряду

mov A,#011100000b; код свічення п’яти нижніх рядків ЗСІ

mov DPTR,#08002h; занесемо в DPTR адресу свічення стовбців

movx @DPTR,A; засвічення п’яти рядків ЗСІ

call DEL2; виклик підпрограми затримки на 2 с

mov A,#00011111b; код свічення всіх діодів в рядку

mov DPTR,#08000h; занесемо в DPTR адресу стовбців ЗСІ

movx @DPTR,A; засвічення всіх діодів одного ряду

mov A,#011110000b; код свічення чотирьох нижніх рядків ЗСІ

mov DPTR,#08002h; занесемо в DPTR адресу свічення стовбців

movx @DPTR,A; засвічення чотирьох рядків ЗСІ

call DEL2; виклик підпрограми затримки на 2 с

mov A,#00011111b; код свічення всіх діодів в рядку

mov DPTR,#08000h; занесемо в DPTR адресу стовбців ЗСІ

movx @DPTR,A; засвічення всіх діодів одного ряду

mov A,#011111000b; код свічення трьох нижніх рядків ЗСІ

mov DPTR,#08002h; занесемо в DPTR адресу свічення стовбців

movx @DPTR,A; засвічення трьох рядків ЗСІ

call DEL2; виклик підпрограми затримки на 2 с

mov A,#00011111b; код свічення всіх діодів в рядку

mov DPTR,#08000h; занесемо в DPTR адресу стовбців ЗСІ

movx @DPTR,A; засвічення всіх діодів одного ряду

mov A,#011111100b; код свічення двох нижніх рядків ЗСІ

mov DPTR,#08002h; занесемо в DPTR адресу свічення стовбців

movx @DPTR,A; засвічення двох рядків ЗСІ

call DEL2; виклик підпрограми затримки на 2 с

mov A,#00011111b; код свічення всіх діодів в рядку

mov DPTR,#08000h; занесемо в DPTR адресу стовбців ЗСІ

movx @DPTR,A; засвічення всіх діодів одного ряду

mov A,#011111110b; код свічення одного нижнього рядка ЗСІ

mov DPTR,#08002h; занесемо в DPTR адресу свічення стовбців

movx @DPTR,A; засвічення одного рядка ЗСІ

call DEL2; виклик підпрограми затримки на 2 с

mov A,#00011111b; код свічення всіх діодів в рядку

mov DPTR,#08000h; занесемо в DPTR адресу стовбців ЗСІ

movx @DPTR,A; засвічення всіх діодів одного ряду

mov A,#011111111b; код свічення жодного з рядків ЗСІ

mov DPTR,#08002h; занесемо в DPTR адресу свічення стовбців

movx @DPTR,A; засвічення жодного з рядків ЗСІ

call DEL2; виклик підпрограми затримки на 2 с

ret; вихід з підпрограми

;==================================================

promuvka:; підпрограма промивки

call zapovnennya; виклик підпрограми заповнення

call zliv; виклик підпрограми зливу

call zapovnennya; виклик підпрограми заповнення

call zliv; виклик підпрограми зливу

ret; вихід з підпрограми

;==================================================

DEL1:; підпрограма затримки на 1 с

mov R1, #001h; занесемо в R1 число 1

C1: mov R2, #0FFh; занесемо в R2 число FF

C2: mov R3, #0FFh; занесемо в R3 число FF

C4: djnz R3, C4; декремент R3 і перехід в С4 якщо не рівне 0

djnz R2, C2; декремент R2 і перехід в С2 якщо не рівне 0

djnz R1, C1; декремент R1 і перехід в С1 якщо не рівне 0

ret;вихід з підпрограми

;==================================================

DEL2:; підпрограма затримки на 2 с

call DEL1; виклик підпрограми затримки на 1 с

call DEL1; виклик підпрограми затримки на 1 с

ret; вихід з підпрорами

;==================================================

DEL5:; підпрограма затримки на 5 с

mov A, #0CFh; занесемо число СFh в акумулятор

DEC_ACC:; мітка

dec A;деремент числа записаного в А - CFh

cjne A, #00h, DEC_ACC;; порівняння А з 0 і перехід в мітку DEC_ACC, якщо не рівне

ret; вихід з підпрограми

END; кінець програми





Поделиться с друзьями:


Дата добавления: 2015-08-31; Просмотров: 499; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.092 сек.