DA14531
5个月前
发布的MrWeng30分 3回复附件1的图片是DA14531连接外部flash的原理图,所使用的闪光是P25Q40H,引脚连接如下:莫西人- > P0_7; CS - > P0_8;味噌——> P0_9; SPI_CLK - > P0_5。根据这篇文章第6.2节的描述,文章链接:http://lpccs-docs.dialog-semiconductor.com/UM-B-119_DA14585-DA14531_SW_Platform_Reference/Appendix/Appendix.html#creation-of-a-secondary-bootloader,我进行了以下操作:
1,打开SDK目录下的“\工具\ secondary_bootloader”的secondary_bootloader工程,并对文件user_periph_setup.h进行以下代码的修改,定义了P25Q40U_MANF_DEV_ID, P25Q40U_SIZE, P25Q40U_PAGE,已经更改了连接闪的引脚
/ / SPI Flash选项# define W25X10CL_SIZE # 131072 / / SPI Flash内存大小字节定义W25X20CL_SIZE # 262144 / / SPI Flash内存大小字节定义MX25R2035F_SIZE # 262144 / / SPI Flash内存大小字节定义P25Q40U_SIZE 524288 / / SPI Flash内存大小字节新增# define W25X10CL_PAGE 256 / / SPI闪存页面大小字节#定义W25X20CL_PAGE 256 / / SPI闪存页面大小字节# define MX25R2035F_PAGE 256 / / SPI闪存页面大小256字节# define P25Q40U_PAGE / / SPI闪存页面大小的字节新增/ /定义SPI垫#如果定义(__DA14531__) # define SPI_EN_PORT GPIO_PORT_0 # define SPI_EN_PIN GPIO_PIN_8 # define SPI_CLK_PORT GPIO_PORT_0 #定义SPI_CLK_PINGPIO_PIN_5 #define SPI_DO_PORT GPIO_PORT_0 #define SPI_DO_PIN GPIO_PIN_7 #define SPI_DI_PORT GPIO_PORT_0 #define SPI_DI_PIN GPIO_PIN_9
2、编译并生成了十六进制文件,根据文章的描述,将该十六进制文件通过JTAG烧录至OTP存储器,抵消OTP存储器:0,并且启用了应用程序标记1和旗帜
3、将工程文件的六角通过JTAG烧录至外部闪光灯。
以上就是我进行的操作,在此之前,已经通过SDK中的SPI例程验证过闪没有问题,根据工程文件仿真的结果,串口应该会有数据输出,但是完成以上操作后,串口没有数据输出,通过示波器查看相应的串口引脚,也没有波形变化。
请问我上述的步骤是否有问题,如何解决?
谢谢
附件 | 大小 |
---|---|
DA14531连接外面闪原理图 | 67.95 KB |
4个月前
嗨,马丁。通用电气
是的,我是想要从自定义的SPI Pin脚从外部闪进行启动,我已经详细阅读了你所提供的参考的文章的Section11,在OTP Headwe的地址:0 x07f87fc8设定的值为02 ffabaa(另外一颗芯片设置的是027 fabaa),地址:0 x07f87fcc设定的值为09070805(这是根据我自定义的SPI Pin脚设定的),除此之外,在Configuartion脚本的价值中设定了SYS_CTRL_REG的值为1 a1(这是为了避免设置OTP后,社署被禁用),除此之外,我另外一颗芯片还Flag1将应用程序和应用程序Flag2设置成是的,随后我将目前十六进制文件烧录至flash,完成了以上操作后,两颗芯片都没有实现我想要的目的,请问上述操作是否有问题,该如何解决吗?谢谢
附件是我配置的截图。
附件 | 大小 |
---|---|
QQ截jpg图20210324142828. | 102.79 KB |
QQ截jpg图20210324142841. | 73.93 KB |
4个月前
嗨MrWeng,
请问您是想要从自定义的SPI Pin脚从外部闪进行启动吗?
如果是这样,需要修改OTP头中特定地址的参数。并且如果在OTP中烧录了二级引导装载程序,需要将OTP头中应用程序的标志设置为是的。
具体可参考:
//www.xmece.com/sites/default/files/2021-01/AN-B-0..。
中的部分11:从特定的SPI端口引导
Br
马丁