#include p18f458.inc COUNT EQU 0x0B BUFRAM EQU 0x20 MOVLW D'8' MOVWF COUNT MOVLW 0H MOVWF EEADR MOVLW upper (CODE_DATA) MOVWF TBLPTRU MOVLW high (CODE_DATA) MOVWF TBLPTRH MOVLW low (CODE_DATA) MOVWF TBLPTRL READ_BLOCK TBLRD*+ MOVF TABLAT, W MOVWF EEDATA CALL EE_WRT INCF EEADR,F DECFSZ COUNT BRA READ_BLOCK BSF TRISD,7 MOVLW 0x20 MOVWF TXSTA BCF PIR1,TXIF MOVLW D'15' MOVWF SPBRG BCF TRISC, TX BSF RCSTA, SPEN MOVLW 8 MOVWF COUNT MOVLW 0x0 MOVWF EEADR CLRF TRISB MOVLW 0x8 MOVWF COUNT LN CALL EE_RD CALL SENDCOM INCF EEADR,F DECFSZ COUNT BRA LN HERE BRA HERE SENDCOM S1 BTFSS PIR1, TXIF BRA S1 MOVWF TXREG RETURN EE_WRT BCF EECON1,EEPGD BCF EECON1,CFGS BSF EECON1,WREN BCF INTCON,GIE MOVLW 0x55 MOVWF EECON2 MOVLW 0xAA MOVWF EECON2 BSF EECON1,WR BSF INTCON,GIE EE_WAIT BTFSS PIR2,EEIF BRA EE_WAIT BCF PIR2,EEIF RETURN EE_RD BCF EECON1, EEPGD BCF EECON1, CFGS BSF EECON1, RD MOVF EEDATA, W RETURN ORG 0x0300 CODE_DATA DATA "MOVE ME" END