⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 avvolgibili_massimo.asm

📁 control system for garage door pic program in asm
💻 ASM
📖 第 1 页 / 共 2 页
字号:
$0094	$3A01			XORLW	1
$0095	$1D03			BTFSS	STATUS, Z
$0096	$2898			GOTO	AVVOLGIBILI_MASSIMO_L_42
$0097	$288D			GOTO	AVVOLGIBILI_MASSIMO_L_41
$0098	$	AVVOLGIBILI_MASSIMO_L_42:
^AVVOLGIBILI_MASSIMO.pbas, 50 :: 		wend
$0098	$	AVVOLGIBILI_MASSIMO_L_34:
^AVVOLGIBILI_MASSIMO.pbas, 51 :: 		end if
$0098	$	AVVOLGIBILI_MASSIMO_L_35:
^AVVOLGIBILI_MASSIMO.pbas, 53 :: 		if porta.0=0 then     ' SE RILASCIO IL P.DISCESA
$0098	$1C05			BTFSS	PORTA, 0
$0099	$289D			GOTO	AVVOLGIBILI_MASSIMO_L_50
$009A	$3001			MOVLW	1
$009B	$00C1			MOVWF	STACK_1
$009C	$289E			GOTO	AVVOLGIBILI_MASSIMO_L_51
$009D	$	AVVOLGIBILI_MASSIMO_L_50:
$009D	$01C1			CLRF	STACK_1, 1
$009E	$	AVVOLGIBILI_MASSIMO_L_51:
$009E	$0841			MOVF	STACK_1, 0
$009F	$3A00			XORLW	0
$00A0	$1D03			BTFSS	STATUS, Z
$00A1	$28AE			GOTO	AVVOLGIBILI_MASSIMO_L_48
$00A2	$	AVVOLGIBILI_MASSIMO_L_47:
^AVVOLGIBILI_MASSIMO.pbas, 54 :: 		portb.3=0             ' FERMA IL MOTORE
$00A2	$1186			BCF	PORTB, 3
$00A3	$	AVVOLGIBILI_MASSIMO_L_53:
^AVVOLGIBILI_MASSIMO.pbas, 55 :: 		while porta.0=0       ' ANTI RIMBALZO
$00A3	$	AVVOLGIBILI_MASSIMO_L_55:
$00A3	$1C05			BTFSS	PORTA, 0
$00A4	$28A8			GOTO	AVVOLGIBILI_MASSIMO_L_59
$00A5	$3001			MOVLW	1
$00A6	$00C1			MOVWF	STACK_1
$00A7	$28A9			GOTO	AVVOLGIBILI_MASSIMO_L_60
$00A8	$	AVVOLGIBILI_MASSIMO_L_59:
$00A8	$01C1			CLRF	STACK_1, 1
$00A9	$	AVVOLGIBILI_MASSIMO_L_60:
$00A9	$0841			MOVF	STACK_1, 0
$00AA	$3A00			XORLW	0
$00AB	$1D03			BTFSS	STATUS, Z
$00AC	$28AE			GOTO	AVVOLGIBILI_MASSIMO_L_56
^AVVOLGIBILI_MASSIMO.pbas, 56 :: 		goto main              ' TORNA ALL'INIZIO
$00AD	$2804			GOTO	AVVOLGIBILI_MASSIMO_main_main
$00AE	$	AVVOLGIBILI_MASSIMO_L_56:
^AVVOLGIBILI_MASSIMO.pbas, 57 :: 		wend
$00AE	$	AVVOLGIBILI_MASSIMO_L_48:
^AVVOLGIBILI_MASSIMO.pbas, 58 :: 		end if
$00AE	$	AVVOLGIBILI_MASSIMO_L_49:
^AVVOLGIBILI_MASSIMO.pbas, 61 :: 		salita:
$00AE	$	AVVOLGIBILI_MASSIMO_main_salita:
^AVVOLGIBILI_MASSIMO.pbas, 65 :: 		delay_ms(300)           ' ASPETTA 3 ms
$00AE	$3002			MOVLW	2
$00AF	$00CC			MOVWF	STACK_12
$00B0	$30FF			MOVLW	255
$00B1	$00CB			MOVWF	STACK_11
$00B2	$30FF			MOVLW	255
$00B3	$00CA			MOVWF	STACK_10
$00B4	$0BCC			DECFSZ	STACK_12, F
$00B5	$28B7			GOTO	$+2
$00B6	$28BE			GOTO	$+8
$00B7	$0BCB			DECFSZ	STACK_11, F
$00B8	$28BA			GOTO	$+2
$00B9	$28BD			GOTO	$+4
$00BA	$0BCA			DECFSZ	STACK_10, F
$00BB	$28BA			GOTO	$-1
$00BC	$28B7			GOTO	$-5
$00BD	$28B4			GOTO	$-9
$00BE	$3087			MOVLW	135
$00BF	$00CB			MOVWF	STACK_11
$00C0	$30FF			MOVLW	255
$00C1	$00CA			MOVWF	STACK_10
$00C2	$0BCB			DECFSZ	STACK_11, F
$00C3	$28C5			GOTO	$+2
$00C4	$28C8			GOTO	$+4
$00C5	$0BCA			DECFSZ	STACK_10, F
$00C6	$28C5			GOTO	$-1
$00C7	$28C2			GOTO	$-5
$00C8	$3093			MOVLW	147
$00C9	$00CA			MOVWF	STACK_10
$00CA	$0BCA			DECFSZ	STACK_10, F
$00CB	$28CA			GOTO	$-1
$00CC	$0000			NOP
^AVVOLGIBILI_MASSIMO.pbas, 66 :: 		if porta.1=0 then       ' SE TROVI IL P.SALITA APERTO
$00CD	$1C85			BTFSS	PORTA, 1
$00CE	$28D2			GOTO	AVVOLGIBILI_MASSIMO_L_64
$00CF	$3001			MOVLW	1
$00D0	$00C1			MOVWF	STACK_1
$00D1	$28D3			GOTO	AVVOLGIBILI_MASSIMO_L_65
$00D2	$	AVVOLGIBILI_MASSIMO_L_64:
$00D2	$01C1			CLRF	STACK_1, 1
$00D3	$	AVVOLGIBILI_MASSIMO_L_65:
$00D3	$0841			MOVF	STACK_1, 0
$00D4	$3A00			XORLW	0
$00D5	$1D03			BTFSS	STATUS, Z
$00D6	$28F8			GOTO	AVVOLGIBILI_MASSIMO_L_62
$00D7	$	AVVOLGIBILI_MASSIMO_L_61:
^AVVOLGIBILI_MASSIMO.pbas, 67 :: 		portb.1=1             ' AVVIA IL MOTORE COLLEGATO ALL'USCITA 1
$00D7	$	AVVOLGIBILI_MASSIMO_L_66:
$00D7	$1486			BSF	PORTB, 1
$00D8	$	AVVOLGIBILI_MASSIMO_L_67:
^AVVOLGIBILI_MASSIMO.pbas, 68 :: 		delay_ms(20000)         ' PER 20 sec
$00D8	$3066			MOVLW	102
$00D9	$00CC			MOVWF	STACK_12
$00DA	$30FF			MOVLW	255
$00DB	$00CB			MOVWF	STACK_11
$00DC	$30FF			MOVLW	255
$00DD	$00CA			MOVWF	STACK_10
$00DE	$0BCC			DECFSZ	STACK_12, F
$00DF	$28E1			GOTO	$+2
$00E0	$28E8			GOTO	$+8
$00E1	$0BCB			DECFSZ	STACK_11, F
$00E2	$28E4			GOTO	$+2
$00E3	$28E7			GOTO	$+4
$00E4	$0BCA			DECFSZ	STACK_10, F
$00E5	$28E4			GOTO	$-1
$00E6	$28E1			GOTO	$-5
$00E7	$28DE			GOTO	$-9
$00E8	$30FC			MOVLW	252
$00E9	$00CB			MOVWF	STACK_11
$00EA	$30FF			MOVLW	255
$00EB	$00CA			MOVWF	STACK_10
$00EC	$0BCB			DECFSZ	STACK_11, F
$00ED	$28EF			GOTO	$+2
$00EE	$28F2			GOTO	$+4
$00EF	$0BCA			DECFSZ	STACK_10, F
$00F0	$28EF			GOTO	$-1
$00F1	$28EC			GOTO	$-5
$00F2	$306A			MOVLW	106
$00F3	$00CA			MOVWF	STACK_10
$00F4	$0BCA			DECFSZ	STACK_10, F
$00F5	$28F4			GOTO	$-1
^AVVOLGIBILI_MASSIMO.pbas, 69 :: 		portb.1=0              'STOPPA IL MOTORE
$00F6	$1086			BCF	PORTB, 1
$00F7	$	AVVOLGIBILI_MASSIMO_L_69:
^AVVOLGIBILI_MASSIMO.pbas, 70 :: 		goto main               ' TORNA ALL'INIZIO
$00F7	$2804			GOTO	AVVOLGIBILI_MASSIMO_main_main
$00F8	$	AVVOLGIBILI_MASSIMO_L_62:
^AVVOLGIBILI_MASSIMO.pbas, 71 :: 		end if
$00F8	$	AVVOLGIBILI_MASSIMO_L_63:
^AVVOLGIBILI_MASSIMO.pbas, 75 :: 		if porta.1=1 then         ' SE P.SALITA PREMUTO
$00F8	$1C85			BTFSS	PORTA, 1
$00F9	$28FD			GOTO	AVVOLGIBILI_MASSIMO_L_73
$00FA	$3001			MOVLW	1
$00FB	$00C1			MOVWF	STACK_1
$00FC	$28FE			GOTO	AVVOLGIBILI_MASSIMO_L_74
$00FD	$	AVVOLGIBILI_MASSIMO_L_73:
$00FD	$01C1			CLRF	STACK_1, 1
$00FE	$	AVVOLGIBILI_MASSIMO_L_74:
$00FE	$0841			MOVF	STACK_1, 0
$00FF	$3A01			XORLW	1
$0100	$1D03			BTFSS	STATUS, Z
$0101	$290E			GOTO	AVVOLGIBILI_MASSIMO_L_71
$0102	$	AVVOLGIBILI_MASSIMO_L_70:
^AVVOLGIBILI_MASSIMO.pbas, 76 :: 		portb.1=1                ' ABILITA IL MOTORE
$0102	$	AVVOLGIBILI_MASSIMO_L_75:
$0102	$1486			BSF	PORTB, 1
$0103	$	AVVOLGIBILI_MASSIMO_L_76:
^AVVOLGIBILI_MASSIMO.pbas, 77 :: 		while porta.1=1          ' ANTI REPEAT
$0103	$	AVVOLGIBILI_MASSIMO_L_78:
$0103	$1C85			BTFSS	PORTA, 1
$0104	$2908			GOTO	AVVOLGIBILI_MASSIMO_L_82
$0105	$3001			MOVLW	1
$0106	$00C1			MOVWF	STACK_1
$0107	$2909			GOTO	AVVOLGIBILI_MASSIMO_L_83
$0108	$	AVVOLGIBILI_MASSIMO_L_82:
$0108	$01C1			CLRF	STACK_1, 1
$0109	$	AVVOLGIBILI_MASSIMO_L_83:
$0109	$0841			MOVF	STACK_1, 0
$010A	$3A01			XORLW	1
$010B	$1D03			BTFSS	STATUS, Z
$010C	$290E			GOTO	AVVOLGIBILI_MASSIMO_L_79
$010D	$2903			GOTO	AVVOLGIBILI_MASSIMO_L_78
$010E	$	AVVOLGIBILI_MASSIMO_L_79:
^AVVOLGIBILI_MASSIMO.pbas, 78 :: 		wend
$010E	$	AVVOLGIBILI_MASSIMO_L_71:
^AVVOLGIBILI_MASSIMO.pbas, 79 :: 		end if
$010E	$	AVVOLGIBILI_MASSIMO_L_72:
^AVVOLGIBILI_MASSIMO.pbas, 81 :: 		if porta.1=0 then        ' SE RILASCIO P.SALITA
$010E	$1C85			BTFSS	PORTA, 1
$010F	$2913			GOTO	AVVOLGIBILI_MASSIMO_L_87
$0110	$3001			MOVLW	1
$0111	$00C1			MOVWF	STACK_1
$0112	$2914			GOTO	AVVOLGIBILI_MASSIMO_L_88
$0113	$	AVVOLGIBILI_MASSIMO_L_87:
$0113	$01C1			CLRF	STACK_1, 1
$0114	$	AVVOLGIBILI_MASSIMO_L_88:
$0114	$0841			MOVF	STACK_1, 0
$0115	$3A00			XORLW	0
$0116	$1D03			BTFSS	STATUS, Z
$0117	$2924			GOTO	AVVOLGIBILI_MASSIMO_L_85
$0118	$	AVVOLGIBILI_MASSIMO_L_84:
^AVVOLGIBILI_MASSIMO.pbas, 82 :: 		portb.1=0                ' FERMA IL MOTORE SALITA
$0118	$1086			BCF	PORTB, 1
$0119	$	AVVOLGIBILI_MASSIMO_L_90:
^AVVOLGIBILI_MASSIMO.pbas, 83 :: 		while porta.1=0          ' ANTI REPEAT
$0119	$	AVVOLGIBILI_MASSIMO_L_92:
$0119	$1C85			BTFSS	PORTA, 1
$011A	$291E			GOTO	AVVOLGIBILI_MASSIMO_L_96
$011B	$3001			MOVLW	1
$011C	$00C1			MOVWF	STACK_1
$011D	$291F			GOTO	AVVOLGIBILI_MASSIMO_L_97
$011E	$	AVVOLGIBILI_MASSIMO_L_96:
$011E	$01C1			CLRF	STACK_1, 1
$011F	$	AVVOLGIBILI_MASSIMO_L_97:
$011F	$0841			MOVF	STACK_1, 0
$0120	$3A00			XORLW	0
$0121	$1D03			BTFSS	STATUS, Z
$0122	$2924			GOTO	AVVOLGIBILI_MASSIMO_L_93
^AVVOLGIBILI_MASSIMO.pbas, 84 :: 		goto main                ' TORNA ALL'INIZIO
$0123	$2804			GOTO	AVVOLGIBILI_MASSIMO_main_main
$0124	$	AVVOLGIBILI_MASSIMO_L_93:
^AVVOLGIBILI_MASSIMO.pbas, 85 :: 		wend
$0124	$	AVVOLGIBILI_MASSIMO_L_85:
^AVVOLGIBILI_MASSIMO.pbas, 86 :: 		end if
$0124	$	AVVOLGIBILI_MASSIMO_L_86:
^AVVOLGIBILI_MASSIMO.pbas, 88 :: 		goto main
$0124	$2804			GOTO	AVVOLGIBILI_MASSIMO_main_main
$0125	$2925			GOTO	$

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -