?? clock.lst
字號:
0156 206E 00560 CALL INIT_DISPLAY ;
0157 2075 00561 CALL DISPLAY ;
00562 ;
0158 300E 00563 MOVLW 0x0E
0159 0090 00564 MOVWF T1CON ; Enable T1 Oscillator, Ext Clock, Async, prescaler = 1
015A 1410 00565 BSF T1CON, TMR1ON ; Turn Timer 1 ON
00566 ;
00567 if ( PICMaster )
00568 lzz goto lzz ; Loop waiting for interrupts (for use with PICMASTER)
00569 else
00570 ;
015B 0063 00571 SLEEP_LP SLEEP ; Wait for Change on PORTB interrupt. or TMR1 timeout
015C 0000 00572 NOP ;
015D 295B 00573 GOTO SLEEP_LP ;
00574 ;
00575 endif
00576 ;
00577 ; Here is where you do things depending on the type of RESET (Not a Power-On Reset).
00578 ;
015E 1E03 00579 OTHER_RESET BTFSS STATUS,NOT_TO ; WDT Time-out?
015F 28D0 00580 WDT_TIMEOUT GOTO ERROR1 ; YES, This is error condition
00581 if ( Debug_PU )
0160 290C 00582 goto START ; MCLR reset, Goto START
00583 else
00584 GOTO MCLR_RESET ; MCLR reset, Goto MCLR_RESET
00585 endif
00586 ;
00587 if (Debug )
00588 END_START NOP ; END lable for debug
00589 endif
00590 ;
MPASM 01.40 Released CLOCK.ASM 1-16-1997 17:05:59 PAGE 14
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
00591 page
00592 ;
0400 00593 org TABLE_ADDR
00594 ;
0400 00B5 00595 NUM_TABLE MOVWF TEMP ; Store value to TEMP register
0401 3004 00596 MOVLW HIGH (TABLE_ADDR) ; Ensure that the PCLATH high has the
0402 008A 00597 MOVWF PCLATH ; correct value
0403 0835 00598 MOVF TEMP, W ; Value into table
0404 390F 00599 ANDLW 0x0F ; Mask to 4-bits (00 - 0Fh)
0405 0782 00600 NUM_TBL ADDWF PCL, F ; Determine Offset into table
0406 3430 00601 RETLW '0' ; ASCII value of "0" in W register
0407 3431 00602 RETLW '1' ; ASCII value of "1" in W register
0408 3432 00603 RETLW '2' ; ASCII value of "2" in W register
0409 3433 00604 RETLW '3' ; ASCII value of "3" in W register
040A 3434 00605 RETLW '4' ; ASCII value of "4" in W register
040B 3435 00606 RETLW '5' ; ASCII value of "5" in W register
040C 3436 00607 RETLW '6' ; ASCII value of "6" in W register
040D 3437 00608 RETLW '7' ; ASCII value of "7" in W register
040E 3438 00609 RETLW '8' ; ASCII value of "8" in W register
040F 3439 00610 RETLW '9' ; ASCII value of "9" in W register
00611 ; Any enter after is in error (Display an E)
0410 3445 00612 RETLW 'E' ; ASCII value of "E" in W register
0411 3445 00613 RETLW 'E' ; ASCII value of "E" in W register
0412 3445 00614 RETLW 'E' ; ASCII value of "E" in W register
0413 3445 00615 RETLW 'E' ; ASCII value of "E" in W register
0414 3445 00616 RETLW 'E' ; ASCII value of "E" in W register
0415 3445 00617 NUM_TBL_END RETLW 'E' ; ASCII value of "E" in W register
00618 ;
00619 if ( (NUM_TBL & 0xFF00) != (NUM_TBL_END & 0xFF00) )
00620 MESSG "Warning: Table NUM_TBL crosses page boundry in computed jump"
00621 endif
00622 ;
00623 ;
07FF 00624 org PMEM_END ; End of Program Memory
07FF 28D0 00625 GOTO ERROR1 ; If you get here your program was lost
00626
00627 end
MPASM 01.40 Released CLOCK.ASM 1-16-1997 17:05:59 PAGE 15
SYMBOL TABLE
LABEL VALUE
ADCON0 0000001F
ADCON1 0000009F
ADCS0 00000006
ADCS1 00000007
ADIE 00000006
ADIF 00000006
ADON 00000000
ADRES 0000001E
AM 00000007
BF 00000000
BIN_2_BCD 000000C7
BRGH 00000002
BUSY_CHECK 000000F2
C 00000000
CCP1CON 00000017
CCP1IE 00000002
CCP1IF 00000002
CCP1M0 00000000
CCP1M1 00000001
CCP1M2 00000002
CCP1M3 00000003
CCP1X 00000005
CCP1Y 00000004
CCP2CON 0000001D
CCP2IE 00000000
CCP2IF 00000000
CCP2M0 00000000
CCP2M1 00000001
CCP2M2 00000002
CCP2M3 00000003
CCP2X 00000005
CCP2Y 00000004
CCPR1H 00000016
CCPR1L 00000015
CCPR2H 0000001C
CCPR2L 0000001B
CHAR 00000036
CHS0 00000003
CHS1 00000004
CHS2 00000005
CKP 00000004
CK_13 00000067
CLR_DISP 00000001
CLR_MIN 00000035
CLR_MIN_SW 00000005
CLR_RB 00000023
CMD_SEQ 00000140
CREN 00000004
CSRC 00000007
D 00000005
DATA_ADDRESS 00000005
DB_HI_BYTE 00000002
DC 00000001
DD_RAM_ADDR 00000080
DD_RAM_UL 00000080
DEBOUNCE 0000000B
DISPLAY 00000075
DISPLAY_INIT 00000135
DISP_OFF 00000008
DISP_ON 0000000C
MPASM 01.40 Released CLOCK.ASM 1-16-1997 17:05:59 PAGE 16
SYMBOL TABLE
LABEL VALUE
DISP_ON_B 0000000F
DISP_ON_C 0000000E
D_A 00000005
Debug 00000000
Debug_PU 00000001
Dev_Freq 003D0900
E 00000000
END_DELAY 00000013
END_LCD_DELAY 0000013F
ENTRY_DEC 00000004
ENTRY_DEC_S 00000005
ENTRY_INC 00000006
ENTRY_INC_S 00000007
ERROR1 000000D0
F 00000001
FALSE 00000000
FERR 00000002
FLAG_REG 00000020
FLASH_UNITS 0000007D
FSR 00000004
GIE 00000007
GO 00000002
GO_DONE 00000002
HRS 00000030
HR_MIN_SW 00000007
HR_UNIT 00000000
HR_UNITS 00000087
I2C_DATA 00000005
I2C_READ 00000002
I2C_START 00000003
I2C_STOP 00000004
IBF 00000007
IBOV 00000005
INC_HRS 0000005C
INC_SW 00000006
INC_TIME 0000004F
INC_UNIT 0000002B
INDF 00000000
INIT_DISPLAY 0000006E
INNER_CNTR 00000040
INTCON 0000000B
INTE 00000004
INTEDG 00000006
INTF 00000001
IRP 00000007
ISR_V 00000004
KB_D_LP1 0000000F
KEY_INPUT 00000004
KEY_MATCH 00000018
LCD_CNTL 00000005
LCD_DATA 00000006
LCD_DATA_TRIS 00000086
LCD_DELAY 00000139
LCD_INIT_DELAY 00000006
LOAD_AM 000000BB
LOAD_COLON 000000AD
LOAD_HRS 000000A4
LOAD_MIN 000000B2
LOOP2 0000013C
LSD 00000034
MPASM 01.40 Released CLOCK.ASM 1-16-1997 17:05:59 PAGE 17
SYMBOL TABLE
LABEL VALUE
MCLR_RESET 00000117
MIN 00000031
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -