1. I'm currently using eZ430 to acquire data from a compass module through i2c interface. The data coming from the compass module is two bytes, and based on my understanding on i2c protocol, msp320 needs to send an ACK to the compass after the first byte is read, then receive the second byte followed by a NACK + STOP. I haven't been able to find a solution to this. Is sending an ACK automatically taken care by the interrupt or something else? What is the code and the correct order to acquire two bytes from a I2C slave in master transmitter mode?
(I also checked both SDK and SCL with a scope. No ACK was sent by the code I'm having right now. Instead, the second byte was missing, DSK and SCL were both high)
2. The second question is about CCSv4. I was setting up several watch variables in CCS, and trying to monitor the received data bytes. I declare them as unsigned char. However, CCS has failed to give me any information about those variables.
I basically have
RxByte1 = UCB0RXBUF;
...
RxByte2 = UCB0RXBUF;
Of course, with my first problem, the second byte is missing but I'm still expecting something shows up for RxByte1. However, CCS has always showed a dot for the value of RxByte1. I'm wondering what's going on here?
Any help will be highly appreciated! Please point out my misunderstanding on any issues here.
Thanks!