Ответ: а ето мне никак не поможет???
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено www877A 17 марта 2005 г. 23:27
В ответ на: кого пилы ? можно отправлено DSN 17 марта 2005 г. 23:19

GOTO main
;--- procedure delays_delay_500us ---
delays_delay_500us:
MOVLW 165
BCF STATUS,RP1
BCF STATUS,RP0
MOVWF STACK_0
DECFSZ STACK_0,F
GOTO $-1
nop
nop
RETURN
;---endproc---
;--- procedure SPIlib_S_A_spi_init ---
SPIlib_S_A_spi_init:
MOVLW 215
BCF STATUS,RP1
BSF STATUS,RP0
MOVWF TRISC
BCF STATUS,RP0
CLRF SSPCON
MOVLW 64
BSF STATUS,RP0
MOVWF SSPSTAT
BCF STATUS,RP0
BSF sspcon,5
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 button_button ---
button_button:
BCF STATUS,RP1
BCF STATUS,RP0
CLRF button_button_result
MOVF button_button_param_port,W
BCF STATUS,IRP
MOVWF FSR
MOVLW 1
MOVWF STACK_1
MOVF button_button_param_pin,W
MOVWF STACK_2
BTFSC STATUS,Z
GOTO $+5
RLF STACK_1,F
BCF STACK_1,0
DECFSZ STACK_2,F
GOTO $-5
MOVF STACK_1,W
CLRF STACK_0
ANDWF INDF,W
BTFSS STATUS,Z
INCF STACK_0,F
MOVF button_button_param_activestate,W
SUBWF STACK_0,W
BTFSS STATUS,Z
GOTO L_button_1
L_button_0:
L_button_5:
MOVF button_button_param_time,W
SUBLW 0
BTFSC STATUS,C
GOTO L_button_6
L_button_4:
CALL delays_delay_500us
CALL delays_delay_500us
MOVLW 1
SUBWF button_button_param_time,W
MOVWF button_button_param_time
GOTO L_button_5
L_button_6:
MOVLW 1
MOVWF STACK_2
MOVF button_button_param_pin,W
MOVWF STACK_3
BTFSC STATUS,Z
GOTO $+5
RLF STACK_2,F
BCF STACK_2,0
DECFSZ STACK_3,F
GOTO $-5
MOVF STACK_2,W
CLRF STACK_1
ANDWF INDF,W
BTFSS STATUS,Z
INCF STACK_1,F
MOVF button_button_param_activestate,W
SUBWF STACK_1,W
BTFSS STATUS,Z
GOTO L_button_8
L_button_7:
MOVLW 255
MOVWF button_button_result
GOTO L_button_9
L_button_8:
L_button_9:
GOTO L_button_2
L_button_1:
L_button_2:
RETURN
;---endproc---
;--- procedure dac_dac_output ---
dac_dac_output:
BCF STATUS,RP1
BCF STATUS,RP0
BCF portc,0
MOVF dac_dac_output_param_Value_2,W
MOVWF STACK_0
MOVLW 15
ANDWF STACK_0,W
MOVWF dac_dac_output_local_temp
MOVLW 48
IORWF dac_dac_output_local_temp,W
MOVWF dac_dac_output_local_temp
MOVF dac_dac_output_local_temp,W
MOVWF SPIlib_S_A_spi_write_param_data
CALL SPIlib_S_A_spi_write
MOVF dac_dac_output_param_Value_1,W
MOVWF dac_dac_output_local_temp
MOVF dac_dac_output_local_temp,W
MOVWF SPIlib_S_A_spi_write_param_data
CALL SPIlib_S_A_spi_write
BSF portc,0
RETURN
;---endproc---
;--- procedure dac_init ---
dac_init:
BCF STATUS,RP1
BSF STATUS,RP0
BSF trisb,0
BSF trisb,1
CALL SPIlib_S_A_spi_init
BCF STATUS,RP1
BSF STATUS,RP0
BCF trisc,0
RETURN
;---endproc---
;--- procedure main ---
main:
CALL dac_init
MOVLW 0
BCF STATUS,RP1
BCF STATUS,RP0
MOVWF dac_dac_output_param_Value_1
MOVLW 8
MOVWF dac_dac_output_param_Value_2
CALL dac_dac_output
MOVLW 0
MOVWF main_global_value_1
MOVLW 8
MOVWF main_global_value_2
L_dac_1:
L_dac_0:
MOVLW PORTB,W
MOVWF button_button_param_port
MOVLW 0
MOVWF button_button_param_pin
MOVLW 1
MOVWF button_button_param_time
MOVLW 1
MOVWF button_button_param_activestate
CALL button_button
MOVLW 255
SUBWF button_button_result,W
BTFSS STATUS,Z
GOTO L_dac_4
GOTO L_dac_3
L_dac_3:
MOVLW 15
SUBWF main_global_value_2,W
BTFSS STATUS,Z
GOTO $+3
MOVLW 255
SUBWF main_global_value_1,W
BTFSC STATUS,C
GOTO L_dac_4
L_dac_7:
INCF main_global_value_1,F
BTFSC STATUS,Z
INCF main_global_value_2,F
GOTO L_dac_5
L_dac_4:
MOVLW PORTB,W
MOVWF button_button_param_port
MOVLW 1
MOVWF button_button_param_pin
MOVLW 1
MOVWF button_button_param_time
MOVLW 1
MOVWF button_button_param_activestate
CALL button_button
MOVLW 255
SUBWF button_button_result,W
BTFSS STATUS,Z
GOTO L_dac_9
GOTO L_dac_8
L_dac_8:
MOVLW 0
MOVWF STACK_11
MOVF main_global_value_2,W
SUBWF STACK_11,W
BTFSS STATUS,Z
GOTO $+3
MOVF main_global_value_1,W
SUBLW 0
BTFSC STATUS,C
GOTO L_dac_9
L_dac_12:
MOVLW 1
SUBWF main_global_value_1,F
BTFSS STATUS,C
SUBWF main_global_value_2,F
GOTO L_dac_10
L_dac_9:
L_dac_10:
GOTO L_dac_5
L_dac_5:
MOVF main_global_value_1,W
MOVWF dac_dac_output_param_Value_1
MOVF main_global_value_2,W
MOVWF dac_dac_output_param_Value_2
CALL dac_dac_output
MOVLW 2
MOVWF STACK_1
MOVLW 255
MOVWF STACK_2
MOVLW 255
MOVWF STACK_3
DECFSZ STACK_1,F
GOTO $+2
GOTO $+8
DECFSZ STACK_2,F
GOTO $+2
GOTO $+4
DECFSZ STACK_3,F
GOTO $-1
GOTO $-5
GOTO $-9
MOVLW 6
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 10
MOVWF STACK_1
DECFSZ STACK_1,F
GOTO $-1
GOTO L_dac_1
L_dac_2:
GOTO $

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru