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

⚠️
嗨,那里..感谢您参加论坛。激动人心的消息!现在,我们正在转到我们的新论坛平台,该平台将提供更好的功能,并包含在主话网站中。所有帖子和帐户都已迁移。我们现在仅在新论坛上接受流量 - 请在https://www.dialog-spoomendonductor.com/support。我们将在未来几天修复错误 /优化搜索和标记。
11帖子 / 0新
最后一篇文章
亚历杭德罗卡斯略
离线
最后一次露面:1年12个月前
加入:2017-07-13 12:11
尝试使用外部SPI启动DA14580的问题

大家好,

我们正在使用包括DA14580设备的自定义硬件。我们希望通过使用SPI协议通过另一个微控制器作为主(ADUCM4050)启动它,因此我们在应用程序注释文档(从串行接口启动)之后实现了一些功能。发送的第一个数据包由序言组成,A 0x00和长度LS字节组成。如果一切都很好,我们可能会在RX缓冲区的位置3(从0)的位置3中获得ACK(其值为0x02),但事实并非如此。实际上,我们获得了所附PDF中显示的结果。

The problem here is that the SPI should send data, and then, receive the response from DA14580, but it seems that rx buffer catchs the [0xce, 0xc0, 0x02, 0xc0] secuence instead of [0xc0, 0xdc, 0xd4,0x02]。SPI比特率集是最低的。

对此有任何想法吗?

谢谢。

附件:
设备:
pm_dialog
离线
最后一次露面:3周6天前
职员
加入:2018-02-08 11:03
嗨,亚历杭德罗,

嗨,亚历杭德罗,

感谢您的问题。让我检查一下,我将与您联系。

问候,pm_dialog

pm_dialog
离线
最后一次露面:3周6天前
职员
加入:2018-02-08 11:03
嗨,亚历杭德罗,

嗨,亚历杭德罗,

您是否在外部微控制器和DA14580之间进行了设置接线,或者两者都放置在同一PCB中?在第一种情况下,我建议使用较短的电线来减少噪音。在第二种情况下,请检查您正确终止SPI线路的PCB。通常,我们使用33欧姆终端电阻。关于敏感性,由于尖峰和反思,在大多数情况下,这就是DA14580方面没有任何沟通的原因。

谢谢,pm_dialog

亚历杭德罗卡斯略
离线
最后一次露面:1年12个月前
加入:2017-07-13 12:11
大家好,

大家好,

谢谢回复。我们在同一PCB中都有两个组件。推荐后,我们将电阻器放在SPI线上,但尚未正常工作。这很奇怪,因为DA14580发送了对微观的回答,因此我们认为问题与时机有关(似乎Micro提出了一个问题,并且对话框以前是ADUCM4050之前发送答案,因此不能接受。它可以检查ACK还是NACK)。

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

谢谢。

pm_dialog
离线
最后一次露面:3周6天前
职员
加入:2018-02-08 11:03
嗨,亚历杭德罗,

嗨,亚历杭德罗,

让我检查您的问题,我会告诉您。

谢谢,pm_dialog

pm_dialog
离线
最后一次露面:3周6天前
职员
加入:2018-02-08 11:03
嗨,亚历杭德罗,

嗨,亚历杭德罗,

这有点奇怪……如前所述,这可能是由于SPI信号之间的尖峰,反射和噪音所致。这是最常见的原因,即DA14580方面没有任何通信。关于比特率,由于DA14580充当从属,因此时钟是由另一个微控制器生成的,该微控制器充当主机。

谢谢,pm_dialog

亚历杭德罗卡斯略
离线
最后一次露面:1年12个月前
加入:2017-07-13 12:11
大家好,

大家好,

谢谢回复。最后,我们决定购买DA14580 DEV-KIT基本的工作,并发现可能是什么问题。看来它与微控制器配置有关。当它试图与芯片通信以读取或接收数据时,它首先发送“ x”,然后接收“ y”;但是,如果它仅试图写作,它会通过方式接收响应,因此您可以通过在SPI接收函数中停用读取命令来访问RX缓冲区中的ACK。好吧...如果我们运行代码,它会收到两个第一个ACK,我的意思是,序言和长度+CRC ACK(并非总是),但最终不是0xAA和0x02 Secuence。我们检查了闪存内容,它是空的(满是0xff)。

我们遵循手册的说明,并将两个设备连接如下(SCLK, /CS,MISO和MOSI PIN属于微控制器):

-DEV-KIT的SCLK至P0_0。

- /cs到dev-kit的p0_3。

- Dev-Kit的P0_6味o。

-MOSI至DEV-KIT的P0_5。

我们已经插入了一个延迟功能(110 ms),并试图与DA14580 Dev-Kit(Flash)的SPI引脚连接,但它不起作用。我们还有其他要考虑的观点吗?

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

谢谢。

亚历杭德罗卡斯略
离线
最后一次露面:1年12个月前
加入:2017-07-13 12:11
大家好,

大家好,

最后,我们真的认为问题是由于尖峰和反射而引用的,正如您先前所指的那样,连接两个设备引起的。通过MISO系列接收的数据类似于我们期望收到的数据,有时会反映为0x70和/或0x50 HEX数据(它们都是用于INIT引导过程的数据)。

问题是我们需要使用这些电线将它们之间的设备连接起来。我们如何避免这些效果?还有其他可能影响的因素吗?也许我们可以删除(或不)的跳线或除了四条SPI线外还必须连接的任何销钉?

非常感谢。

pm_dialog
离线
最后一次露面:3周6天前
职员
加入:2018-02-08 11:03
嗨,Alejandrocastillo,

嗨,Alejandrocastillo,

实际上,您有一个自定义硬件,并且线路连接而没有飞线,这与您的PCB有关。通常,我们使用33欧姆终端电阻。

谢谢,pm_dialog

亚历杭德罗卡斯略
离线
最后一次露面:1年12个月前
加入:2017-07-13 12:11
大家好,

大家好,

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

感谢您的关注。

pm_dialog
离线
最后一次露面:3周6天前
职员
加入:2018-02-08 11:03
嗨,Alejandrocastillo,

嗨,Alejandrocastillo,

很高兴您发现自己发行了,并感谢您的迹象。如果您还有其他问题,请创建一个新的论坛线程!

谢谢,pm_dialog