This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

USART1 Transmits fine - does not receive

Other Parts Discussed in Thread: MSP430F169

MSP430F169 on Olimex board.

 

I have been using the transmit fuction on UART1 for some time and it works fine. Now I need to receive. Both transmit and receive are connected to a PC through a USB PA5 device. I transmit a single byte to port pin 3.7 and can monitor it on my scope. The signal is there but no receive interrupt results.

The set up code is:

mov.b    #07Fh, P3DIR           ; Set P3  as OUTPUT (except UART rcv)           

 bis.b    #0C0h, P3SEL           ; UART1 Transmit/Recieve

 bis.b    #SWRST, U1CTL       ; Disable UART control register        

bis.b    #010h, U1CTL         ; 8 bit data           

mov.b    #064h, U1BR0        ; 9600 Baud 1 MHz SM clock           

mov.b    #0, U1BR1             ;           

 bis.b    #02h, U1MCTL        ;           

bis.b    #030h, U1TCTL       ; Transmit ctrl reg SM clk           

bis.b    #030h, ME2             ; Enable UART1 Transmit and Recieve           

bis.b    #URXIE1, IE2         ; Enable recieve interrupt          

bis.b    #010h, 01h              ;    "       "      "           

bic.b    #SWRST, U1CTL       ; Enable UART control register

The interrupt vector is:

ORG     0FFE6h            

DW      URCV

 

URCV: just turns on an LED (or would if it was working)

 

When I run the set up routine - break - and look at memory, location 01h is supposed to have the UART1 interrupt enable bit set. That byte is always 0. I assume that's the problem - must be doing something wrong.

 

Thanks,

 

Tom

 

 

 

**Attention** This is a public forum