📄 adcboardexample.asm
字号:
CALL delays_delay_50us
MOVLW 0
MOVWF INDF
BSF INDF,___ENABLE
CALL delays_delay_1us
BCF INDF,___ENABLE
BSF INDF,___DB7
BSF INDF,___DB6
BSF INDF,___DB5
BSF INDF,___DB4
BSF INDF,___ENABLE
CALL delays_delay_1us
BCF INDF,___ENABLE
CALL delays_delay_50us
MOVLW 0
MOVWF INDF
BSF INDF,___ENABLE
CALL delays_delay_1us
BCF INDF,___ENABLE
BSF INDF,___DB4
BSF INDF,___ENABLE
CALL delays_delay_1us
BCF INDF,___ENABLE
CALL delays_delay_8ms
MOVLW 0
MOVWF INDF
BSF INDF,___ENABLE
CALL delays_delay_1us
BCF INDF,___ENABLE
BSF INDF,___DB6
BSF INDF,___DB5
BSF INDF,___ENABLE
CALL delays_delay_1us
BCF INDF,___ENABLE
CALL delays_delay_50us
MOVLW 1
MOVWF lcd_main_global_cmd
RETURN
;---endproc---
;--- procedure lcd_lcd_out ---
lcd_lcd_out:
MOVLW 1
BCF STATUS,RP1
BCF STATUS,RP0
SUBWF lcd_lcd_out_param_row,W
BTFSS STATUS,Z
GOTO L_lcd_21
MOVLW 128
MOVWF lcd_lcd_out_param_row
GOTO L_lcd_20
L_lcd_21:
MOVLW 2
SUBWF lcd_lcd_out_param_row,W
BTFSS STATUS,Z
GOTO L_lcd_22
MOVLW 192
MOVWF lcd_lcd_out_param_row
GOTO L_lcd_20
L_lcd_22:
MOVLW 3
SUBWF lcd_lcd_out_param_row,W
BTFSS STATUS,Z
GOTO L_lcd_23
MOVLW 148
MOVWF lcd_lcd_out_param_row
GOTO L_lcd_20
L_lcd_23:
MOVLW 4
SUBWF lcd_lcd_out_param_row,W
BTFSS STATUS,Z
GOTO L_lcd_24
MOVLW 212
MOVWF lcd_lcd_out_param_row
GOTO L_lcd_20
L_lcd_24:
MOVLW 128
MOVWF lcd_lcd_out_param_row
L_lcd_20:
MOVF lcd_lcd_out_param_column,W
ADDWF lcd_lcd_out_param_row,W
MOVWF STACK_0
MOVLW 1
SUBWF STACK_0,F
MOVF STACK_0,W
MOVWF lcd_lcd_out_param_row
MOVF lcd_lcd_out_param_row,W
MOVWF lcd_lcd_cmd_param_out_char
CALL lcd_lcd_cmd
CLRF lcd_main_global_cmd
MOVLW 1
MOVWF lcd_lcd_out_local_i
L_lcd_25:
MOVF lcd_lcd_out_param_text,W
MOVWF FSR
MOVF INDF,W
MOVWF STACK_1
MOVF lcd_lcd_out_local_i,W
SUBWF STACK_1,W
BTFSS STATUS,C
GOTO L_lcd_26
MOVF lcd_lcd_out_param_text,W
MOVWF FSR
MOVF lcd_lcd_out_local_i,W
ADDWF FSR,F
MOVF INDF,W
MOVWF lcd_lcd_cmd_param_out_char
CALL lcd_lcd_cmd
L_lcd_27:
CLRF STACK_2
INCF STACK_2,F
MOVF lcd_lcd_out_local_i,W
ADDWF STACK_2,W
MOVWF lcd_lcd_out_local_i
GOTO L_lcd_25
L_lcd_26:
MOVLW 1
MOVWF lcd_main_global_cmd
RETURN
;---endproc---
;--- procedure SPIlib_S_A_spi_init_advanced ---
SPIlib_S_A_spi_init_advanced:
MOVLW 215
BCF STATUS,RP1
BSF STATUS,RP0
MOVWF TRISC
BCF STATUS,RP0
CLRF SSPCON
MOVF SPIlib_S_A_spi_init_advanced_param_master,W
IORWF SSPCON,W
MOVWF SSPCON
MOVF SPIlib_S_A_spi_init_advanced_param_clock_idle,W
IORWF SSPCON,W
MOVWF SSPCON
MOVF SPIlib_S_A_spi_init_advanced_param_data_sample,W
BSF STATUS,RP0
IORWF SSPSTAT,W
MOVWF SSPSTAT
MOVLW 0
BCF STATUS,RP0
SUBWF SPIlib_S_A_spi_init_advanced_param_clock_idle,W
BTFSC STATUS,Z
GOTO L_SPIlib_S_A_1
L_SPIlib_S_A_0:
MOVLW 0
SUBWF SPIlib_S_A_spi_init_advanced_param_low_to_high,W
BTFSS STATUS,Z
GOTO L_SPIlib_S_A_5
L_SPIlib_S_A_4:
BSF STATUS,RP0
BSF sspstat,6
GOTO L_SPIlib_S_A_6
L_SPIlib_S_A_5:
L_SPIlib_S_A_6:
BCF STATUS,RP1
BSF STATUS,RP0
GOTO L_SPIlib_S_A_2
L_SPIlib_S_A_1:
MOVLW 1
BCF STATUS,RP0
SUBWF SPIlib_S_A_spi_init_advanced_param_low_to_high,W
BTFSS STATUS,Z
GOTO L_SPIlib_S_A_9
L_SPIlib_S_A_8:
BSF STATUS,RP0
BSF sspstat,6
GOTO L_SPIlib_S_A_10
L_SPIlib_S_A_9:
L_SPIlib_S_A_10:
L_SPIlib_S_A_2:
BCF STATUS,RP1
BSF STATUS,RP0
BCF STATUS,RP0
BSF sspcon,5
RETURN
;---endproc---
;--- function SPIlib_S_A_spi_read ---
SPIlib_S_A_spi_read:
BCF STATUS,RP1
BCF STATUS,RP0
MOVF SPIlib_S_A_spi_read_param_input,W
MOVWF SSPBUF
L_SPIlib_S_A_16:
CLRF STACK_0
BSF STATUS,RP0
BTFSC sspstat,0
INCF STACK_0,F
MOVLW 0
SUBWF STACK_0,W
BTFSS STATUS,Z
GOTO L_SPIlib_S_A_17
L_SPIlib_S_A_15:
nop
GOTO L_SPIlib_S_A_16
L_SPIlib_S_A_17:
BCF STATUS,RP0
MOVF SSPBUF,W
MOVWF SPIlib_S_A_spi_read_result
RETURN
;---endproc---
;--- procedure SPIlib_S_A_spi_write ---
SPIlib_S_A_spi_write:
BCF STATUS,RP1
BCF STATUS,RP0
MOVF SPIlib_S_A_spi_write_param_data,W
MOVWF SSPBUF
L_SPIlib_S_A_13:
CLRF STACK_0
BSF STATUS,RP0
BTFSC sspstat,0
INCF STACK_0,F
MOVLW 0
SUBWF STACK_0,W
BTFSS STATUS,Z
GOTO L_SPIlib_S_A_14
L_SPIlib_S_A_12:
nop
GOTO L_SPIlib_S_A_13
L_SPIlib_S_A_14:
BCF STATUS,RP0
MOVF SSPBUF,W
MOVWF SPIlib_S_A_spi_write_local_temp
RETURN
;---endproc---
;--- function ADCBoardExample_getadc ---
ADCBoardExample_getadc:
BCF STATUS,RP1
BCF STATUS,RP0
BCF portc,0
MOVLW 6
MOVWF SPIlib_S_A_spi_write_param_data
CALL SPIlib_S_A_spi_write
MOVF ADCBoardExample_getadc_param_channel,W
MOVWF STACK_0
MOVLW 6
MOVWF STACK_1
L_ADCBoardExample_2:
MOVF STACK_1,W
BTFSC STATUS,Z
GOTO L_ADCBoardExample_3
RLF STACK_0,F
BCF STACK_0,0
DECFSZ STACK_1,F
GOTO L_ADCBoardExample_2
L_ADCBoardExample_3:
MOVF STACK_0,W
MOVWF ADCBoardExample_getadc_param_channel
MOVF ADCBoardExample_getadc_param_channel,W
MOVWF SPIlib_S_A_spi_read_param_input
CALL SPIlib_S_A_spi_read
MOVLW 15
ANDWF SPIlib_S_A_spi_read_result,W
MOVWF STACK_0
CLRF STACK_1
MOVF STACK_0,W
MOVWF ADCBoardExample_getadc_local_tmp_1
MOVLW 8
MOVWF STACK_4
MOVF STACK_1,W
MOVWF ADCBoardExample_getadc_local_tmp_2
L_ADCBoardExample_4:
MOVF STACK_4,W
BTFSC STATUS,Z
GOTO L_ADCBoardExample_5
RLF ADCBoardExample_getadc_local_tmp_1,F
RLF ADCBoardExample_getadc_local_tmp_2,F
BCF ADCBoardExample_getadc_local_tmp_1,0
DECFSZ STACK_4,F
GOTO L_ADCBoardExample_4
L_ADCBoardExample_5:
MOVLW 0
MOVWF SPIlib_S_A_spi_read_param_input
CALL SPIlib_S_A_spi_read
CLRF STACK_2
MOVF SPIlib_S_A_spi_read_result,W
IORWF ADCBoardExample_getadc_local_tmp_1,W
MOVWF ADCBoardExample_getadc_result_1
MOVF STACK_2,W
IORWF ADCBoardExample_getadc_local_tmp_2,W
MOVWF ADCBoardExample_getadc_result_2
BSF portc,0
RETURN
;---endproc---
;--- procedure ADCBoardExample_init ---
ADCBoardExample_init:
BCF STATUS,RP1
BSF STATUS,RP0
CLRF TRISB
BCF STATUS,RP0
MOVLW PORTB,W
MOVWF lcd_lcd_init_param_port
CALL lcd_lcd_init
MOVLW 1
MOVWF lcd_lcd_cmd_param_out_char
CALL lcd_lcd_cmd
MOVLW 12
MOVWF lcd_lcd_cmd_param_out_char
CALL lcd_lcd_cmd
MOVLW 11
MOVWF main_global_txt_0
MOVLW 65
MOVWF main_global_txt_1
MOVLW 68
MOVWF main_global_txt_2
MOVLW 67
MOVWF main_global_txt_3
MOVLW 32
MOVWF main_global_txt_4
MOVLW 118
MOVWF main_global_txt_5
MOVLW 97
MOVWF main_global_txt_6
MOVLW 108
MOVWF main_global_txt_7
MOVLW 117
MOVWF main_global_txt_8
MOVLW 101
MOVWF main_global_txt_9
MOVLW 32
MOVWF main_global_txt_10
MOVLW 58
MOVWF main_global_txt_11
MOVLW 1
MOVWF main_global_LastValue_1
CLRF main_global_LastValue_2
CLRF main_global_measurement_1
CLRF main_global_measurement_2
MOVLW 2
MOVWF SPIlib_S_A_spi_init_advanced_param_master
MOVLW 128
MOVWF SPIlib_S_A_spi_init_advanced_param_data_sample
MOVLW 0
MOVWF SPIlib_S_A_spi_init_advanced_param_clock_idle
MOVLW 1
MOVWF SPIlib_S_A_spi_init_advanced_param_low_to_high
CALL SPIlib_S_A_spi_init_advanced
BSF portc,0
BSF STATUS,RP0
BCF trisc,0
RETURN
;---endproc---
;--- procedure ADCBoardExample_processvalue ---
ADCBoardExample_processvalue:
BCF STATUS,RP1
BCF STATUS,RP0
MOVF ADCBoardExample_processvalue_param_Value_2,W
SUBWF main_global_LastValue_2,W
BTFSS STATUS,Z
GOTO $+3
MOVF ADCBoardExample_processvalue_param_Value_1,W
SUBWF main_global_LastValue_1,W
BTFSC STATUS,Z
GOTO L_ADCBoardExample_7
L_ADCBoardExample_6:
MOVLW 4
MOVWF main_global_txt_0
MOVLW 32
MOVWF main_global_txt_1
MOVLW 32
MOVWF main_global_txt_2
MOVLW 32
MOVWF main_global_txt_3
MOVLW 32
MOVWF main_global_txt_4
MOVLW 2
MOVWF lcd_lcd_out_param_row
MOVLW 1
MOVWF lcd_lcd_out_param_column
MOVLW main_global_txt_0,W
MOVWF lcd_lcd_out_param_text
CALL lcd_lcd_out
MOVF main_global_measurement_1,W
MOVWF Conv_wordtostr_param_input_1
MOVF main_global_measurement_2,W
MOVWF Conv_wordtostr_param_input_2
MOVLW main_global_txt_0,W
MOVWF Conv_wordtostr_param_output
CALL Conv_wordtostr
MOVLW 2
MOVWF lcd_lcd_out_param_row
MOVLW 1
MOVWF lcd_lcd_out_param_column
MOVLW main_global_txt_0,W
MOVWF lcd_lcd_out_param_text
CALL lcd_lcd_out
MOVF ADCBoardExample_processvalue_param_Value_1,W
MOVWF main_global_LastValue_1
MOVF ADCBoardExample_processvalue_param_Value_2,W
MOVWF main_global_LastValue_2
GOTO L_ADCBoardExample_8
L_ADCBoardExample_7:
L_ADCBoardExample_8:
RETURN
;---endproc---
;--- procedure main ---
main:
CALL ADCBoardExample_init
MOVLW 1
BCF STATUS,RP1
BCF STATUS,RP0
MOVWF lcd_lcd_out_param_row
MOVLW 1
MOVWF lcd_lcd_out_param_column
MOVLW 10
MOVWF main_global_temp_string_0
MOVLW 65
MOVWF main_global_temp_string_1
MOVLW 68
MOVWF main_global_temp_string_2
MOVLW 67
MOVWF main_global_temp_string_3
MOVLW 32
MOVWF main_global_temp_string_4
MOVLW 118
MOVWF main_global_temp_string_5
MOVLW 97
MOVWF main_global_temp_string_6
MOVLW 108
MOVWF main_global_temp_string_7
MOVLW 117
MOVWF main_global_temp_string_8
MOVLW 101
MOVWF main_global_temp_string_9
MOVLW 58
MOVWF main_global_temp_string_10
MOVLW main_global_temp_string_0
MOVWF lcd_lcd_out_param_text
CALL lcd_lcd_out
L_ADCBoardExample_13:
L_ADCBoardExample_12:
MOVLW 0
MOVWF ADCBoardExample_getadc_param_channel
CALL ADCBoardExample_getadc
MOVF ADCBoardExample_getadc_result_1,W
MOVWF main_global_measurement_1
MOVF ADCBoardExample_getadc_result_2,W
MOVWF main_global_measurement_2
MOVF main_global_measurement_1,W
MOVWF ADCBoardExample_processvalue_param_Value_1
MOVF main_global_measurement_2,W
MOVWF ADCBoardExample_processvalue_param_Value_2
CALL ADCBoardExample_processvalue
MOVLW 130
MOVWF STACK_1
MOVLW 255
MOVWF STACK_2
DECFSZ STACK_1,F
GOTO $+2
GOTO $+4
DECFSZ STACK_2,F
GOTO $-1
GOTO $-5
MOVLW 135
MOVWF STACK_1
DECFSZ STACK_1,F
GOTO $-1
nop
GOTO L_ADCBoardExample_13
L_ADCBoardExample_14:
GOTO $
;---endproc---
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -