你好,
我目前正在尝试将BLE应用程序从SPI主机加载到DA14580,但代码未运行。我已经检查了SPI Master在代码下载结束时收到0xAA和0x02 ACK,我已经能够用相同的方法下载一个简单的闪烁程序。此外,在使用串行电线下载程序时,代码完全运行。是否有任何原因,为什么相同的代码不在运行,根据它是通过SPI或SW下载的吗?SPI启动是否有最大代码大小?
我希望你能帮助我解决问题。
先感谢您。
吉列尔莫
关键词:
设备:
嗨gleon,
你正在使用的开发套件是什么,是一件自定义吗?您是否配置了与SPI一起使用的适当引脚?我假设你正在使用智能片段才能将代码下载到SPI,在燃烧之前,您是否删除了SPI?您应该使SPI引导才能从中启动DA。您可以使用最大的SPI限制您可以像DA可以处理一样下载。
谢谢mt_dialog.
嗨MT,
对不起,我不清楚。我没有使用SPI记忆,而是另一种单独的微控制器作为SPI主人。我尝试了两个专家套件和具有相同结果的自定义。我能够运行Blinky的榜样,但使用BLE功能的任何东西。
在代码下载之后与ACK的交易和BLE代码的问题丢弃了交易中的问题,因为我能够使用来自keil的sw的问题。对话框代码中是否需要修改以从SPI Master引导?
感谢您的回复。
吉列尔莫
嗨MT,
只是一些信息更多,我发现对话代码运行,直到“nvds_init((uint8_t *)nvds_flash_address,nvds_flash_size);”功能,但它不会从该函数返回。我也无法找到该功能的定义。我没有在我的系统上有任何闪存,这是一个问题吗?
我希望这有助于解决问题。
谢谢
Guillermo。
嗨gleon,
无需在引导代码中更改任何内容(您也无法更改引导码)。一些我可以给您的建议是检查电缆连接Micro和DA,它们应适当地终止和可能屏蔽电缆。这是因为SPI模块采样器似乎对小信号尖峰或反射非常敏感,所以它被误认为是脉冲。请确保删除UART RTS / CTS跳线(专家套件)。另外请尝试以较小的频率配置主时钟。请尝试查看Doc UM-B-013,也许会给您一些洞察力。
谢谢mt_dialog.
嗨MT,
我解决了这个问题。使用大文件时,它将在使用该工具将.hex文件解析为字节数组。
谢谢你的帮助。
吉列尔莫