;///////////////////////////////////////////////////////////////////////////////// ;// Code Generator: BoostC Compiler - http://www.sourceboost.com ;// Version : 6.81 ;// License Type : Full License ;// Limitations : PIC12,PIC16 max code size:Unlimited, max RAM banks:Unlimited, Non commercial use only ;///////////////////////////////////////////////////////////////////////////////// include "P12F683.inc" ; Heap block 0, size:80 (0x00000030 - 0x0000007F) __HEAP_BLOCK0_BANK EQU 0x00000000 __HEAP_BLOCK0_START_OFFSET EQU 0x00000030 __HEAP_BLOCK0_END_OFFSET EQU 0x0000007F ; Heap block 1, size:32 (0x000000A0 - 0x000000BF) __HEAP_BLOCK1_BANK EQU 0x00000001 __HEAP_BLOCK1_START_OFFSET EQU 0x00000020 __HEAP_BLOCK1_END_OFFSET EQU 0x0000003F ; Heap block 2, size:0 (0x00000000 - 0x00000000) __HEAP_BLOCK2_BANK EQU 0x00000000 __HEAP_BLOCK2_START_OFFSET EQU 0x00000000 __HEAP_BLOCK2_END_OFFSET EQU 0x00000000 ; Heap block 3, size:0 (0x00000000 - 0x00000000) __HEAP_BLOCK3_BANK EQU 0x00000000 __HEAP_BLOCK3_START_OFFSET EQU 0x00000000 __HEAP_BLOCK3_END_OFFSET EQU 0x00000000 gbl_status EQU 0x00000003 ; bytes:1 gbl_indf EQU 0x00000000 ; bytes:1 gbl_tmr0 EQU 0x00000001 ; bytes:1 gbl_pcl EQU 0x00000002 ; bytes:1 gbl_fsr EQU 0x00000004 ; bytes:1 gbl_gpio EQU 0x00000005 ; bytes:1 gbl_pclath EQU 0x0000000A ; bytes:1 gbl_intcon EQU 0x0000000B ; bytes:1 gbl_pir1 EQU 0x0000000C ; bytes:1 gbl_tmr1l EQU 0x0000000E ; bytes:1 gbl_tmr1h EQU 0x0000000F ; bytes:1 gbl_t1con EQU 0x00000010 ; bytes:1 gbl_tmr2 EQU 0x00000011 ; bytes:1 gbl_t2con EQU 0x00000012 ; bytes:1 gbl_ccpr1l EQU 0x00000013 ; bytes:1 gbl_ccpr1h EQU 0x00000014 ; bytes:1 gbl_ccp1con EQU 0x00000015 ; bytes:1 gbl_wdtcon EQU 0x00000018 ; bytes:1 gbl_cmcon0 EQU 0x00000019 ; bytes:1 gbl_cmcon1 EQU 0x0000001A ; bytes:1 gbl_adresh EQU 0x0000001E ; bytes:1 gbl_adcon0 EQU 0x0000001F ; bytes:1 gbl_option_reg EQU 0x00000081 ; bytes:1 gbl_trisio EQU 0x00000085 ; bytes:1 gbl_pie1 EQU 0x0000008C ; bytes:1 gbl_pcon EQU 0x0000008E ; bytes:1 gbl_osccon EQU 0x0000008F ; bytes:1 gbl_osctune EQU 0x00000090 ; bytes:1 gbl_pr2 EQU 0x00000092 ; bytes:1 gbl_wpu EQU 0x00000095 ; bytes:1 gbl_wpua EQU 0x00000095 ; bytes:1 gbl_ioc EQU 0x00000096 ; bytes:1 gbl_ioca EQU 0x00000096 ; bytes:1 gbl_vrcon EQU 0x00000099 ; bytes:1 gbl_eedata EQU 0x0000009A ; bytes:1 gbl_eeadr EQU 0x0000009B ; bytes:1 gbl_eecon1 EQU 0x0000009C ; bytes:1 gbl_eecon2 EQU 0x0000009D ; bytes:1 gbl_adresl EQU 0x0000009E ; bytes:1 gbl_ansel EQU 0x0000009F ; bytes:1 gbl_sequence EQU 0x00000020 ; bytes:8 do_cap_sen_00015_arg_led EQU 0x0000002C ; bytes:1 CompTempVarRet503 EQU 0x0000002F ; bytes:1 do_cap_sen_00015_1_ctr EQU 0x0000002E ; bytes:1 CompTempVarRet504 EQU 0x0000002C ; bytes:1 main_1_alpha EQU 0x00000028 ; bytes:1 main_1_i EQU 0x00000029 ; bytes:1 main_1_si EQU 0x0000002A ; bytes:1 main_1_brightest EQU 0x0000002B ; bytes:1 delay_ms_00000_arg_del EQU 0x0000002D ; bytes:1 delay_s_00000_arg_del EQU 0x0000002C ; bytes:1 ORG 0x00000000 GOTO _startup ORG 0x00000003 delay_ms_00000 ; { delay_ms ; function begin label4026531856 NOP NOP NOP NOP NOP NOP NOP DECFSZ delay_ms_00000_arg_del, F GOTO label4026531856 RETURN ; } delay_ms function end ORG 0x0000000D delay_s_00000 ; { delay_s ; function begin label4026531861 MOVLW 0xFA MOVWF delay_ms_00000_arg_del CALL delay_ms_00000 MOVLW 0xFA MOVWF delay_ms_00000_arg_del CALL delay_ms_00000 MOVLW 0xFA MOVWF delay_ms_00000_arg_del CALL delay_ms_00000 MOVLW 0xFA MOVWF delay_ms_00000_arg_del CALL delay_ms_00000 DECFSZ delay_s_00000_arg_del, F GOTO label4026531861 RETURN ; } delay_s function end ORG 0x0000001C do_cap_sen_00015 ; { do_cap_sense ; function begin CLRF do_cap_sen_00015_1_ctr BSF STATUS, RP0 CLRF gbl_trisio BCF STATUS, RP0 INCF do_cap_sen_00015_arg_led, W MOVWF gbl_gpio MOVLW 0x20 MOVWF gbl_gpio BSF STATUS, RP0 MOVWF gbl_trisio BCF STATUS, RP0 CLRF do_cap_sen_00015_1_ctr label268438947 BTFSS gbl_gpio,5 GOTO label268438948 MOVLW 0xFF SUBWF do_cap_sen_00015_1_ctr, W BTFSC STATUS,C GOTO label268438948 INCF do_cap_sen_00015_1_ctr, F GOTO label268438947 label268438948 BSF STATUS, RP0 CLRF gbl_trisio BCF STATUS, RP0 MOVF do_cap_sen_00015_1_ctr, W MOVWF CompTempVarRet503 RETURN ; } do_cap_sense function end ORG 0x00000036 is_night_00000 ; { is_night ; function begin BCF STATUS, RP0 CLRF do_cap_sen_00015_arg_led CALL do_cap_sen_00015 MOVF CompTempVarRet503, W SUBLW 0xFE BTFSC STATUS,C GOTO label268438960 MOVLW 0x01 MOVWF CompTempVarRet504 RETURN label268438960 CLRF CompTempVarRet504 RETURN ; } is_night function end ORG 0x00000042 main ; { main ; function begin BCF STATUS, RP0 CLRF main_1_brightest BSF STATUS, RP0 BSF gbl_option_reg,7 label268438975 CALL is_night_00000 MOVF CompTempVarRet504, F BTFSC STATUS,Z GOTO label268438979 MOVLW 0x70 BSF STATUS, RP0 MOVWF gbl_osccon CLRF gbl_trisio BCF STATUS, RP0 CLRF main_1_si label268438984 MOVLW 0x08 SUBWF main_1_si, W BTFSC STATUS,C GOTO label268438985 CLRF main_1_alpha label268438988 MOVLW 0x80 SUBWF main_1_alpha, W BTFSC STATUS,C GOTO label268438989 MOVLW LOW(gbl_sequence+D'0') MOVWF FSR MOVF main_1_si, W ADDWF FSR, F MOVLW 0x07 ANDWF INDF, W MOVWF gbl_gpio CLRF main_1_i label268438994 MOVLW 0x80 SUBWF main_1_i, W BTFSC STATUS,C GOTO label268438995 MOVF main_1_alpha, W XORWF main_1_i, W BTFSC STATUS,Z CLRF gbl_gpio INCF main_1_i, F GOTO label268438994 label268438995 MOVLW LOW(gbl_sequence+D'0') MOVWF FSR MOVF main_1_si, W ADDWF FSR, F MOVF INDF, W MOVWF delay_ms_00000_arg_del CALL delay_ms_00000 INCF main_1_alpha, F GOTO label268438988 label268438989 MOVLW LOW(gbl_sequence+D'0') MOVWF FSR MOVF main_1_si, W ADDWF FSR, F MOVLW 0x02 MOVWF do_cap_sen_00015_arg_led CALL do_cap_sen_00015 MOVF CompTempVarRet503, W ADDWF INDF, F MOVLW 0x80 MOVWF main_1_alpha label268439015 MOVF main_1_alpha, F BTFSC STATUS,Z GOTO label268439016 MOVLW LOW(gbl_sequence+D'0') MOVWF FSR MOVF main_1_si, W ADDWF FSR, F MOVLW 0x07 ANDWF INDF, W MOVWF gbl_gpio CLRF main_1_i label268439021 MOVLW 0x80 SUBWF main_1_i, W BTFSC STATUS,C GOTO label268439022 MOVF main_1_alpha, W XORWF main_1_i, W BTFSC STATUS,Z CLRF gbl_gpio INCF main_1_i, F GOTO label268439021 label268439022 MOVLW LOW(gbl_sequence+D'0') MOVWF FSR MOVF main_1_si, W ADDWF FSR, F MOVF INDF, W MOVWF delay_ms_00000_arg_del CALL delay_ms_00000 DECF main_1_alpha, F GOTO label268439015 label268439016 INCF main_1_si, F GOTO label268438984 label268438985 MOVLW 0xFF BSF STATUS, RP0 MOVWF gbl_trisio CLRF gbl_osccon MOVLW 0x0A BCF STATUS, RP0 MOVWF delay_s_00000_arg_del CALL delay_s_00000 MOVLW 0x01 MOVWF do_cap_sen_00015_arg_led CALL do_cap_sen_00015 MOVF CompTempVarRet503, W MOVWF delay_ms_00000_arg_del CALL delay_ms_00000 GOTO label268438975 label268438979 CLRF main_1_i label268439053 MOVLW 0x02 SUBWF main_1_i, W BTFSC STATUS,C GOTO label268438975 MOVLW 0x3C MOVWF delay_s_00000_arg_del CALL delay_s_00000 INCF main_1_i, F GOTO label268439053 ; } main function end ORG 0x000000B8 _startup MOVLW 0x01 BCF STATUS, RP0 MOVWF gbl_sequence MOVLW 0x22 MOVWF gbl_sequence+D'1' MOVLW 0x33 MOVWF gbl_sequence+D'2' MOVLW 0x64 MOVWF gbl_sequence+D'3' MOVLW 0x85 MOVWF gbl_sequence+D'4' MOVLW 0x16 MOVWF gbl_sequence+D'5' MOVLW 0x17 MOVWF gbl_sequence+D'6' MOVLW 0x13 MOVWF gbl_sequence+D'7' BCF PCLATH,3 BCF PCLATH,4 GOTO main ORG 0x00002007 DW 0x3C94 END