Chris Carl

SCI interrupt in assembly

Discussion created by Chris Carl on Apr 13, 2010
Latest reply on Apr 14, 2010 by hotwolf

Hey guys,


I am trying to interface with a C328 UART camera, and I'm running into some problems.


I have it hooked up and the first step is to send an SYNC message.  I do that fine and i start to receive the ACK message.  I got the first byte (0xAA), but then the next byte is supposed to be 0x0F or 0x0E, followed by 4 bytes of 0x00.  My problem is that after i receive the AA, i only get 3 of the other bytes and they are all 0x00.  Does this mean that it is overwriting the second byte before I obtain it?  I have tried it at 14,400 and 115,200 but get the same results.


Here are my thoughts:  I do not have interrupt routines, i just monitor the appropriate bit to see if the receive buffer has any information for me.  I receive the byte, then print it in hex to the HyperTerminal to verify the value.  Am i doing too much in between receiving this?


Should I set it up so that the interrupt routine will get the value and store it in a buffer until it gets the entire command then process it? 


I am programming it in assembly and i am also not familiar with how to do the interrupt service routines.  I have used the mc9s12c32 and can use those interrupt service routines, but I am not sure how to do it as far as initializing the routine because it seems to follow a different format/process.


Any comments would be greatly appreciate :smileyhappy: