It's working great now, I've got it reading both X and Y axis's, which required me to write to the AIS226 at least once. I'm hitting a small problem, it appears I'm buggering the LCD some how. I've seen this before, but was ignoring it. It appears that if I write too many commands to the LCD it will lock up. For example, the below code displays as expected.
//fnLCD_display_hex(95,50,"hex X",fnSPI_AIS226(OUTX_L, READ, 0x00));
//fnLCD_display_hex(85,50,"",fnSPI_AIS226(OUTX_H, READ, 0x00));
fnLCD_display_hex(95,60,"hex Y",fnSPI_AIS226(OUTY_L, READ, 0x00));
fnLCD_display_hex(85,60,"",fnSPI_AIS226(OUTY_H, READ, 0x00));
If I uncomment the X and comment the Y, it also works. However if I uncomment both the X and the Y, the LCD locks up. I still get the heartbeat LED, but the LCD stop reacting. I set a small blinking box on the LCD, which functions as a LCD heartbeat indicator. When the LCD locks up, this blinking box stops blinking. I'm curious what causes the LCD to stop reacting. Perhaps I shouldn't be constantly refreshing nearly the entire screen every .2 seconds. I might guess I'm exceeding a buffer limit or something. Perhaps I should check a buffer before I write an LCD command.
Another thing I'd like to iron out if possible, is how to fix the mild watch dog issues. I seem to recall a note that if you reboot while in the middle of a watch dog event, it won't boot up. This is simply resolved on this board via reset switch. That seems to bring it back out of this issue. Is there a way to make it always work?