Pinout用于从串行接口引导DA14586

⚠️
大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.wsdof.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
11个员额/ 0个新员额
最后发表
TP2017
离线
最后看到:2个月1天前
加入:2017-07-15 18:18
Pinout用于从串行接口引导DA14586

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

我读AN-B-001“从串行接口启动”,看到启动引脚分配(步骤1/SPI Master)是P0_0/SCK, P0_3/CS, P0_5/MOSI,和P0_6/MISO。这似乎足够清楚了,但我在DA14586数据表中读到的一些东西让我困惑。数据表显示“在引导序列中,P2端口的四个SPI引脚被用来访问内部Flash内存”(P2_0/CLK, P2_3/EN, P2_4/DO, P2_9/DI)。这对我来说是一样的。数据表是否告诉我不同的函数?

一旦我使用串行接口引导DA14586,我想使用相同的SPI接口控制DA14586。这有可能吗?

关键词:
设备:
MT_dialog
离线
最后看到:2个月4天前
工作人员
加入:2015-06-08 34
嗨TP2017,

嗨TP2017,

586自带一个嵌入式flash, OTP头是预先编程的,以便使用OTP头中的“boot specific mapping”字段从嵌入式flash的引脚启动。an - b -001文件涉及580/581/583系列,启动过程完全相同但不完全相同,586附带嵌入式flash不遵循与583(也附带嵌入式flash)相同的架构。因此,在585/586案例中,引导过程在文档UM-B-079 DA14585_586 SDK 6软件平台参考文档附录g中进行了描述。它将检查从内部flash引导OTP(适当的字段头指示)从内部flash引导失败后将开始执行附录中描述的UART序列是图31,继续与其他启动协议。当你启动fw后,你就可以随心所欲地使用图钉了。

由于MT_dialog

TP2017
离线
最后看到:2个月1天前
加入:2017-07-15 18:18
谢谢你的回复。

谢谢你的回复。不过我还是不确定别针的分配。UM-B-079 DA14585_586 SDK 6软件平台参考手册附录G中列出了P0_0/SCK、P0_3/CS、P0_6/MISO和P0_5/MOSI的步骤A引导过程。我还注意到DA14586 datasheet表21中指定的相同pinout。然而,我在表1引脚描述(p. 19的DA14586 datasheet),它显示了P2_0/SPI_CLK, P2_3/SPI_EN, P2_4/SPI_DO,和P2_9/SPI_DI,并有一个注释“注意:在引导序列中,P2端口的四个SPI引脚用于访问内部Flash内存。因此,这些引脚不能被重新映射或用于任何其他目的。这就是让我困惑的地方。我想确保我没有误读文档和分配错误的引脚之前,我承诺一个板的设计。

谢谢

MT_dialog
离线
最后看到:2个月4天前
工作人员
加入:2015-06-08 34
嗨TP2017,

嗨TP2017,

正如上面提到的,585年和586年的引导装载程序是一样的,这两个设备之间的区别是,586有一个内部flash存储代码,因为它有一个内部flash和最有可能的用户想存储一些代码,由于这OTP特殊标志的引导rom代码不会直接执行串行引导过程,但它将首先检查特殊销上的SPI接口中声明该字段,如果不能从这将引导去执行串行引导。当设备发现你的fw从外部flash,将镜子代码的内存585和别针将remmaped根据你的弗兰克-威廉姆斯,但引导程序将结束和镜像过程将完成,所以你不会有再次访问flash阅读代码,但是为了从flash读取任何数据,你将需要配置从fw的引脚作为SPI引脚,以便访问内部flash。但是要注意,如果你打算将任何外部传感器连接到这些引脚上,你应该确保它们不会干扰启动
过程。

由于MT_dialog

TP2017
离线
最后看到:2个月1天前
加入:2017-07-15 18:18
哪个串行引导pinout?

哪个串行引导pinout?

我想我理解你最后的评论,但我想在订购原型板之前确定一下。

我正在寻找DA14586的串行引导的特定pinout。是P0_0/SCK, P0_3/CS, P0_6/MISO, P0_5/MOSI(表21,p. 45)还是P2_0/SPI_CLK, P2_3/SPI_EN, P2_4/SPI_DO, P2_9/SPI_DI(表1,p. 19)?数据表似乎自相矛盾。

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

谢谢

MT_dialog
离线
最后看到:2个月4天前
工作人员
加入:2015-06-08 34
嗨TP2017,

嗨TP2017,

如上所述,586使用与585相同的引导加载程序,因此引导加载程序过程是完全相同的,但是由于586有一个嵌入式flash,为了首先从P2_0/SPI_CLK、P2_3/SPI_EN、P2_4/SPI_DO引导,从工厂刻制了特定于OTP Header字段的Boot映射。和P2_9/SPI_DI,如果失败,它将执行标准引导加载程序。我理解,这个数据表有点混乱,因为它描述了标准序列,而不是586选项与烧伤的OTP字段,将与数据表的作者检查它。

是的,这就是我在文章中一直提到的。

由于MT_dialog

TP2017
离线
最后看到:2个月1天前
加入:2017-07-15 18:18
非常感谢你的帮助

非常感谢你的帮助。

辛格小朋友!
离线
最后看到:8个月3个星期前
加入:2020-07-15 09:46

我使用DA14586内置闪光灯。我的一个传感器是通过spi接口连接到da14586,作为这个P0_0/SCK, P0_3/CS, P0_6/MISO,和P0_5/MOSI。

我正在配置这些spi引脚像这个GPIO_ConfigurePin(GPIO_PORT_0, GPIO_PIN_3, OUTPUT, PID_SPI_EN, true);
如果1号
arch_puts(“测试1 \ n \ r”);
# endif
GPIO_ConfigurePin(GPIO_PORT_0, GPIO_PIN_0, OUTPUT, PID_SPI_CLK, false);
如果1号
arch_puts(“测试2 \ n \ r”);
# endif
GPIO_ConfigurePin(GPIO_PORT_0, GPIO_PIN_6, OUTPUT, PID_SPI_DO, false);
如果1号
arch_puts(“测试3 r \ n \”);
# endif
GPIO_ConfigurePin(GPIO_PORT_0, GPIO_PIN_5, INPUT, PID_SPI_DI, false);

但它并没有启动。

所以,我如何可以使我的传感器接口通过spi或什么是正确的程序来做这。

感谢和问候

辛格小朋友!

PM_Dialog
离线
最后看到:2小时27分钟前
工作人员
加入:2018-02-08 11:03
你好,小朋友!辛格

你好,小朋友!辛格

有什么特别的原因,为什么您使用的传感器的GPIO ?你试过在其他gpio中连接它吗?

谢谢,PM_Dialog

辛格小朋友!
离线
最后看到:8个月3个星期前
加入:2020-07-15 09:46

在第45页数据表(DA14586)的21。他们给出了外围引脚映射spi主人,这是我们使用这些gpios作为spi线为我们的传感器的原因。

没有,我们没有尝试其他gpios。

感谢和问候

辛格小朋友!

PM_Dialog
离线
最后看到:2小时27分钟前
工作人员
加入:2018-02-08 11:03
你好,小朋友!辛格

你好,小朋友!辛格

这是BootROM为了从不同的串行设备启动而检查特定gpio的启动顺序。一般来说,你可以使用任何GPIO作为SPI -你也需要在你的固件中配置它。同时,您是否可以使用逻辑分析仪工具探测SPI信号并共享捕获?

谢谢,PM_Dialog