Your I2C relies on interrupts, so running it from your P1 ISR is a mistake. The bus is presumably stalled waiting for your program to give it some Tx data, but it never will since interrupts are disabled. I recommend you use the P1 ISR to (only) store a "request" to main() and run the I2C from there.
↧