两个不同的SPI设备,带有SPI驱动程序从图书馆

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
6个帖子/ 0新
最后一篇
Joachimkr.
离线
最后一次露面:1个月3周前
加入:2018-07-06 08:58
两个不同的SPI设备,带有SPI驱动程序从图书馆

你好,

我正在为DA14531开发一种带有两个SPI设备的定制板。两者都在频率,敏感边缘,芯片选择极性方面使用相同的设置。
一个是外设,另一个是来自Macronix的闪存,它已经是DA14531的开发套件专业版。
我用keil测试了我的软件,通过重写一些细节来重用SPI代码示例,编写我的特定处理程序并正常工作。现在,下一阶段:我想从Macronix Flash引导。所以我需要一个新的芯片选择信号。我知道序列储备,初始化,用于I / O引脚。
但我第一次尝试有2个信号和2个库函数失败。

所需要的是一个单独的芯片选择信号。flash的示例代码使用了带有设置的数据结构。
现在,我需要一个提示,我怎么能肯定的是,SPI控制器能够启动从闪存和我的计划之内,我可以闪存内以截然不同的阶段,其他时间段,运用的自由使用细胞我的外围设备的SPI控制器。
如何编写/修改/重用,以便操作2个独特但在SPI总线上以某种方式类似的设备?

感谢帮助
joachim

设备:
PM_DIALOG.
离线
最后一次露面:2天9小时前
职员
加入:2018-02-08 11:03
嗨Joachim,

嗨Joachim,

谢谢你的问题。请你尝试解释问题是什么?我可以理解您计划从外部SPI闪存启动并使用空单元格存储您自己的数据。另外,将使用另一个SPI外围设备。DA14531正在从标准引脚启动 - 请检查表38:从数据表中启动序列步骤。外部SPI从站引导是步骤5,表38演示了应使用特定引脚。BootRom将在P01上切换SCS将闪光灯与来自那里的应用程序代码和设备靴子进行编程。

关于使用“自由空间”的热,您应该使用从SmartSnippet Toolbox中编程的闪存进行读取SPI Flash,并在存储应用程序固件的地址检查。在这些地址之后,您可以存储自己的数据。

但是我第一次尝试使用2个信号和2个库函数失败了。

你能说明吗?

谢谢,PM_DIALOG.

Joachimkr.
离线
最后一次露面:1个月3周前
加入:2018-07-06 08:58
你好,谢谢你的回复!

你好,谢谢你的回复!

在我的第一次尝试中,我使用了示例代码,它验证了与SPI flash的某些交换。然后,我将其中一些代码移动到一个蓝牙应用程序中,并在flash中重用了这些引脚。我使用电线连接我的外设从板到板,并编写SPI处理代码。它现在正在工作,值是通过蓝牙发送的。

现在,挑战是,两个SPI设备附有。我制作了简单的假设,重用代码,但仅使用不同的PIN芯片选择我的外围设备。Miso,Clk,MOSI一直并行(这是一个Aproach OK吗?)在第一步不起作用,即使整个蓝牙分数也死了。

两者,Macronix和我的外围设备都适用于相同的设置。

我需要建议,扩展基于RAM的代码,因此DA14531将从Flash引导。我基本上理解了PIN使用率,而不是SPI库。

你好,

joachim

PM_DIALOG.
离线
最后一次露面:2天9小时前
职员
加入:2018-02-08 11:03
嗨Joachim,

嗨Joachim,

外设连接在哪个gpio ?如果你想在BLE项目中拥有SPI flash功能,请查看SDK的prox_reporter示例。

要从SPI Flash启动,您只需需要将与正确GPIO连接的共享,然后使用应用程序映像将其刻录。设备上电后,Flash的代码将被复制到系统RAM,然后将其复制到设备靴子。

为了与SPI外设进行交互,您需要使用正确的参数进行init和配置它,与之交互,然后释放它。

谢谢,PM_DIALOG.

Joachimkr.
离线
最后一次露面:1个月3周前
加入:2018-07-06 08:58
感谢您的回答。

感谢您的回答。

我将使用的GPIO只是免费的GPIO,仅用于控制额外的SPI芯片选择。我将使用一个,它连接到套件基板上的标题。
我会看看prox_reporter示例代码。

我理解,将哪些引脚用于闪光灯 - 只能在Pro套件的交付时跳跃。
为了烧录它,我理解为使用RAM操作二进制(bin)文件。使用智能工具箱。
我需要保留我额外的GPIO,然后初始化那个I/O单元格作为一个用于flash。为了使用我的外围设备,我需要我自己的chip_select功能,使用我的新GPIO,使用设备和任何使用后,我必须返回新的GPIO引脚与chip_select回到非活动。
我可以使用完全相同的库函数进行传输(例如,SPI控制器队列)。
如果我的SPI设备与相同的参数交谈,则只需要SPI库(?)另一个控制结构。

那是对的吗 ?

我尝试过这种方法,但可能在某个地方出了问题。我需要再做一次。

问候,约阿希姆

PM_DIALOG.
离线
最后一次露面:2天9小时前
职员
加入:2018-02-08 11:03
嗨joachimkr,

嗨joachimkr,

您需要选择和配置每次将在哪个设备“谈话”中。诚实地说,我尚未以粗体正确理解您的陈述,但该概念是您应该选择每次使用SPI总线的设备。

谢谢,PM_DIALOG.