2016-10-09 22 views
0

我第一次使用intel XDK,并试图从此SPI ADC读取ADS7951SRGER 12位模数转换器8输入1 SAR 24 VQFN(4×4)http://www.ti.com/lit/ds/symlink/ads7950.pdf丢失,尝试使用intel XDC和节点将Intel Edison SPI连接到ADC

其连接,像这样

SPI_2_RXD -> MISO 
SPI_2_TXD -> MOSI 
SPI_2_CLK -> SCLK 
SPI_2_FS0 -> ADC_CS 

我从来没有使用SPI,我很失落。我一直在寻找24小时的时间,而且我并没有更多地了解我应该在这里做什么。

这里是我正在尝试的当前冰雹玛丽代码。所有我得到的回复是FFFFFFFF

var x = new m.Spi(0); 
x.bitPerWord=12; 
x.frequency = 20; 


var buf = new Buffer(4); 
buf[0] = char('0x0b'); 
buf[1] = char('0x11'); 
buf[2] = char('0x11'); 
buf[3] = char('0x11'); 
var buf2 = x.write(buf); 


console.log("Sent: " + buf.toString('hex') + ". Received: " + buf2.toString('hex')); 

任何帮助表示赞赏

+0

尝试''\ x0b''而不是'char('0x0b')'。 –

+0

感谢您的回复,我试着'\ x0b'它没有改变回复 – user3634054

+0

您能显示'char'函数的定义吗? –

回答

0

最后,我不得不退出了CS(SPI_2_FS0 - > ADC_CS)手动,每次写之前拉低/读取然后再高。

+0

这很奇怪。司机必须为你做这件事。但看着老核,我的眼睛流下了眼泪。尝试玩上游内核。 (我的ADC支持爱迪生Arduino在我的TODO列表中,但SPI在PIO模式下工作很好) – 0andriy

+0

我只是很高兴它的工作原理。我没有遇到任何问题 – user3634054