CLRFDST2;ÄÅÑßÒÛÅ 2.
CLRFEDI1;ÅÄÈÍÈÖÛ 1.
CLRFDES1;ÄÅÑßÒÊÈ 1.
CLRFDST1;ÄÅÑßÒÛÅ 1.
CLRFMECDI;ÄÅÑßÒÊÈ ÌÅÑßÖÀ ÈÍÄÈÊÀÖÈÈ.
CLRFDHUDI;ÄÅÑßÒÊÈ ÄÍÅÉ ÈÍÄÈÊÀÖÈÈ.
CLRFMECD;ÄÅÑßÒÊÈ ÌÅÑßÖÀ.
CLRFDHUD;ÄÅÑßÒÊÈ ÄÍÅÉ.
MOVLW.253;-
MOVWFSOT1;ÇÍÀÊ 1.
MOVWFSOT2;ÇÍÀÊ 2.
MOVWFSOT2X;ÇÍÀÊ 2 MAX.
MOVWFSOT1X;ÇÍÀÊ 1 MAX.
MOVLW.251;+
MOVWFSOT1N;ÇÍÀÊ 1 MIN.
MOVWFSOT2N;ÇÍÀÊ 2 MIN.
MOVLW.1
MOVWFDHU;ÄÍÈ ÄÂÎÈ×ÍÛÅ.
MOVWFDHUE;ÅÄÈÍÈÖÛ ÄÍÅÉ.
MOVWFMEC;ÌÅÑßÖ ÄÂÎÈ×ÍÛÉ.
MOVWFMECE;ÅÄÈÍÈÖÛ ÌÅÑßÖÀ.
MOVWFMECEI;ÅÄÈÍÈÖÛ ÌÅÑßÖÀ ÈÍÄÈÊÀÖÈÈ.
MOVWFMECZ;ÄÂÎÈ×ÍÛÉ ÌÅÑßÖ ÇÀÏÈÑÈ/Ñ×ÈÒÛÂÀÍÈß.
MOVWFDHUEI;ÅÄÈÍÈÖÛ ÄÍÅÉ ÈÍÄÈÊÀÖÈÈ.
MOVWFDHUZ;ÄÂÎÈ×ÍÛÅ ÄÍÈ ÇÀÏÈÑÈ/Ñ×ÈÒÛÂÀÍÈß.
CALLPOLNO;ÓÑÒÀÍÎÂÊÀ ÌÀÊÑÈÌÀËÜÍÛÕ ÇÍÀ×ÅÍÈÉ.
GOTOJEKINI;ÍÀ ÈÍÈÖÈÀËÈÇÀÖÈÞ ÈÍÄÈÊÀÒÎÐÀ.
;=======================================
; 29. ÓÑÒÀÍÎÂÊÀ ×ÀÑÎÂ, ÄÀÒÛ.
YC0
INCFHOUH,1;ÓÂÅËÈ×ÈÌ ÄÅÑßÒÊÈ ×ÀÑÎÂ.
MOVLW.3;ÍÅ ÁÎËÅÅ 2.
SUBWFHOUH,0;
SKPNC;
CLRFHOUH;ÅÑËÈ ÁÎËÜØÅ, ÒÎ ÎÁÍÓËÈÌ.
MOVFWHOUH;ÏÅÐÅÊÎÄÈÐÓÅÌ Â ÄÂÎÈ×ÍÛÉ
CALLDEBIN;ÊÎÄ ÄÅÑßÒÊÈ.
ADDWFHOUL,0;ÏÐÈÁÀÂÈÌ ÅÄÈÍÈÖÛ
MOVWFHOU;È ÏÎËÓ×ÈÌ ÄÂÎÈ×ÍÎÅ ×ÈÑËÎ.
RETURN;ÂÅÐÍÅÌÑß.
YC1
INCFHOUL,1;ÓÂÅËÈ×ÈÌ ÅÄÈÍÈÖÛ ×ÀÑÎÂ.
MOVLW.10;ÍÅ ÁÎËÅÅ 9.
SUBWFHOUL,0;
CLRFHOUL;ÅÑËÈ ÁÎËÜØÅ, ÒÎ ÎÁÍÓËÈÌ.
MOVWFHOU;ÄÂÎÈ×ÍÎÅ ÇÍÀ×ÅÍÈÅ ÍÅ ÄÎËÆÍÎ
ADDLW-18H;ÏÐÅÂÛØÀÒÜ - 24.
SKPC;ÅÑËÈ ÁÎËÜØÅ ÈËÈ ÐÀÂÍÎ 24,
RETURN
CLRFHOU;ÒÎ ÎÁÍÓËÈÌ ×ÀÑÛ ÄÂÎÈ×ÍÛÅ
CLRFHOUL;È ÐÀÇÐßÄÛ ÑÒÀÐØÈÉ
CLRFHOUH;È ÌËÀÄØÈÉ.
YC2
INCFMINH,1;ÓÂÅËÈ×ÈÌ ÄÅÑßÒÊÈ ÌÈÍÓÒ.
MOVLW.6;ÍÅ ÁÎËÅÅ 5.
SUBWFMINH,0;
SKPNC;ÅÑËÈ ÁÎËÜØÅ ÈËÈ ÐÀÂÍÎ 6,
CLRFMINH;ÒÎ ÎÁÍÓËÈÌ.
MOVFWMINH;ÏÅÐÅÊÎÄÈÐÓÅÌ Â ÄÂÎÈ×ÍÛÉ
ADDWFMINL,0;ÏÐÈÁÀÂÈÌ ÅÄÈÍÈÖÛ È
MOVWFMIN;ÇÀÏÈØÅÌ Â ÄÂÎÈ×ÍÎÌ ÊÎÄÅ.
YC3
INCFMINL,1;ÓÂÅËÈ×ÈÌ ÅÄÈÍÈÖÛ ÌÈÍÓÒ.
SUBWFMINL,0;
SKPNC;ÅÑËÈ ÁÎËÜØÅ ÈËÈ ÐÀÂÍÎ 10,
CLRFMINL;ÒÎ ÎÁÍÓËÈÌ.
YC4
INCFDHUD,1;ÓÂÅËÈ×ÈÌ ÄÅÑßÒÊÈ ÒÅÊÓÙÈÕ ÄÍÅÉ.
MOVLW.4;ÍÅ ÁÎËÅÅ 3.
SUBWFDHUD,0;
CLRFDHUD;ÅÑËÈ ÁÎËÜØÅ, ÒÎ ÎÁÍÓËÈÌ.
MOVFWDHUD;ÏÅÐÅÊÎÄÈÐÓÅÌ Â ÄÂÎÈ×ÍÛÉ
ADDWFDHUE,0;ÏÐÈÁÀÂÈÌ ÅÄÈÍÈÖÛ
MOVWFDHU;È ÏÎËÓ×ÈÌ ÄÂÎÈ×ÍÎÅ ×ÈÑËÎ.
MOVFWMEC;ÅÑËÈ Â ÒÅÊÓÙÅÌ ÌÅÑßÖÅ
CALLDAYMON;ÌÅÍÜØÅ ÄÍÅÉ,
SUBWFDHU,0;
SKPC;
GOTO$+4;
MOVLW.1;
MOVWFDHUE;ÒÎ ÓÑÒÀÍÎÂÈÌ ÅÄÈÍÈÖÛ
GOTO$-0x0B;È ÅÙÅ ÐÀÇ ÏÐÎÂÅÐÈÌ ÑÓÌÌÓ.
TSTFDHU;ÅÑËÈ ÑÓÌÌÀ ÄÍÅÉ ÍÓËÅÂÀß,
BZ$-5;ÒÎ ÑÍÎÂÀ ÓÑÒÀÍÎÂÈÌ.
MOVFWDHUD;ÏÅÐÅÏÈØÅÌ Â ÐÅÃÈÑÒÐÛ
MOVWFDHUDI;ÈÍÄÈÊÀÖÈÈ.
MOVFWDHUE;
MOVWFDHUEI;
YC5
INCFDHUE,1;ÓÂÅËÈ×ÈÌ ÅÄÈÍÈÖÛ ÄÍÅÉ.
SUBWFDHUE,0;
CLRFDHUE;ÅÑËÈ ÁÎËÜØÅ, ÒÎ ÎÁÍÓËÈÌ.
GOTO$+5;
CLRFDHUD;ÒÎ ÎÁÍÓËÈÌ ÄÅÑßÒÊÈ ÄÍÅÉ,
MOVLW.1;ÓÑÒÀÍÎÂÈÌ ÅÄÈÍÈÖÛ
MOVWFDHUE;ÄÍÅÉ
GOTO$-0x0C;È ÅÙÅ ÐÀÇ ÏÐÎÂÅÐÈÌ ÑÓÌÌÓ.
BZ$-5;À ÍÓËÅÂÎÃÎ ÄÍß ÍÅÒ, ÒÎ ÑÍÎÂÀ ÓÑÒÀÍÎÂÈÌ.
YC6
INCFMECD,1;ÓÂÅËÈ×ÈÌ ÄÅÑßÒÊÈ ÌÅÑßÖÀ.
MOVLW.2;ÍÅ ÁÎËÅÅ 1.
SUBWFMECD,0;
CLRFMECD;ÅÑËÈ ÁÎËÜØÅ, ÒÎ ÎÁÍÓËÈÌ.
MOVFWMECD;ÏÅÐÅÊÎÄÈÐÓÅÌ Â ÄÂÎÈ×ÍÛÉ
ADDWFMECE,0;ÏÐÈÁÀÂÈÌ ÅÄÈÍÈÖÛ
MOVWFMEC;È ÏÎËÓ×ÈÌ ÄÂÎÈ×ÍÎÅ ×ÈÑËÎ.
MOVLW.13;ÍÅ ÁÎËÅÅ 12.
SUBWFMEC,0;
MOVLW.1;ÓÑÒÀÍÎÂÈÌ ÏÅÐÂÛÉ ÌÅÑßÖ.
MOVWFMECE;
GOTO$-0x0C;
TSTFMEC;ÅÑËÈ ÌÅÑßÖ ÍÓËÅÂÎÉ,
BZ$-5;ÒÎ ÓÑÒÀÍÎÂÈÌ.
MOVFWMECD;ÏÅÐÅÏÈØÅÌ Â ÐÅÃÈÑÒÐÛ
MOVWFMECDI;ÈÍÄÈÊÀÖÈÈ.
MOVFWMECE;
MOVWFMECEI;
YC7
INCFMECE,1;ÓÂÅËÈ×ÈÌ ÅÄÈÍÈÖÛ ÌÅÑßÖÀ.
SUBWFMECE,0;
CLRFMECE;ÅÑËÈ ÁÎËÜØÅ, ÒÎ ÎÁÍÓËÈÌ.
YC8M
DECFDHUEI,1;ÓÌÅÍÜØÈÌ ÅÄÈÍÈÖÛ ÄÍÅÉ ÏÐÎÑÌÎÒÐÀ.
MOVLW.255;ÅÑËÈ ÏÅÐÅÕÎÄ ×ÅÐÅÇ 0,
SUBWFDHUEI,0;
BNC$+8;
MOVLW.9;ÒÎ ÓÑÒÀÍÎÂÈÌ 9.
DECFDHUDI,1;ÓÌÅÍÜØÈÌ ÄÅÑßÒÊÈ ÄÍÅÉ
MOVLW.255;ÅÑËÈ ÍÅÒ ÏÅÐÅÕÎÄÀ ×ÅÐÅÇ 0,
SUBWFDHUDI,0;
GOTOYC8COY;ÒÎ ÓÑÒÀÍÎÂÈÌ Ñ×ÅÒ×ÈÊ ÄÍÅÉ.
MOVFWDHUEI;ÅÑËÈ ÑÓÌÌÀ ÄÍÅÉ
ADDWFDHUDI,0;ÍÅ ÐÀÂÍÀ ÍÓËÞ,
SKPZ
DECFMECZ,1;ÈÍÀ×Å ÓÌÅÍÜØÈÌ ÌÅÑßÖ.
SKPZ;ÅÑËÈ ÌÅÑßÖ ÍÓËÅÂÎÉ,
GOTO$+3;
MOVLW.12;ÒÎ ÓÑÒÀÍÎÂÈÌ ÄÅÊÀÁÐÜ.
MOVWFMECZ;
MOVFWMECZ;ÏÐÎÂÅÐÈÌ ×ÈÑËÎ ÄÍÅÉ Â ÌÅÑßÖÅ.
CALLDAYMON;
MOVWFDHUDI;ÏÅÐÅÊÎÄÈÐÓÅÌ ÄÍÈ.
MOVWFTEMP;ÈÇ 2-ÃÎ Â 2_10-Å.
CALLBIDE;ÒÎËÜÊÎ ÄÎ 99!
MOVWFDHUDI;
MOVFWTEMP;
MOVFWMECZ;ÏÅÐÅÊÎÄÈÐÓÅÌ ÌÅÑßÖ.
MOVWFMECDI;
MOVWFMECEI;ÄÍÅÉ Â ÒÀÁËÈÖÅ ÌÅÑßÖÀ ÍÀ 1 ÁÎËÜØÅ,
GOTOYC8M;ÏÎÝÒÎÌÓ ÏÎÂÒÎÐÈÌ.
YC8COY
INCFCOYC,1;ÓÌÅÍÜØÈÌ Ñ×ÅÒ×ÈÊ ÄÍÅÉ.
MOVLW.8;ÍÅ ÁÎËÅÅ 7.
SUBWFCOYC,0;
GOTOYC8COU;ÍÀ ÓÑÒÀÍÎÂÊÓ Ñ×ÅÒ×ÈÊÀ Ñ×ÈÒÛÂÀÍÈß.
CLRFCOYC;ÎÁÍÓËÈÌ Ñ×ÅÒ×ÈÊ.
CALLREGIN;ÇÀÃÐÓÇÈÌ ÒÅÊÓÙÈÉ ÄÅÍÜ.
BCFFLAG2,6;ÑÁÐÎÑÈÌ ÔËÀà Ñ×ÅÒ×ÈÊÀ ÄÍÅÉ.
GOTOYC8M;ÓÑÒÀÍÎÂÈÌ Â×ÅÐÀØÍÈÉ ÄÅÍÜ.
YC8COU
BSFFLAG2,5;ÓÑÒÀÍÎÂÈÌ ÔËÀÃ ÂÛÏÎËÍÅÍÍÎÉ ÓÑÒÀÍÎÂÊÈ ÌÈÍÓÑ.
BTFSCFLAG2,6;ÅÑËÈ ÔËÀÃ ÍÓËÅÂÎÉ,
GOTO$+0x09;
CLRFCOYC;
MOVLW.16;ÒÎ ÓÑÒÀÍÎÂÈÌ Ñ×ÅÒ×ÈÊ Ñ×ÈÒÛÂÀÍÈß.
SUBWFCOUZ,0;ÀÄÐÅÑ ×ÒÅÍÈß ÐÀÂÅÍ ÀÄÐÅÑÓ ÇÀÏÈÑÈ
MOVWFCOUE;ÌÈÍÓÑ 16.
BNC$+7;ÅÑËÈ ÏÅÐÅÕÎÄ ×ÅÐÅÇ 0, ÒÎ ÓÑÒÀÍÎÂÈÌ .112.
BSFFLAG2,6;ÓÑÒÀÍÎÂÊÀ ÂÛÏÎËÍÅÍÀ.
MOVLW.16;ÑËÅÄÓÞÙÈÉ ÀÄÐÅÑ ×ÒÅÍÈß
SUBWFCOUE,1;ÐÀÂÅÍ ÒÅÊÓÙÅÌÓ ÌÈÍÓÑ 16.
SKPNC;ÅÑËÈ ÏÅÐÅÕÎÄ ×ÅÐÅÇ 0,
MOVLW.112;ÒÎ ÓÑÒÀÍÎÂÈÌ .112.
MOVWFCOUE;
YC00
CLRFMIN;ÎÁÍÓËÅÍÈÅ ÐÅÃÈÑÒÐÎÂ
CLRFMINL;ÌÈÍÓÒ È ÑÅÊÓÍÄ
CLRFMINH;ÏÐÈ ÓÑÒÀÍÎÂÊÅ ÏÎ ÑÈÃÍÀËÀÌ
CLRFCEK;ÒÎ×ÍÎÃÎ ÂÐÅÌÅÍÈ.
;======================================================
; 30. ÂÎÑÑÒÀÍÎÂËÅÍÈÅ ÒÅÊÓÙÈÕ ÐÅÃÈÑÒÐÎÂ ÈÍÄÈÊÀÖÈÈ ÏÎÑËÅ ÏÐÎÑÌÎÒÐÀ.
REGIN
MOVFWMECD;
MOVFWDHUD;
MOVFWMEC;
;=============================================
; 31. ÏÐÅÄÅËÜÍÛÅ ÓÑÒÀÍÎÂÊÈ MAX, MIN  ÏÎËÍÎ×Ü.
POLNO
MOVLW.55;-55.
MOVWFLSB1X;ÑÎÕÐÀÍÅÍÍÎÅ ÌÀÊÑÈÌÀËÜÍÎÅ 1 ÄÀÒ×ÈÊÀ.
MOVWFLSB2X;-"- 2 ÄÀÒ×ÈÊÀ.
CLRFDST1X;ÑÎÕÐÀÍÅÍÍÎÅ ÌÀÊÑÈÌÀËÜÍÎÅ ÄÅÑßÒÛÕ 1 ÄÀÒ×ÈÊÀ.
CLRFDST2X;-"- 2 ÄÀÒ×ÈÊÀ.
MOVLW.99;+99.
MOVWFLSB1N;ÑÎÕÐÀÍÅÍÍÎÅ ÌÈÍÈÌÀËÜÍÎÅ 1 ÄÀÒ×ÈÊÀ.40
MOVWFLSB2N;-"- 2 ÄÀÒ×ÈÊÀ.
MOVLW.9;0,9
MOVWFDST1N;ÑÎÕÐÀÍÅÍÍÎÅ ÌÈÍÈÌÀËÜÍÎÅ ÄÅÑßÒÛÕ 1 ÄÀÒ×ÈÊÀ.
MOVWFDST2N;-"- 2 ÄÀÒ×ÈÊÀ.
;=========================================
; 32. ÈÍÈÖÈÀËÈÇÀÖÈß ÆÊÈ.
JEKINI
MOVLW03;
CALLJEKOM;
CALLSTROB;
MOVLW10;ÂÛÊËÞ×ÅÍÈÅ ÄÈÑÏËÅß.
MOVLW06;ÑÌÅÙÅÍÈÅ ÊÓÐÑÎÐÀ.
MOVLW01;ÑÒÈÐÀÍÈÅ ÏÀÌßÒÈ ÄÈÑÏËÅß.
MOVLW28;ÔÎÐÌÀÒ ÎÁÌÅÍÀ: 4 ÐÀÇÐ., 5õ7, 2 ÑÒÐÎÊÈ.
MOVLW0C;ÂÊËÞ×ÅÍÈÅ ÄÈÑÏËÅß, ÇÀÏÐÅÒ ÊÓÐÑÎÐÀ.
GOTOMYLTIK;ÍÀ ÐÀÑÏÐÅÄÅËÈÒÅËÜ.
; 33. ÔÎÐÌÈÐÎÂÀÍÈÅ ÑÒÐÎÁÈÐÓÞÙÅÃÎ ÈÌÏÓËÜÑÀ.
STROB
BSF PORTB,E ;ÂÊËÞ×ÀÅÌ ÑÒÐÎÁ-ÈÌÏÓËÜÑ.
NOP
BCF PORTB,E ;ÂÛÊËÞ×ÀÅÌ ÑÒÐÎÁ.
RETURN ;ÂÅÐÍÅÌÑß.
;===============================================
; 34. ÏÅÐÅÄÀ×À ÊÎÌÀÍÄÛ Â ÆÊÈ.
JEKOM
MOVWF TEMP ;ÏÅÐÅÏÈØÅÌ ÇÍÀ×ÅÍÈÅ ÂÎ ÂÐÅÌÅÍÍÛÉ ÐÅÃÈÑÒÐ.
ANDLW B'11110000';ÇÀÌÀÑÊÈÐÓÅÌ ÌËÀÄØÈÅ ÐÀÇÐßÄÛ ÏÎÄ ÍÎËÜ.
MOVWF PORTB ;ÎÑÒÀËÜÍÛÅ ÐÀÇÐßÄÛ ÏÅÐÅÏÈØÅÌ Â ÏÎÐÒ "Â".
CALL STROB ;ÏÐÎÑÒÐÎÁÈÐÓÅÌ.
CALL PAUSA ;ÏÀÓÇÀ.
MOVFW TEMP
SWAPF TEMP,W ;ÏÎÌÅÍßÅÌ ÌÅÑÒÀÌÈ ÏÎËÓÁÀÉÒÛ.
ANDLW B'11110000';ÇÀÌÀÑÊÈÐÓÅÌ ÑÒÀÐØÈÅ ÐÀÇÐßÄÛ ÏÎÄ ÍÎËÜ.
MOVWF PORTB ;ÏÅÐÅÏÈØÅÌ Â ÏÎÐÒ "Â".
PAUSA
MOVLW .255;1 ÌÑ. ÏÀÓÇÀ ÄËß ÇÀÏÈÑÈ ÊÎÌÀÍÄÛ.
ADDLW -1
BTFSS STATUS,2
GOTO $-2
;=====================================
; 35. ÇÀÏÈÑÜ ÄÀÍÍÛÕ Â ÆÊÈ.
JEDAT
MOVWF TEMP;ÏÅÐÅÏÈØÅÌ ÇÍÀ×ÅÍÈÅ ÂÎ ÂÐÅÌÅÍÍÛÉ ÐÅÃÈÑÒÐ.
Ñòðàíèöû: 1, 2, 3, 4, 5, 6, 7, 8, 9