This can work just fine:
1. Set up a timer interrupt at 10ms. Or even at 1ms and after ten int's do step 2.
2. Every interrupt read the buttons into the arrays. You can use a low priority interrupt if the PIC supports it.
3. Either with or without interrupt use the hardware USART to communicate. If you choose interrupt driven USART, use it as high priority, or Disable as long as you do serial, the timer interrupt.
Problem solved.
Ioannis
Bookmarks