КАТЕГОРИИ: Архитектура-(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; Просмотров: 516; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |