Pinout for booting DA14586 from serial interface

⚠️
你好。。谢谢你来参加论坛。令人兴奋的消息!我们现在正在移动到我们的新论坛平台,将提供更好的功能,并包含在主对话网站的过程。所有帖子和账号都已迁移。我们现在只接受新论坛上的流量-请在//www.xmece.com/support. 我们将在未来几天内修复bug/优化搜索和标记。
11个职位/0个新职位
最后一篇文章
TP2017
离线
Last seen:2个月1周前
已加入:2017-07-15 18:18
Pinout for booting DA14586 from serial interface

我对用于将DA14586连接到外部设备(MSP430)以便从串行接口(我想使用SPI接口)引导的引脚感到困惑。

我读了AN-B-001“从串行接口引导”,看到引导引脚分配(step1/SPI Master)是p0u 0/SCK、p0u 3/CS、p0u 5/MOSI和p0u 6/MISO。这看起来很清楚,但我在DA14586数据表中看到的一些东西让我困惑。数据表上说“在引导过程中,端口P2的四个SPI引脚用于访问内部闪存”(P2泷0/CLK、P2泷3/EN、P2泷4/DO、P2泷9/DI)。对我来说这听起来有点像。数据表是否告诉我不同的功能?

Once I've booted the DA14586 using the serial interface I'd like to control the DA14586 using the same SPI interface. Is that possible?

Keywords:
Device:
MT_dialog
离线
Last seen:2个月1周前
工作人员
已加入:2015-06-08 11:34
你好,2017年,

你好,2017年,

586带有一个嵌入式闪存,并且OTP报头是预先编程的,以便使用OTP报头中的“引导特定映射”字段从嵌入式闪存的管脚引导。AN-B-001文档涉及580/581/583系列,引导过程完全相同,但并不完全相同,而且随嵌入式闪存提供的586与583(也随附嵌入式闪存)不遵循相同的体系结构。因此,在585/586案例中,引导过程在附录G中的文档UM-B-079 da14585586sdk 6 Software Platform Reference document中进行了描述。因此,586究竟如何引导,它将检查是否从内部闪存引导(如OTP头中的相应字段所示),在从内部闪存引导失败后,它将开始执行UART序列,如附录图31所述,并继续引导协议的其余部分。启动固件后,您可以随意使用PIN。

Thanks MT_dialog

TP2017
离线
Last seen:2个月1周前
已加入:2017-07-15 18:18
谢谢你的回应。

谢谢你的回应。我仍然不知道阿布t the pin assignments, though. Appendix G of the UM-B-079 DA14585_586 SDK 6 Software Platform Reference lists P0_0/SCK, P0_3/CS, P0_6/MISO, and P0_5/MOSI for the Step A boot process. I also noticed the same pinout designated on Table 21 of the DA14586 datasheet. However, I on Table 1 Pin Description (p. 19 of DA14586 datasheet) it shows P2_0/SPI_CLK, P2_3/SPI_EN, P2_4/SPI_DO, and P2_9/SPI_DI and has a comment "Note: During the boot sequence, the four SPI pins of port P2 are used to access the internal Flash memory. Therefore these pins shall not be remapped or used for any other purpose.". That is the part that confused me. I'd like to be sure I haven't misread the documentation and assign the wrong pins before I commit to a board design.

Thanks

MT_dialog
离线
Last seen:2个月1周前
工作人员
已加入:2015-06-08 11:34
你好,2017年,

你好,2017年,

如上所述,585和586的引导加载程序是相同的,这两个设备之间的区别在于586有一个内部闪存来存储代码,因为它有一个内部闪存,用户很可能想在其中存储一些代码,由于这个OTP特殊标志,引导rom代码将不会直接执行串行引导过程,但它将首先检查该字段中声明的特殊pin上的SPI接口,如果无法从那里引导,它将接着执行串行引导。当设备从外部闪存中找到您的固件时,它会将代码镜像到585的RAM中,并根据您的固件重新映射管脚,但引导过程将结束,镜像过程将完成,因此您不必再次访问闪存来读取代码,但是为了从闪存中读取任何数据,您需要将fw中的管脚配置为SPI管脚,以便访问内部闪存。但要注意,如果你计划连接这些引脚上的任何外部传感器,你应该确保它们不会干扰引导
procedure.

Thanks MT_dialog

TP2017
离线
Last seen:2个月1周前
已加入:2017-07-15 18:18
which serial boot pinout?

which serial boot pinout?

I think I understand your last comment, but I'd like to be certain before I order a prototype board.

I'm looking for the specific pinout for serial booting for the DA14586. Is it P0_0/SCK, P0_3/CS, P0_6/MISO, and P0_5/MOSI (Table 21, p. 45 of datasheet) or is it P2_0/SPI_CLK, P2_3/SPI_EN, P2_4/SPI_DO, and P2_9/SPI_DI (Table 1 p. 19 of datasheet)? The datasheet seems to contradict itself.

(见表1,p。19:“注意:在引导过程中,端口P2的四个SPI引脚用于访问内部闪存。因此,这些引脚不得重新映射或用于任何其他目的。”)这是否意味着P2 SPI引脚用于DA14586上的串行引导?

Thanks

MT_dialog
离线
Last seen:2个月1周前
工作人员
已加入:2015-06-08 11:34
你好,2017年,

你好,2017年,

如上所述,586使用与585相同的引导加载程序,因此引导加载程序完全相同,但是由于586具有嵌入式闪存,因此OTP头字段引导特定的映射从工厂烧成,以便首先从P2\u 0/SPI\u CLK、P2\u 3/SPI\u EN、P2\u 4/SPI\u DO引导,和P2_9/SPI_DI,如果失败,它将执行标准引导程序。我认为数据表有点混乱,因为它描述了标准序列,而不是586选项和烧毁的OTP字段,我将与数据表的作者一起检查它。

Yes, that is what i ve been mentioning throughout the post.

Thanks MT_dialog

TP2017
离线
Last seen:2个月1周前
已加入:2017-07-15 18:18
Thank you very much for your

Thank you very much for your help.

jasmeet singh
离线
Last seen:9个月3天前
已加入:2020-07-15 09:46
你好

你好

I am using DA14586 with internal flash . And one of my sensor is connect to da14586 through spi interface as this P0_0/SCK, P0_3/CS, P0_6/MISO, and P0_5/MOSI.

I am configuring these spi pins like this GPIO_ConfigurePin(GPIO_PORT_0, GPIO_PIN_3, OUTPUT, PID_SPI_EN, true);
#if 1
拱形放置(“测试1\n\r”);
#endif
GPIO_ConfigurePin(GPIO_PORT_0, GPIO_PIN_0, OUTPUT, PID_SPI_CLK, false);
#if 1
arch_puts("test 2 \n\r");
#endif
GPIO\ U配置引脚(GPIO\ U端口\ U 0,GPIO\ U引脚\ U 6,输出,PID\ U SPI\ U DO,false);
#if 1
arch_puts("test 3 \n\r");
#endif
GPIO_ConfigurePin(GPIO_PORT_0, GPIO_PIN_5, INPUT, PID_SPI_DI, false);

但它并没有启动。

那么,我如何通过spi建立我的传感器接口,或者怎样做才是正确的。

谢谢和问候

Jasmeet Singh

PM_Dialog
离线
Last seen:2 days 5 hours ago
工作人员
已加入:2018-02-08 11:03
你好,认识辛格,

你好,认识辛格,

Is there any specific reason why you are using that GPIO for the sensor? Did you try to connect it in any other GPIOs?

Thanks, PM_Dialog

jasmeet singh
离线
Last seen:9个月3天前
已加入:2020-07-15 09:46
你好

你好

In page number 45 TABLE no. 21 of datasheet (DA14586). They have given Peripheral Pin Mapping for spi master that is the reason we are using these gpios as spi lines for our sensor.

no we did not try with other gpios.

谢谢和问候

Jasmeet Singh

PM_Dialog
离线
Last seen:2 days 5 hours ago
工作人员
已加入:2018-02-08 11:03
你好,认识辛格,

你好,认识辛格,

This is the booting sequence as the BootROM checks specific GPIOs in order to boot from different serial devices. In general, you can use any GPIO as SPI - you will need to configure it in your firmware too. In the meanwhile, could you please probe the SPI signal with a logic analyzer tool and share a capture?

Thanks, PM_Dialog