无法在DA14531模块上重新映射SPI端口引脚

学到更多常见问题解答教程

5个帖子/ 0新
最后一篇
离线
最后一次露面:1个月2周前
加入:2018-09-04 19:16
无法在DA14531模块上重新映射SPI端口引脚

嗨。使用DA14531模块PCB具有Pro套件和无附件固件(DA14531独立(Set-2))。

1)无附属DA14531 V_6.380.12.6

2)我们的项目需要外部SPI设备,我们希望使用此模块的一些免费引脚。

3)第一个测试表明,端口引脚可供我们使用。

AT + IOCFG = 10,4


AT + IOCFG = 9,4


AT + IOCFG = 11,4


AT + IOCFG = 8,4


AT + IOCFG = 7,4

AT + Iocfg.
21 20 00 22 19 12 11 04 04 04 04 04

4)接下来,我们试图将SPI功能引脚重新映射到上述自由销中,但面向误差。

AT + IOCFG = 10,19;SPI CLK.

错误

AT + IOCFG = 9,21;SPI MOSI.

错误
在+ Iocfg = 11,22;spi miso

错误

AT + IOCFG = 8,20;spi #cs.

错误

愿我们问我们做错了什么吗?

将继续研究:) ....

谢谢。

PM_DIALOG.
离线
最后一次露面:2小时40分钟前
员工
加入:2018-02-08 11:03
嗨mom2,

嗨mom2,

谢谢你的问题在线。由于您使用的是DA14531微型模块,SPI闪光灯位于标准引脚上(P00,P01,P03,P04),并在启动时使用 - 请参阅DA14531模块数据表和第7部分。如果要使用另一个SPI外围设备(例如SPI传感器),则应在启动完成后执行此操作,并且在模块闪光灯不再使用。

如果在+ iocfg被调用,预计由于以上描述:以下描述:

21.20.0022.19.12 11 00 00 00 00 00 00 00 00 00

闪光引脚以粗体为粗体。

如果在user_at_commands.h头文件中查看USE_AT_SPI,则会看到,如果启用SPI闪光灯(CFG_SPI_FLASH_ENABLE),则排除命令的SPI。

因此,如果您想在命令中使用SPI,则应禁用Flash和Suota功能,因此FW不会配置SPI引脚 - 请参阅User_periph_setup.h - 第221-224行。

总之,如果您想使用AT + IOCFG = 10,19 / 9,21 / 11,22 / 8,20命令,CFG_SPI_FLASH_ENABLE和CFG_PRF_SUOTAR宏应从USER_PROFILES_CONFIG.H中undefined,并且该项目应该是重新的- 上瘾。

谢谢,PM_DIALOG.

离线
最后一次露面:1个月2周前
加入:2018-09-04 19:16
谢谢。

谢谢。

如果我们按要求重新编译,我们仍然能够从模块的内部闪存启动吗?在内部闪存引导过程之后,我们还可以重新映射SPI引脚。

PM_DIALOG.
离线
最后一次露面:2小时40分钟前
员工
加入:2018-02-08 11:03
嗨mom2,

嗨mom2,

是的 - 设备可以从闪存启动,但无法与之交互(如upota,将数据存储到闪存等中)

请按照我的推荐,然后尝试从闪存启动。

谢谢,PM_DIALOG.

离线
最后一次露面:1个月2周前
加入:2018-09-04 19:16
谢谢。建议

谢谢。建议似乎正在工作。我们将很快测试真正的SPI外部硬件,并使用总线分析仪登录以确认,但修复程序看起来很有希望。

我们应用的更改是在第48-54行中user_profiles_config.h.无附加的SDK文件。

#if(cmd_local_source == cmd_spi)
#undef cfg_spi_flash_enable.
#undef cfg_prf_suotar.
#其他
// #define cfg_spi_flash_enable.
// #define cfg_prf_suotar.
#万一

结果:

ati.
无附带DA14531 V_6.380.12.6

ATR.

+准备
AT + Iocfg.
00 00 00 00 00 12 11 00 00 00 00 00 00 00 00 00 00 00

AT + IOCFG = 10,19;SPI CLK.


AT + Iocfg.
00 00 00 00 00 12 11 00 00 00 19 00

AT + IOCFG = 9,21;SPI MOSI.


AT + Iocfg.
00 00 00 00 00 00 12 11 00 00 21 19 00

在+ Iocfg = 11,22;spi miso


AT + Iocfg.
00 00 00 00 00 00 12 11 00 00 21 19 22

AT + IOCFG = 8,20;spi #cs.


AT + Iocfg.
00 00 00 00 00 00 12 11 00 20 21 19 22