ADS7229的使用
笑亦无涯 2017-09-11 01:38:24 不知道有没有用过ADS7229模数转换的ADC,用的是Mega128A,现在遇到问题初始化都进行不下去,配置内部寄存器后回读有问题,如果有用过的大大可以指点一下,谢谢!
//SPI配置后,配置ADS7229
spi_write(0x0E); //write CFR
spi_write(0x0D); //CFR D11-D8
spi_write(0xFD); //CFR D7-D0
CFR_DATA = spi_read(0x0C); //read CFR
//回读配置的值
uint16 spi_read(uint8 read_cmd)
{
uint16 temp = 0;
SPSR = 0; //CLEAR ERROR AND FLAG
//send the command
SPDR = read_cmd;
while((SPSR & 0X80) != 0X80); //WAIT THE DATA BYTE SEND END
SPSR = 0;
//read the data
while((SPSR & 0X80) != 0X80); //WAIT THE DATA BYTE SEND END
temp = SPDR << 8;
SPSR = 0;
while((SPSR & 0X80) != 0X80); //WAIT THE DATA BYTE SEND END
temp |= SPDR;
SPSR = 0;
return temp;
}