控制两个SPI奴隶:Suota Plus Generic SPI IC的闪存

了解更多常见问题解答教程

2个帖子/ 0新
最后一篇
Firefox2005.
离线
最后一次露面:8小时29分钟前
加入:2016-04-13 09:36
控制两个SPI奴隶:Suota Plus Generic SPI IC的闪存

你好,

我想将SPI与外部闪存一起使用Suota。Flash SPI的引脚配置就像DEV套件基本板[1]。
另外,我想用额外的CS引脚控制第二个从属针,用于选择设备。

1.参考Suota示例演示文稿[2]不需要SPI_FLASH驱动程序[3],因为引导例程检查是否存在任何外部闪存,如果是,则程序将从外部闪存加载程序。我在数据表[4]中的bootrom序列上读到了这一点。我的假设是对吗?

2.是否可以在不同端口上使用CS引脚而不是SPI接口?
我需要它在端口2引脚1.但随着代码下面的代码,我认为这不会工作,因为引脚与端口相关。这是正确的吗?

user_periph_setup.h.
```
#define spi_gpio_port gpio_port_0.
#define spi_clk_pin gpio_pin_0.
*#定义spi_cs_pin gpio_pin_3 *
#define spi_di_pin gpio_pin_5.
#define spi_do_pin gpio_pin_6.
```

user_periph_setup.c.
```
* gpio_configurepin(spi_gpio_port,spi_cs_pin,输出,pid_spi_en,true); *
gpio_configurepin(spi_gpio_port,spi_clk_pin,输出,pid_spi_clk,false);
gpio_configurepin(spi_gpio_port,spi_do_pin,输出,pid_spi_do,false);
gpio_configurepin(spi_gpio_port,spi_di_pin,输入,pid_spi_di,false);
```

3.如果我想使用Suota功能并另外控制第二个SPI从站。我必须使用哪个司机?只有SPI驱动程序[5]?

4. SPI_FLASH项目[6]仅用于检查SPI接口是否正常工作,并且与SUOTA无关。这是正确的吗?

硬件和SDK版本:
* da14585.
* SDK 6.0.10.511

[1]https://support.dialog-seminile.com/system/files/resources/e-da1458 ...
[2]https://support.dialog-semicondiondiondum/system/files/resources/training ...
[3] 6.0.10.511 \ sdk \ platform \ driver \ spi_flash
[4]https://support.dialog-seminile.com/system/files/resources/da14585 _...
[5] 6.0.10.511 \ sdk \ platform \ driver \ spi
[6] 6.0.10.511 \ projects \ target_apps \ peripheral_examples \ spi \ spi_flash

谢谢,最好的问候!

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

嗨Firefox2005,

关于BootROM SequeSnce,独立于SPI_FLASH驱动程序和SUOTA功能。您可以使用额外的CS引脚控制第二个从站,以便根据您提到的设备选择设备,但您应该确保在过程中不激活第二个SPI从站。GPIOS默认为零,它们处于活动状态,因此这意味着第二个SPI从站是默认活动的。为避免这种情况,您可以添加上拉才能在引导过程中使其无效,并确保DA14585将从外部SPI闪存启动。由于您这样做,您可以使用Suota功能,并且可以通过在低电平下配置CS来激活第二个机。如果要使用Suota功能并另外控制第二个SPI从站,则是您可以使用SPI驱动程序。您还正确提到了SPI_FLASH项目不实现SUOTA功能,并演示如何使用SPI闪存驱动程序启动,读取,写和擦除SPI闪存。

谢谢,PM_DIALOG.