学到更多FAQsTutorials

11 posts / 0 new
Last post
TP2017
Offline
最后一次露面:2个月4周前
加入:2017-07-15 18:18
引脚从串行接口引导DA14586

I'm confused about the pins to use to connect the DA14586 to an external device (MSP430) for booting from a serial interface (I'd like to use an SPI interface).

I read AN-B-001 "Booting from serial interfaces" and saw that the booting pin assignments (step 1/SPI Master) were P0_0/SCK, P0_3/CS, P0_5/MOSI, and P0_6/MISO. That seems clear enough, but something I read in the DA14586 datasheet has me confused. The datasheet says that "During the boot sequence, the four SPI pins of port P2 are used to access the internal Flash memory" (P2_0/CLK, P2_3/EN, P2_4/DO, P2_9/DI). This sounds a little like the same thing to me. Is the datasheet telling me about a different function?

一旦我使用相同的SPI接口使用串行接口启动DA14586,我想控制DA14586。那可能吗?

关键词:
设备:
mt_dialog.
Offline
最后一次露面:1 month 3 weeks ago
工作人员
加入:2015-06-08 11:34
Hi TP2017,

Hi TP2017,

The 586 comes with an embedded flash and the OTP header is preprogrammed in order to boot from the pins of the embedded flash using the "Boot specific mapping" field in the OTP header. The AN-B-001 document concerns the 580/581/583 family, the booting procedure is quite the same but not exactly the same and the 586 which comes with the embedded flash doesn't follow the same architecture as the 583 (which also comes with an embedded flash). So in the 585/586 case the booting procedure is described in the document UM-B-079 DA14585_586 SDK 6 Software Platform Reference document in Appendix G. So how exactly the 586 boots, it will check for booting from the internal flash (as the appropriate field in the OTP header instructs) after failing to boot from the internal flash it will start executing the UART sequence as it is described in the appendix figure 31 and continue with the rest of the booting protocol. After you have booted your fw then you can use the pins as you like.

谢谢mt_dialog.

TP2017
Offline
最后一次露面:2个月4周前
加入:2017-07-15 18:18
感谢您的答复。

感谢您的答复。但是,我仍然不确定PIN分配。UM-B-079DA14585_586 SDK 6软件平台参考列出P0_0 / SCK,P0_3 / CS,P0_6 / MISO和P0_5 / MOSI的P0_0_3 / CS,以及P0_5 / MOSI。我还注意到DA14586数据表的表21上指定了相同的引脚。但是,我在表1中引脚说明(第19页的DA14586数据表)它显示了P2_0 / SPI_CLK,P2_3 / SPI_EN,P2_4 / SPI_DO和P2_9 / SPI_DI,并具有评论“注意:在引导序列期间,四个SPI引脚端口P2用于访问内部闪存。因此,不应重新映射或用于任何其他目的这些引脚。“。这是困惑我的部分。我想确定我没有误读文档并在提交电路板设计之前分配错误的引脚。

谢谢

mt_dialog.
Offline
最后一次露面:1 month 3 weeks ago
工作人员
加入:2015-06-08 11:34
Hi TP2017,

Hi TP2017,

As mentioned above, the bootloader for the 585 and the 586 is the same, the difference between those two devices is that the 586 has an internal flash in order to store code, since its has an internal flash and most probably the user would like to store some code in it, due this OTP special flag the Boot rom code will not directly execute the serial booting procedure but it will first check the SPI interface on the special pin that are declared in that field and if it fails to boot from there it will then go and execute serial booting. When the device finds your fw from the external flash, it will mirror the code to the RAM of the 585 and the pins will be remmaped according to the your fw, but the booting procedure will be over and the mirroring procedure will be done, so you wont have to access the flash again for reading code, but in order to read any data from the flash you will need to configure the pins from your fw as SPI pins in order to access the internal flash. But be aware that if you plan to connect any external sensors on those pins you should make sure that they dont interfiere with the booting
程序。

谢谢mt_dialog.

