威廉希尔官方网站 设计william hill官网
直播中

李勇

7年用户 1310经验值
私信 关注
[问答]

通过arduino SPI读取AD7190的数值一直为0是为什么?

我手里有一块ad7190的评估板(ad7190 EBZ),我通过arduino的SPI读取AD7190的数值出现问题。
arduino板为duemilanove,arduino的13接SCLK,12接DOUT,11接DIN,10接/CS。
写一个简单的通信都没有通过,请帮忙看看。读取状态值。
#include  
const int chipSelectPin = 10;
void setup() {
   Serial.begin(9600);
   SPI.begin();
   SPI.setClockDivider(SPI_CLOCK_DIV4);//设置sclk为4MHz
   delay(1);
   SPI.setDataMode(SPI_MODE2);//设置为模式2,模式3也试过
   delay(1);
   SPI.setBitOrder(MSBFIRST);
   delay(1);
   pinMode(chipSelectPin, OUTPUT);
   digitalWrite(chipSelectPin,HIGH);
   delay(1);  
}
void loop() {
   unsigned char result=01;
   digitalWrite(chipSelectPin, LOW);//使能/CS
   delay(1);
   SPI.transfer(0b01000000);//写通信寄存器,为下一步读取状态寄存器
   result = SPI.transfer(0x00);//读取数据
   Serial.print(result,BIN);//串口输出数据
   delay(1000);
}
显示结果为0,一直都只有一个0,求解答。

更多回帖

发帖
×
20
完善资料,
赚取积分