ADI 技术
直播中

刘佳

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

ad7190和arduino通信失败

我手里有一块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,求解答。

回帖(5)

刘佳

2019-3-11 09:49:29
受到警告
提示: 作者被禁止或删除 内容自动屏蔽
举报

卢兰凤

2019-3-11 10:17:59
您是否可以直接将SPI的读写时序波形上传一下呢?通过示波器测量的SPI波形可以很直观的看出SPI会有哪些时序问题的。
举报

刘佳

2019-3-11 10:26:30

好的,我看到确实是0
举报

刘佳

2019-3-11 10:34:36
引用: 456162dss 发表于 2019-3-11 10:26
好的,我看到确实是0

可是切换到板上的显示,又是正常的。
和sync这个接口有没有关系?
举报

更多回帖

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