TP2017
Offline
最后一次露面:2个月4周前
加入:2017-07-15 18:18
哪个串行启动引脚?

哪个串行启动引脚?

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

我正在寻找DA14586的串行引导的特定引脚。是p0_0 / sck,p0_3 / cs,p0_6 / miso和p0_5 / mosi(表21,p.45的数据表45)或者是p2_0 / spi_clk,p2_3 / spi_en,p2_4 / spi_do和p2_9 / spi_di(表1第19页的数据表)?数据表似乎与自己矛盾。

(from Table 1, p. 19: "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.") Does this mean that P2 SPI pins are used for serial booting on the DA14586?

谢谢

mt_dialog.
Offline
最后一次露面:1 month 3 weeks ago
工作人员
加入:2015-06-08 11:34
Hi TP2017,

Hi TP2017,

As mentioned above, the 586 uses the same bootloader as the 585, so the bootloader procedure is exactly the same, but since the 586 has an embedded flash the OTP Header field Boot specific mapping is burned from factory in order to boot first from the P2_0/SPI_CLK, P2_3/SPI_EN, P2_4/SPI_DO, and P2_9/SPI_DI and if that fails it will go and execute the standard bootloader procedure. I undertstand that the datasheet is a bit confusing since it describes the standard sequence and not the 586 option with the burned OTP field, will check it with the authors of the datasheet.

是的,这就是我在整个帖子中提到的。

谢谢mt_dialog.

TP2017
Offline
最后一次露面:2个月4周前
加入:2017-07-15 18:18
非常感谢你的

非常感谢您的帮助。

Jasmeet Singh.
Offline
最后一次露面:5 months 6 days ago
加入:2020-07-15 09:46

我正在使用DA14586带内部闪光灯。我的一个传感器通过SPI接口连接到DA14586,如该P0_0 / SCK,P0_3 / CS,P0_6 / MISO和P0_5 / MOSI。

我正在配置这种类似GPIO_CONFIGUREPIN(GPIO_PORT_0,GPIO_PIN_3,输出,PID_SPI_EN,TRUE)的SPI引脚;
#如果是1
arch_puts("test 1 \n\r");
#万一
gpio_configurepin(gpio_port_0,gpio_pin_0,输出,pid_spi_clk,false);
#如果是1
ARCH_PUTS(“测试2 \ n \ r”);
#万一
GPIO_ConfigurePin(GPIO_PORT_0, GPIO_PIN_6, OUTPUT, PID_SPI_DO, false);
#如果是1
ARCH_PUTS(“测试3 \ n \ r”);
#万一
gpio_configurepin(gpio_port_0,gpio_pin_5,输入,pid_spi_di,false);

but it is not booting up.

所以,我如何can make my sensor interface through spi or what is the right proccedure to do this .

谢谢& Regards

Jasmeet Singh.

PM_DIALOG.
Offline
最后一次露面:6天前1周
工作人员
加入:2018-02-08 11:03
Hi Jasmeet Singh,

Hi Jasmeet Singh,

是否有任何特定原因您使用该传感器的GPIO?您是否尝试在任何其他GPIO中连接它?

谢谢,PM_DIALOG.

Jasmeet Singh.
Offline
最后一次露面:5 months 6 days ago
加入:2020-07-15 09:46

在页码45中表编号21个数据表(DA14586)。它们对SPI Master具有给定的外设引脚映射,这是我们使用这些GPIOS作为传感器的SPI线路的原因。

不,我们没有尝试其他GPIO。

谢谢& Regards

Jasmeet Singh.

PM_DIALOG.
Offline
最后一次露面:6天前1周
工作人员
加入:2018-02-08 11:03
Hi Jasmeet Singh,

Hi Jasmeet Singh,

这是BootRom检查特定GPIO的引导序列,以便从不同的串行设备引导。通常,您可以使用任何GPIO作为SPI - 您需要在固件中配置它。与此同时,您能用逻辑分析工具探测SPI信号并分享捕获吗?

谢谢,PM_DIALOG.