📄 usart_rx_irda2.lst
字号:
***************************
21.10.2004 17:55:19
***************************
**********************
*** ROM memory ***
**********************
Address Instruction
------------------------
0000 GOTO main
;--- procedure delays_delay_1us ---
0004 delays_delay_1us:
0004 nop
0005 RETURN
0006 ;---endproc---
;--- procedure delays_delay_50us ---
0006 delays_delay_50us:
0006 MOVLW 16
0007 BCF STATUS,RP1
0008 BCF STATUS,RP0
0009 MOVWF STACK_0
000A DECFSZ STACK_0,F
000B GOTO $-1
000C nop
000D RETURN
000E ;---endproc---
;--- procedure delays_delay_5500us ---
000E delays_delay_5500us:
000E MOVLW 8
000F BCF STATUS,RP1
0010 BCF STATUS,RP0
0011 MOVWF STACK_0
0012 MOVLW 255
0013 MOVWF STACK_1
0014 DECFSZ STACK_0,F
0015 GOTO $+2
0016 GOTO $+4
0017 DECFSZ STACK_1,F
0018 GOTO $-1
0019 GOTO $-5
001A MOVLW 30
001B MOVWF STACK_0
001C DECFSZ STACK_0,F
001D GOTO $-1
001E RETURN
001F ;---endproc---
;--- procedure delays_delay_8ms ---
001F delays_delay_8ms:
001F MOVLW 11
0020 BCF STATUS,RP1
0021 BCF STATUS,RP0
0022 MOVWF STACK_0
0023 MOVLW 255
0024 MOVWF STACK_1
0025 DECFSZ STACK_0,F
0026 GOTO $+2
0027 GOTO $+4
0028 DECFSZ STACK_1,F
0029 GOTO $-1
002A GOTO $-5
002B MOVLW 91
002C MOVWF STACK_0
002D DECFSZ STACK_0,F
002E GOTO $-1
002F nop
0030 RETURN
0031 ;---endproc---
;--- procedure lcd_lcd_cmd ---
0031 lcd_lcd_cmd:
0031 BCF STATUS,RP1
0032 BCF STATUS,RP0
0033 MOVF lcd_main_global_portaddress,W
0034 BCF STATUS,IRP
0035 MOVWF FSR
0036 MOVF lcd_lcd_cmd_param_out_char,W
0037 MOVWF lcd_lcd_cmd_param_out_char
0038 CLRF INDF
0039 BTFSC lcd_lcd_cmd_param_out_char,7
003A BSF INDF,___DB7
003B BTFSC lcd_lcd_cmd_param_out_char,6
003C BSF INDF,___DB6
003D BTFSC lcd_lcd_cmd_param_out_char,5
003E BSF INDF,___DB5
003F BTFSC lcd_lcd_cmd_param_out_char,4
0040 BSF INDF,___DB4
0041 MOVLW 1
0042 SUBWF lcd_main_global_cmd,W
0043 BTFSS STATUS,Z
0044 GOTO L_lcd_1
0045 L_lcd_0:
0045 BCF INDF,___RS
0046 GOTO L_lcd_2
0047 L_lcd_1:
0047 BSF INDF,___RS
0048 L_lcd_2:
0048 BSF INDF,___ENABLE
0049 CALL delays_delay_1us
004A BCF INDF,___ENABLE
004B CLRF INDF
004C BTFSC lcd_lcd_cmd_param_out_char,3
004D BSF INDF,___DB7
004E BTFSC lcd_lcd_cmd_param_out_char,2
004F BSF INDF,___DB6
0050 BTFSC lcd_lcd_cmd_param_out_char,1
0051 BSF INDF,___DB5
0052 BTFSC lcd_lcd_cmd_param_out_char,0
0053 BSF INDF,___DB4
0054 MOVLW 1
0055 SUBWF lcd_main_global_cmd,W
0056 BTFSS STATUS,Z
0057 GOTO L_lcd_5
0058 L_lcd_4:
0058 BCF INDF,___RS
0059 GOTO L_lcd_6
005A L_lcd_5:
005A BSF INDF,___RS
005B L_lcd_6:
005B BSF INDF,___ENABLE
005C CALL delays_delay_1us
005D BCF INDF,___ENABLE
005E MOVLW 1
005F SUBWF lcd_main_global_cmd,W
0060 BTFSS STATUS,Z
0061 GOTO L_lcd_9
0062 L_lcd_8:
0062 CALL delays_delay_5500us
0063 GOTO L_lcd_10
0064 L_lcd_9:
0064 CALL delays_delay_50us
0065 L_lcd_10:
0065 RETURN
0066 ;---endproc---
;--- procedure lcd_lcd_init ---
0066 lcd_lcd_init:
0066 CALL delays_delay_5500us
0067 CALL delays_delay_5500us
0068 CALL delays_delay_5500us
0069 BCF STATUS,RP1
006A BCF STATUS,RP0
006B MOVF lcd_lcd_init_param_port,W
006C MOVWF FSR
006D MOVLW 0
006E MOVWF INDF
006F MOVF lcd_lcd_init_param_port,w
0070 MOVWF lcd_main_global_portaddress
0071 MOVWF FSR
0072 BSF FSR,7
0073 CLRF INDF
0074 BCF FSR,7
0075 CALL delays_delay_8ms
0076 BSF INDF,___DB5
0077 BSF INDF,___DB4
0078 BSF INDF,___ENABLE
0079 CALL delays_delay_1us
007A BCF INDF,___ENABLE
007B CALL delays_delay_8ms
007C BSF INDF,___DB5
007D BSF INDF,___DB4
007E BSF INDF,___ENABLE
007F CALL delays_delay_1us
0080 BCF INDF,___ENABLE
0081 CALL delays_delay_50us
0082 CALL delays_delay_50us
0083 BSF INDF,___DB5
0084 BSF INDF,___DB4
0085 BSF INDF,___ENABLE
0086 CALL delays_delay_1us
0087 BCF INDF,___ENABLE
0088 CALL delays_delay_8ms
0089 BSF INDF,___DB5
008A BCF INDF,___DB4
008B BSF INDF,___ENABLE
008C CALL delays_delay_1us
008D BCF INDF,___ENABLE
008E CALL delays_delay_50us
008F BSF INDF,___DB5
0090 BCF INDF,___DB4
0091 BSF INDF,___ENABLE
0092 CALL delays_delay_1us
0093 BCF INDF,___ENABLE
0094 BSF INDF,___DB7
0095 BCF INDF,___DB6
0096 BSF INDF,___ENABLE
0097 CALL delays_delay_1us
0098 BCF INDF,___ENABLE
0099 CALL delays_delay_50us
009A MOVLW 0
009B MOVWF INDF
009C BSF INDF,___ENABLE
009D CALL delays_delay_1us
009E BCF INDF,___ENABLE
009F BSF INDF,___DB7
00A0 BSF INDF,___DB6
00A1 BSF INDF,___DB5
00A2 BSF INDF,___DB4
00A3 BSF INDF,___ENABLE
00A4 CALL delays_delay_1us
00A5 BCF INDF,___ENABLE
00A6 CALL delays_delay_50us
00A7 MOVLW 0
00A8 MOVWF INDF
00A9 BSF INDF,___ENABLE
00AA CALL delays_delay_1us
00AB BCF INDF,___ENABLE
00AC BSF INDF,___DB4
00AD BSF INDF,___ENABLE
00AE CALL delays_delay_1us
00AF BCF INDF,___ENABLE
00B0 CALL delays_delay_8ms
00B1 MOVLW 0
00B2 MOVWF INDF
00B3 BSF INDF,___ENABLE
00B4 CALL delays_delay_1us
00B5 BCF INDF,___ENABLE
00B6 BSF INDF,___DB6
00B7 BSF INDF,___DB5
00B8 BSF INDF,___ENABLE
00B9 CALL delays_delay_1us
00BA BCF INDF,___ENABLE
00BB CALL delays_delay_50us
00BC MOVLW 1
00BD MOVWF lcd_main_global_cmd
00BE RETURN
00BF ;---endproc---
;--- procedure lcd_lcd_out ---
00BF lcd_lcd_out:
00BF MOVLW 1
00C0 BCF STATUS,RP1
00C1 BCF STATUS,RP0
00C2 SUBWF lcd_lcd_out_param_row,W
00C3 BTFSS STATUS,Z
00C4 GOTO L_lcd_21
00C5 MOVLW 128
00C6 MOVWF lcd_lcd_out_param_row
00C7 GOTO L_lcd_20
00C8 L_lcd_21:
00C8 MOVLW 2
00C9 SUBWF lcd_lcd_out_param_row,W
00CA BTFSS STATUS,Z
00CB GOTO L_lcd_22
00CC MOVLW 192
00CD MOVWF lcd_lcd_out_param_row
00CE GOTO L_lcd_20
00CF L_lcd_22:
00CF MOVLW 3
00D0 SUBWF lcd_lcd_out_param_row,W
00D1 BTFSS STATUS,Z
00D2 GOTO L_lcd_23
00D3 MOVLW 148
00D4 MOVWF lcd_lcd_out_param_row
00D5 GOTO L_lcd_20
00D6 L_lcd_23:
00D6 MOVLW 4
00D7 SUBWF lcd_lcd_out_param_row,W
00D8 BTFSS STATUS,Z
00D9 GOTO L_lcd_24
00DA MOVLW 212
00DB MOVWF lcd_lcd_out_param_row
00DC GOTO L_lcd_20
00DD L_lcd_24:
00DD MOVLW 128
00DE MOVWF lcd_lcd_out_param_row
00DF L_lcd_20:
00DF MOVF lcd_lcd_out_param_column,W
00E0 ADDWF lcd_lcd_out_param_row,W
00E1 MOVWF STACK_0
00E2 MOVLW 1
00E3 SUBWF STACK_0,F
00E4 MOVF STACK_0,W
00E5 MOVWF lcd_lcd_out_param_row
00E6 MOVF lcd_lcd_out_param_row,W
00E7 MOVWF lcd_lcd_cmd_param_out_char
00E8 CALL lcd_lcd_cmd
00E9 CLRF lcd_main_global_cmd
00EA MOVLW 1
00EB MOVWF lcd_lcd_out_local_i
00EC L_lcd_25:
00EC MOVF lcd_lcd_out_param_text,W
00ED MOVWF FSR
00EE MOVF INDF,W
00EF MOVWF STACK_1
00F0 MOVF lcd_lcd_out_local_i,W
00F1 SUBWF STACK_1,W
00F2 BTFSS STATUS,C
00F3 GOTO L_lcd_26
00F4 MOVF lcd_lcd_out_param_text,W
00F5 MOVWF FSR
00F6 MOVF lcd_lcd_out_local_i,W
00F7 ADDWF FSR,F
00F8 MOVF INDF,W
00F9 MOVWF lcd_lcd_cmd_param_out_char
00FA CALL lcd_lcd_cmd
00FB L_lcd_27:
00FB CLRF STACK_2
00FC INCF STACK_2,F
00FD MOVF lcd_lcd_out_local_i,W
00FE ADDWF STACK_2,W
00FF MOVWF lcd_lcd_out_local_i
0100 GOTO L_lcd_25
0101 L_lcd_26:
0101 MOVLW 1
0102 MOVWF lcd_main_global_cmd
0103 RETURN
0104 ;---endproc---
;--- function USARTlib_U_A_usart_data_ready ---
0104 USARTlib_U_A_usart_data_ready:
0104 BCF STATUS,RP1
0105 BCF STATUS,RP0
0106 CLRF USARTlib_U_A_usart_data_ready_result
0107 BTFSC pir1,5
0108 INCF USARTlib_U_A_usart_data_ready_result,F
0109 RETURN
010A ;---endproc---
;--- procedure USARTlib_U_A_usart_init ---
010A USARTlib_U_A_usart_init:
010A BCF STATUS,RP1
010B BSF STATUS,RP0
010C BSF txsta,5
010D MOVLW 144
010E BCF STATUS,RP0
010F MOVWF RCSTA
0110 BSF STATUS,RP0
0111 BSF trisc,7
0112 BCF trisc,6
0113 L_USARTlib_U_A_1:
0113 CLRF STACK_0
0114 BCF STATUS,RP0
0115 BTFSC pir1,5
0116 INCF STACK_0,F
0117 MOVLW 1
0118 SUBWF STACK_0,W
0119 BTFSS STATUS,Z
011A GOTO L_USARTlib_U_A_2
011B L_USARTlib_U_A_0:
011B MOVF RCREG,W
011C MOVWF USARTlib_U_A_usart_init_local_i
011D GOTO L_USARTlib_U_A_1
011E L_USARTlib_U_A_2:
011E RETURN
011F ;---endproc---
;--- function USARTlib_U_A_usart_read ---
011F USARTlib_U_A_usart_read:
011F BCF STATUS,RP1
0120 BCF STATUS,RP0
0121 MOVF RCREG,W
0122 MOVWF USARTlib_U_A_usart_read_result
0123 CLRF STACK_0
0124 BTFSC rcsta,1
0125 INCF STACK_0,F
0126 MOVLW 1
0127 SUBWF STACK_0,W
0128 BTFSS STATUS,Z
0129 GOTO L_USARTlib_U_A_7
012A L_USARTlib_U_A_6:
012A BCF rcsta,4
012B BSF rcsta,4
012C GOTO L_USARTlib_U_A_8
012D L_USARTlib_U_A_7:
012D L_USARTlib_U_A_8:
012D RETURN
012E ;---endproc---
;--- procedure USART_Rx_IrDA2_initall ---
012E USART_Rx_IrDA2_initall:
012E BCF STATUS,RP1
012F BCF STATUS,RP0
0130 CLRF main_global_ind
0131 MOVLW 1
0132 MOVWF main_global_rxIndex
0133 CLRF main_global_rxDone
0134 BSF STATUS,RP0
0135 CLRF TRISB
0136 BCF STATUS,RP0
0137 MOVLW PORTB,W
0138 MOVWF lcd_lcd_init_param_port
0139 CALL lcd_lcd_init
013A MOVLW 1
013B MOVWF lcd_lcd_cmd_param_out_char
013C CALL lcd_lcd_cmd
013D MOVLW 12
013E MOVWF lcd_lcd_cmd_param_out_char
013F CALL lcd_lcd_cmd
0140 MOVLW 12
0141 BSF STATUS,RP0
0142 MOVWF SPBRG
0143 BSF TXSTA, BRGH ; HI speed
0144 CALL USARTlib_U_A_usart_init
0145 RETURN
0146 ;---endproc---
;--- procedure USART_Rx_IrDA2_rxin ---
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -