Re: DT_INTS and 18F26k22
Mike, Here are some snipits from a program I wrote about 4 years ago:
TX485 VAR PORTB.6 '0-OUTPUT COMMUNICATIONS PORT PIN RS-485
RX485 VAR PORTB.7 '1-INPUT COMMUNICATIONS PORT PIN RS-485
TX232 VAR PORTC.6 '0-OUTPUT COMMUNICATIONS PORT PIN RS-232
RX232 VAR PORTC.7 '1-INPUT COMMUNICATIONS PORT PIN RS-232
BAUD1 CON 416 'TX/RX BAUD RATE (64000000/4/38400) - 1 (HIGH BAUD/16 BIT)
BAUD2 CON 416 'TX/RX BAUD RATE (64000000/4/38400) - 1 (HIGH BAUD/16 BIT)
BAUDCON1 = %00001000 'SET FOR 16 BIT BAUDRATE
SCRATCH = BAUD1
SPBRG1 = SCRATCH.LOWBYTE 'SET LOW BYTE OF BAUD GENERATOR
SPBRGH1 = SCRATCH.HIGHBYTE 'SET HIGH BYTE OF BAUD GENERATOR
RCSTA1 = %10010000 'ENABLE RECEIVER,CONTINUOUS
TXSTA1 = %00100100 'ENABLE TRANSMIT,HIGH BAUD
BAUDCON2 = %00001000 'SET FOR 16 BIT BAUDRATE
SCRATCH = BAUD2
SPBRG2 = SCRATCH.LOWBYTE 'SET LOW BYTE OF BAUD GENERATOR
SPBRGH2 = SCRATCH.HIGHBYTE 'SET HIGH BYTE OF BAUD GENERATOR
RCSTA2 = %10010000 'ENABLE RECEIVER,CONTINUOUS
TXSTA2 = %00100100 'ENABLE TRANSMIT,HIGH BAUD
'************************************************* ********************
asm
INT_LIST macro ; IntSource, Label, Type, ResetFlag?
INT_Handler TX1_INT, _UARTTX1, PBP, no
INT_Handler RX1_INT, _UARTRX1, PBP, no
INT_Handler TX2_INT, _UARTTX2, PBP, no
INT_Handler RX2_INT, _UARTRX2, PBP, no
endm
INT_CREATE ; Creates the High Priority interrupt processor
ENDASM
@ INT_ENABLE RX1_INT ; Enable RX UART Interrupts
@ INT_ENABLE RX2_INT ; Enable RX UART Interrupts
GOTO MAINLOOP 'JUMP OVER INTERRUPTS
'************************************************* ********************
UARTRX1: 'INTERRUPT SERVICE ROUTINE FOR UART RECEIVER
'************************************************* ********************
@ INT_RETURN
'************************************************* ********************
UARTTX1: 'INTERRUPT SERVICE ROUTINE FOR UART TRANSMITTER
'************************************************* ********************
@ INT_RETURN
'************************************************* ********************
UARTRX2: 'INTERRUPT SERVICE ROUTINE FOR UART RECEIVER
'************************************************* ********************
@ INT_RETURN
'************************************************* ********************
UARTTX2: 'INTERRUPT SERVICE ROUTINE FOR UART TRANSMITTER
'************************************************* ********************
@ INT_RETURN
' ************************************************** ******************
Dave Purola,
N8NTA
EN82fn
Bookmarks