尝试使用外部SPI启动DA14580的问题

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
11个帖子/ 0新
最后一篇
Alejandrocastillo
离线
最后一次露面:1年2个月前
加入:2017-07-13 12:11
尝试使用外部SPI启动DA14580的问题

大家好,

我们正在使用包括DA14580设备的自定义硬件。我们希望通过SPI协议通过另一个微控制器作为Master(ADUCM4050)启动它,因此我们在应用程序注意文档(从串行接口引导)之后实现了某些功能。发送的第一个数据包由前导码,0x00和LS字节组成。如果一切正常,我们可能会在RX缓冲区(0)的位置3中收到ACK(其值为0x02),但这不是这种情况。事实上,我们获得所示的PDF所示的结果。

这里的问题是SPI应该发送数据,然后,从DA14580接收响应,但似乎RX缓冲区捕获[0xce,0xc0,0x02,0xc0]解程而不是[0xc0,0xdc,0xd4,0x02]。SPI比特率集是最低的。

对此的任何想法?

谢谢。

附件:
设备:
PM_DIALOG.
离线
最后一次露面:4小时26分钟前
职员
加入:2018-02-08 11:03
嗨Alejandro,

嗨Alejandro,

谢谢你的问题。让我检查一下,我会回复你。

问候,PM_Dialog

PM_DIALOG.
离线
最后一次露面:4小时26分钟前
职员
加入:2018-02-08 11:03
嗨Alejandro,

嗨Alejandro,

外部微控制器和DA14580之间的接线是否已经设置好了,或者两者都放在同一个PCB上?在第一种情况下,我建议使用较短的电线来减少噪音。在第二种情况下,请检查您的PCB是否正确终止了SPI线。通常我们使用33欧姆的终端电阻。关于灵敏度,由于峰值和反射,在大多数情况下,这是DA14580侧没有与主服务器进行任何通信的原因。

谢谢,PM_DIALOG.

Alejandrocastillo
离线
最后一次露面:1年2个月前
加入:2017-07-13 12:11
大家好,

大家好,

谢谢你的回复。我们有两个组件在同一个PCB。我们已经按照建议将电阻放在SPI线中,但它还不能正常工作。很奇怪,因为DA14580将响应发送到微,所以我们认为这个问题是与时间有关(似乎微有问题,对话框发送答案比ADuCM4050之前完成它的问题,所以它不能把它检查如果ACK或NACK)。

DA14580是否可以配置不同的比特率,主/从模式或任何其他比特率,并且它忽略微控制器的SPI配置?我们没有看到任何其他可能产生这种情况的事情。

谢谢。

PM_DIALOG.
离线
最后一次露面:4小时26分钟前
职员
加入:2018-02-08 11:03
嗨Alejandro,

嗨Alejandro,

让我检查你的问题,我会让你知道。

谢谢,PM_DIALOG.

PM_DIALOG.
离线
最后一次露面:4小时26分钟前
职员
加入:2018-02-08 11:03
嗨Alejandro,

嗨Alejandro,

如前所述,它有点奇怪,这可能是由于SPI信号之间的尖峰,反射和噪声。这是最常见的原因,即没有从DA14580向大师的沟通。关于比特率,由于DA14580充当从子,所以时钟由作为主机的另一个微控制器生成。

谢谢,PM_DIALOG.

Alejandrocastillo
离线
最后一次露面:1年2个月前
加入:2017-07-13 12:11
大家好,

大家好,

谢谢你的回复。最后,我们决定购买基本的DA14580 Dev-kit工作,并发现可能存在的问题。似乎它与微控制器配置有关。当它尝试与芯片通信以读取或接收数据时,它首先发送“X”然后接收“Y”;但是,如果它只尝试写入,它会通过方式接收响应,因此您可以通过在SPI接收功能中取消激活读命令来访问Rx缓冲区中的ACK。嗯......如果我们运行代码,它会收到两个第一个ACK,我的意思是,序言和长度+ CRC ACKS(不总是),但不是0xAA和0x02的终结。我们检查了闪存内容,它是空的(满满的0xff)。

我们按照手册的说明和连接的两个设备如下(SCLK,/ CS,MISO和MOSI引脚属于微控制器):

- sclk到dev-kit的p0_0。

- / cs到dev-kit的p0_3。

- Dev-套件的MISO到P0_6。

- Dev-套件的MOSI到P0_5。

我们已经插入了延迟功能(110毫秒)并尝试与DA14580 Dev-kit的SPI引脚(闪存)连接,但它不起作用。我们可以考虑还有其他人吗?

如果我们找到解决方案,我们会发布它。

谢谢。

Alejandrocastillo
离线
最后一次露面:1年2个月前
加入:2017-07-13 12:11
大家好,

大家好,

最后,我们真的认为问题是由连接两个设备的电线引起的,因为您之前引用,因为尖峰和反射。通过MISO线收到的数据类似于我们期望接收的数据,并且有时会出现在0x70和/或0x50十六进制数据中的反射值(它们都是用于init引导过程的数据)。

问题是我们需要用这些电线来连接其中的设备。我们如何避免这些影响?还有其他因素会影响到你吗?也许一个跳线,我们可以删除(或不)或任何引脚必须连接除了四个SPI线?

非常感谢你。

PM_DIALOG.
离线
最后一次露面:4小时26分钟前
职员
加入:2018-02-08 11:03
嗨Alejandrocastillo,

嗨Alejandrocastillo,

事实上,您拥有自定义硬件,并且在没有速线的情况下连接线路,这与PCB有关。通常,我们使用33欧姆终端电阻。

谢谢,PM_DIALOG.

Alejandrocastillo
离线
最后一次露面:1年2个月前
加入:2017-07-13 12:11
大家好,

大家好,

我们找到了解决方案。数据表具有“非所需效果”部分,其中它解释了与电压调节器和ADC相关的可能响应(一个对另一个引入噪声效果),因此我们尝试使用屏蔽电缆检查我们是否可以减少此和。.. 有效!

谢谢大家。

PM_DIALOG.
离线
最后一次露面:4小时26分钟前
职员
加入:2018-02-08 11:03
嗨Alejandrocastillo,

嗨Alejandrocastillo,

很高兴你发现了自己的问题谢谢你的暗示。如果您有任何其他问题,请创建一个新的论坛帖子!

谢谢,PM_DIALOG.