嗨。我读的http://support.dialog-semiconductor.com/system/files/resources/AN-B-023%...在第7.2节中,I2C在辅助引导加载程序中不受支持。有什么特别的原因吗?
如果我们把代码写进EEPROM并想从那里启动它,那就意味着我们的OTP必须是空的,这就意味着我们的产品很容易被那些很容易从UART启动自己代码的人误用?
嗨。我读的http://support.dialog-semiconductor.com/system/files/resources/AN-B-023%...在第7.2节中,I2C在辅助引导加载程序中不受支持。有什么特别的原因吗?
如果我们把代码写进EEPROM并想从那里启动它,那就意味着我们的OTP必须是空的,这就意味着我们的产品很容易被那些很容易从UART启动自己代码的人误用?
您好,Joacimwe,我们为一个特定的无线充电应用程序在SPI闪存配置上实现了辅助引导加载程序,以加快引导时间,使其符合4WP系统规范。在I2C中实现是可能的,只是我们还没有做到。
关于第二个问题:在回复你之前,我需要确认一件事。。。。
BR JE\u对话框
你好Joacimwe,
启动过程空白OTP:无法强制设备仅从UART启动。引导序列在bootrom中设置。见AN-B-001表1。
启动过程辅助引导加载程序在OTP中烧坏:是的,我们可以强制从UART引导。
BR JE\u对话框
亲爱的Dialog,
在M24M01 i2C EEPROM中使用智能代码段设置引导代码时遇到问题。我使用的是WLCSP子板开发工具包,我假设它是01硅。当我试图编程的EEPROM,日志给出以下消息。EEPROM上的SCL和SDA引脚一直处于活动状态,但我没有尝试分析串行数据的内容。你知道这里会发生什么吗?
谢谢
[INFO @14-07-23 08:53:00] EEPROM Programmer: Successfully download firmware file to DA14580。
[INFO@14-07-23 08:53:12]EEPROM编程器:已选择固件文件C:\dialog\Projects\resources\flash\u Programmer.bin
[INFO@14-07-23 08:53:12]EEPROM编程器:与COM5端口的连接已成功打开。
[INFO@14-07-23 08:53:12]EEPROM程序员:开始下载程序。。。
[ACTION@14-07-23 08:53:13]EEPROM编程器:请按电路板上的硬件复位按钮开始下载过程。
[INFO@14-07-23 08:53:18]EEPROM编程器:检测到复位
[INFO@14-07-23 08:53:19]引导程序:已成功从端口COM5断开连接。
[INFO @14-07-23 08:53:19] EEPROM Programmer: Successfully download firmware file to DA14580。
[INFO@14-07-23 08:53:26]EEPROM编程器:设置偏移量为32
[INFO@14-07-23 08:53:26]EEPROM编程器:开始烧录地址0x00020处6372字节数据的内存。
[INFO@14-07-23 08:53:26]EEPROM编程器:与COM5端口的连接已成功打开。
[错误@14-07-23 08:53:36]EEPROM编程器:等待接收数据包长度的最高有效字节时超时(10000毫秒)
[INFO@14-07-23 08:53:36]引导程序:已成功从端口COM5断开连接。
[错误@14-07-23 08:53:36]EEPROM编程器:内存刻录失败。
亲爱的Dialog,
排序-通过将智能片段连接设置为JTAG而不是UART。有了这种连接方法编程M24M01工作如梦,我可以从外部内存启动程序。完美的。我会再去看看UART连接出了什么问题。我成为一个真正的粉丝的智能片段!
非常感谢
亲爱的huwjones,
我用智能代码段和JTAG连接,可以烧成i2ceeprom。
之后,它仍然无法从EEPROM引导。它只是连续地从EEPROM读取数据。
更多信息,EEPROM内存中的偏移量是0x20。
如何解决这个问题?
谢谢!
亲爱的Mansonhui,
我没有看到任何问题的DA14580引导从外部I2C一旦数据已正确编程在内存中与SmartSnipets。我可以使用JTAG或UART连接来执行编程,但必须确保在Dialog Expert目标板上保持CTS/RTS线路断开。我使用了以下内存连接:
P0\ U 2->SCL,P0\ U 3->SDA,M24M01除Vcc外的所有其他引脚接地。我在SCL和SDA上使用了4K3引体向上。如果您要成功地读回智能代码段中的EEPROM内容,我只能认为DA14580引导序列在到达I2C扫描之前正在优先处理不同的引导源,或者I2C内存无法响应引导读取。很抱歉,我不能给你任何肯定的答案,但是你报告的“连续读取”是代码没有正确编程的症状。
最美好的祝福
亲爱的huwjones,
谢谢你的回复。
我发现,如果我按复位按钮,DA14580将'连续读取'。如果我拔下并插入usb电源,DA14580将读取一次,然后停止从EEPROM读取。
但在这种状态下,它仍然不起作用。iphone中的测试应用程序LightBlue无法找到它。
BRs公司
亲爱的员工:,
我还发现DA14580不从EEPROM完全引导和停止读程序。
比方说,程序大小是0x5440,但它在EEPROM地址0x17xx处停止引导。“停车地址”每次都不一样。
如何解决?
非常感谢。
BRs公司