I'm using AD7195 ADC with ADuC845 microcontroller. I wrote C code based on bit banging with GPIO for SPI communications. Everything is working well. I can read and write registers and read 24 bit conversion data in low sampling rates such as 4.7 Hz. But when I increased the sampling rate to the 4.8 kHz, I get wrong data. I found that ADuC845 GPIO pin speed for SPI bit banging is being slow for high sampling rates. My question is how can I use the SPI port (real hardware SPI port) on ADuC845 to communication with AD7195?