| Code: _main:
;ffff.mpas,8 :: begin ;ffff.mpas,9 :: TRISB := 0x00; CLRF TRISB+0 ;ffff.mpas,10 :: TRISD := 0x00; CLRF TRISD+0 ;ffff.mpas,11 :: TRISE0_bit := 1; BSF TRISE0_bit+0, 0 ;ffff.mpas,12 :: jekran:=1; MOVLW 1 MOVWF _jekran+0 ;ffff.mpas,13 :: ch1:=1; MOVLW 1 MOVWF _ch1+0 ;ffff.mpas,14 :: ch2:=2; MOVLW 2 MOVWF _ch2+0 ;ffff.mpas,15 :: min1:=0; CLRF _min1+0 ;ffff.mpas,16 :: min2:=0; CLRF _min2+0 ;ffff.mpas,17 :: While TRUE do L__main2: ;ffff.mpas,19 :: for perisovka:=0 to 125 do CLRF _perisovka+0 L__main7: ;ffff.mpas,21 :: for jekran :=1 to 4 do MOVLW 1 MOVWF _jekran+0 L__main12: ;ffff.mpas,23 :: delay_ms(2); MOVLW 13 MOVWF R12+0 MOVLW 251 MOVWF R13+0 L__main16: DECFSZ R13+0, 1 GOTO L__main16 DECFSZ R12+0, 1 GOTO L__main16 NOP NOP ;ffff.mpas,25 :: 1:begin konstantu:=ch1; PORTb := %00000001; end; MOVF _jekran+0, 0 XORLW 1 BTFSS STATUS+0, 2 GOTO L__main20 MOVF _ch1+0, 0 MOVWF _konstantu+0 MOVLW 1 MOVWF PORTB+0 GOTO L__main17 L__main20: ;ffff.mpas,26 :: 2:begin konstantu:=ch2;PORTb := %00000010; end; MOVF _jekran+0, 0 XORLW 2 BTFSS STATUS+0, 2 GOTO L__main23 MOVF _ch2+0, 0 MOVWF _konstantu+0 MOVLW 2 MOVWF PORTB+0 GOTO L__main17 L__main23: ;ffff.mpas,27 :: 3:begin konstantu:=min1;PORTb := %00000100; end; MOVF _jekran+0, 0 XORLW 3 BTFSS STATUS+0, 2 GOTO L__main26 MOVF _min1+0, 0 MOVWF _konstantu+0 MOVLW 4 MOVWF PORTB+0 GOTO L__main17 L__main26: ;ffff.mpas,28 :: 4:begin konstantu:=min2;PORTb := %00001000; end; MOVF _jekran+0, 0 XORLW 4 BTFSS STATUS+0, 2 GOTO L__main29 MOVF _min2+0, 0 MOVWF _konstantu+0 MOVLW 8 MOVWF PORTB+0 GOTO L__main17 L__main29: L__main17: ;ffff.mpas,31 :: 0:PORTd := %00010000; MOVF _konstantu+0, 0 XORLW 0 BTFSS STATUS+0, 2 GOTO L__main33 MOVLW 16 MOVWF PORTD+0 GOTO L__main30 L__main33: ;ffff.mpas,32 :: 1:PORTd := %01011011; MOVF _konstantu+0, 0 XORLW 1 BTFSS STATUS+0, 2 GOTO L__main36 MOVLW 91 MOVWF PORTD+0 GOTO L__main30 L__main36: ;ffff.mpas,33 :: 2:PORTd := %00000101; MOVF _konstantu+0, 0 XORLW 2 BTFSS STATUS+0, 2 GOTO L__main39 MOVLW 5 MOVWF PORTD+0 GOTO L__main30 L__main39: ;ffff.mpas,34 :: 3:PORTd := %01000001; MOVF _konstantu+0, 0 XORLW 3 BTFSS STATUS+0, 2 GOTO L__main42 MOVLW 65 MOVWF PORTD+0 GOTO L__main30 L__main42: ;ffff.mpas,35 :: 4:PORTd := %01001010; MOVF _konstantu+0, 0 XORLW 4 BTFSS STATUS+0, 2 GOTO L__main45 MOVLW 74 MOVWF PORTD+0 GOTO L__main30 L__main45: ;ffff.mpas,36 :: 5:PORTd := %01100000; MOVF _konstantu+0, 0 XORLW 5 BTFSS STATUS+0, 2 GOTO L__main48 MOVLW 96 MOVWF PORTD+0 GOTO L__main30 L__main48: ;ffff.mpas,37 :: 6:PORTd := %00100000; MOVF _konstantu+0, 0 XORLW 6 BTFSS STATUS+0, 2 GOTO L__main51 MOVLW 32 MOVWF PORTD+0 GOTO L__main30 L__main51: ;ffff.mpas,38 :: 7:PORTd := %01011001; MOVF _konstantu+0, 0 XORLW 7 BTFSS STATUS+0, 2 GOTO L__main54 MOVLW 89 MOVWF PORTD+0 GOTO L__main30 L__main54: ;ffff.mpas,39 :: 8:PORTd := %00000000; MOVF _konstantu+0, 0 XORLW 8 BTFSS STATUS+0, 2 GOTO L__main57 CLRF PORTD+0 GOTO L__main30 L__main57: ;ffff.mpas,40 :: 9:PORTd := %01000000; MOVF _konstantu+0, 0 XORLW 9 BTFSS STATUS+0, 2 GOTO L__main60 MOVLW 64 MOVWF PORTD+0 GOTO L__main30 L__main60: L__main30: ;ffff.mpas,42 :: end; MOVF _jekran+0, 0 XORLW 4 BTFSC STATUS+0, 2 GOTO L__main15 INCF _jekran+0, 1 GOTO L__main12 L__main15: ;ffff.mpas,43 :: end; MOVF _perisovka+0, 0 XORLW 125 BTFSC STATUS+0, 2 GOTO L__main10 INCF _perisovka+0, 1 GOTO L__main7 L__main10: ;ffff.mpas,45 :: min2:=min2+1; INCF _min2+0, 1 ;ffff.mpas,46 :: if Button(PORTE, 0, 5, 0)then begin min2:=ch1+5; end; MOVLW PORTE+0 MOVWF FARG_Button_port+0 CLRF FARG_Button_pin+0 MOVLW 5 MOVWF FARG_Button_time+0 CLRF FARG_Button_activeState+0 CALL _Button+0 MOVF R0+0, 0 BTFSC STATUS+0, 2 GOTO L__main62 MOVLW 5 ADDWF _ch1+0, 0 MOVWF _min2+0 L__main62: ;ffff.mpas,47 :: if Button(PORTE, 1, 5, 0)then begin ch2:=ch2+1; end; MOVLW PORTE+0 MOVWF FARG_Button_port+0 MOVLW 1 MOVWF FARG_Button_pin+0 MOVLW 5 MOVWF FARG_Button_time+0 CLRF FARG_Button_activeState+0 CALL _Button+0 MOVF R0+0, 0 BTFSC STATUS+0, 2 GOTO L__main65 INCF _ch2+0, 1 L__main65: ;ffff.mpas,48 :: if min2>=10 then begin min1:=min1+1; min2:=0 end; MOVLW 10 SUBWF _min2+0, 0 BTFSS STATUS+0, 0 GOTO L__main68 INCF _min1+0, 1 CLRF _min2+0 L__main68: ;ffff.mpas,49 :: if min1>=6 then begin ch2:=ch2+1; min1:=0 end; MOVLW 6 SUBWF _min1+0, 0 BTFSS STATUS+0, 0 GOTO L__main71 INCF _ch2+0, 1 CLRF _min1+0 L__main71: ;ffff.mpas,50 :: if ch2>=10 then begin ch1:=ch1+1; ch2:=0 end; MOVLW 10 SUBWF _ch2+0, 0 BTFSS STATUS+0, 0 GOTO L__main74 INCF _ch1+0, 1 CLRF _ch2+0 L__main74: ;ffff.mpas,51 :: if ((ch1>=2)and(ch2>=4)) then begin ch2:=0; ch1:=0 end; MOVLW 2 SUBWF _ch1+0, 0 MOVLW 255 BTFSS STATUS+0, 0 MOVLW 0 MOVWF R1+0 MOVLW 4 SUBWF _ch2+0, 0 MOVLW 255 BTFSS STATUS+0, 0 MOVLW 0 MOVWF R0+0 MOVF R1+0, 0 ANDWF R0+0, 1 BTFSC STATUS+0, 2 GOTO L__main77 CLRF _ch2+0 CLRF _ch1+0 L__main77: ;ffff.mpas,52 :: end; GOTO L__main2 ;ffff.mpas,53 :: end. GOTO $+0 ; end of _main | |