les envio el codigo para lograr una recepcion serila y enviarla por puerto serial usando interrupciones
$include 'gpgtregs.inc'
FLASH EQU $8000
RAM EQU $0040
VectorStart EQU $FFDC
org RAM
p1 ds 1
p2 ds 1
p3 ds 1
m3 ds 1
m2 ds 1
m1 ds 1
del1 DS 1
del DS 1
del0 DS 1
r1 ds 1
r2 ds 1
r3 ds 1
r4 ds 1
war ds 1
org FLASH
$include 'lcd1.inc'
confini:
bset 0,CONFIG1 ;deshabilita el cop
rsp ;RESETEO DEL SP
cli ;permite que ocurra una interrupcion
clc ;inicia en 0 el carry
clra ;limpia el acumulador
clr r1
CLI ; Enable interrupts
MOV #$01,CONFIG2
mov #%11111111,DDRA ;se configura el PORT C 1 como salida
clr PTA
mov #%11111111,DDRC
clr PTB
mov #%00000000,DDRB
CLR PTC
jsr delay15m
jsr initializacion
CLR SCC1 ; Disable the SCI module
LDA SCS1 ; Dummy read of the SCS1 registr to clear flags
LDA SCS2 ; Dummy read of the SCS2 registr to clear flags
LDA SCDR ; Dummy read of the SCDR registr to clear flags
CLR SCC3
ldx #$54
MOV #$01,SCBR
MOV #$40,SCC1
MOV #$2c,SCC2
ciclo:
nop
jmp ciclo
wait
ver:
BSET 0,PTC
sta PTA
JSR enable
CLR PTC
rts
**************************************************************
* DUMMY_ISR - Dummy Interrupt Service Routine. *
* Just does a return from interrupt. *
**************************************************************
dummy_isr:
rti ; return
reception:
ldx scdr
brset 0,SCS2,*
bclr 5,scs1
LDA SCC1
LDA SCS1
LDA SCS2
LDA SCDR
STA SCDR
brset 6,SCS1,*
RTI
RTI
**************************************************************
* Vectors - Timer Interrupt Service Routine. *
* after a RESET. *
**************************************************************
org VectorStart
dw dummy_isr ; Time Base Vector
dw dummy_isr ; ADC Conversion Complete
dw dummy_isr ; Keyboard Vector
dw dummy_isr ; SCI Transmit Vector
dw reception ; SCI Receive Vector
dw dummy_isr ; SCI Error Vector
dw dummy_isr ; SPI Transmit Vector
dw dummy_isr ; SPI Receive Vector
dw dummy_isr ; TIM2 Overflow Vector
dw dummy_isr ; TIM2 Channel 1 Vector
dw dummy_isr ; TIM2 Channel 0 Vector
dw dummy_isr ; TIM1 Overflow Vector
dw dummy_isr ; TIM1 Channel 1 Vector
dw dummy_isr ; TIM1 Channel 0 Vector
dw dummy_isr ; ICG/CGM Vector
dw dummy_isr ; ~IRQ1 Vector
dw dummy_isr ; SWI Vector
dw confini ; Reset Vector