你好,我用DA14580和GD25D10C flash烧写OTA.bin文件,当烧写完复位后蓝牙没广播,当我烧写完复位后,再调试二次引导文件蓝牙才从运行了我烧写的程序(开始广播),文件夹中是二次引导和flsh_programmer工程中的部分调试截的图。请问这种情况是二次引导文件烧写问题还是flsh_programmer工程的问题吗?
你好,
能否再描述清楚你的目的?
用 580 做烧录器?还是想对580烧录闪光吗?
是想对580烧录闪光
关于这个问题,你有几个帖子,我们集中在这里讨论吧。
你是在用使形象工具,生成多本文件的时候遇到问题了吗?
如果是,需要检查:
1.FLASH 0地址处(包含70 50头),或者OTP中(不包含70 50头),有二次引导装载程序代码
2.0 x8000处有70 51和图像1
3.0 x13000处有70 51和图片2
4.0 x1f000处有70 52头,并且头中有0 x8000 0 x13000数据
580芯片建议在OTP中烧录二级引导装载程序
我在生成多本文件的时候没有出现错误。0 x8000 0 x13000和0 x1f000这三个的地址都能读到相应imge和头信息,调试调试second_bootloader读取FLASH 0地址时就卡在那里了似乎一直在等待,以下为读取读取FLASH 0时的片段代码。当我用SmartSnippets读取地址0处是有50 70信息的。
我现在用的是580的芯片和另外的FLASH芯片,spi引脚和默认的spi启动引脚不同。OTP中烧录二次引导装载程序代码是往FLASH 0处写二次引导装载程序?那我在生成多本文件的时候就把二次引导装载程序放在地址0了就可以了吗?
uint8 AN001Header [AN001_SPI_HEADER_SIZE];SpiFlashRead((unsigned long)AN001Header, (unsigned long) 0, (unsigned long)AN001Header);if (AN001Header[0]==0x70 && AN001Header[1]==0x50) {}
谢谢!
是的,在生成multibin的时候,要将二次引导装载程序烧到地址0 FLASH, 70 50头之后
这个步骤我有
E:\code\ota_file>hex2bin -e bin nodata_salve。最低地址= 00000000最高地址= 0000732B Pad Byte = FF 8位Checksum = 2F E:\code\ota_file>mkimage single first01_version.h nodata_salve.bin nodata_salve. h nodata_salve. hmkimage multi spi gsecondary_bootloader.bin nodata_salve. img E:\code\ota_file>mkimage multi spi gsecondary_bootloader.bin nodata_salve。img 0 x8000 nodata_salve。img 0x13000 0x1f000 nodata_salve_ota.bin正在创建nodata_salve_ota.bin映像…[00000000] AN-B-001 SPI header [00000008] Bootloader [000012b0] Padding (FF's) [00008000] 'nodata_salve。[000080df] Padding (FF's) [00013000] 'nodata_salve. txt[000130df]填充(FF的)[0001f000]产品头部
抱歉之前没看清你的一个情况:“spi flash引脚和默认的不同”
在这种情况下,你必须修改二级引导装载程序来对你的flash引脚进行适配,并且需要把二级引导装载程序烧录到你的OTP中。
上电经历的流程应该是:1.芯片硬件初始化
2.芯片ROM引导运行,发现OTP中有代码(二次引导装载程序),将其拷贝到RAM中运行
3.二级引导装载程序读头取产品,获取图像1/2的图像头的地址
4.二级引导装载程序决定拷贝图像1,从图1头中获取到图像的相关信息,如图像大小
5.二级引导装载程序将图像1拷贝到RAM中并运行
我已经修改了FLASH引脚,也把二次引导装载程序放在了FLASH 0,这次的二级引导装载程序烧录到OTP中是烧录到OTP图像里面吗?
还有我想请问, 蓝牙的时钟晶振引脚排线错误会影响蓝牙的广播吗,比如广播地址会发生错误?
是的,二级引导烧录到OTP形象区域。
广播地址错误,具体是指什么?晶振异常会到导致无广播或连接不稳定
你好,
能否再描述清楚你的目的?
用 580 做烧录器?还是想对580烧录闪光吗?
你好,
是想对580烧录闪光
你好,
关于这个问题,你有几个帖子,我们集中在这里讨论吧。
你是在用使形象工具,生成多本文件的时候遇到问题了吗?
如果是,需要检查:
1.FLASH 0地址处(包含70 50头),或者OTP中(不包含70 50头),有二次引导装载程序代码
2.0 x8000处有70 51和图像1
3.0 x13000处有70 51和图片2
4.0 x1f000处有70 52头,并且头中有0 x8000 0 x13000数据
580芯片建议在OTP中烧录二级引导装载程序
你好,
我在生成多本文件的时候没有出现错误。0 x8000 0 x13000和0 x1f000这三个的地址都能读到相应imge和头信息,调试调试second_bootloader读取FLASH 0地址时就卡在那里了似乎一直在等待,以下为读取读取FLASH 0时的片段代码。当我用SmartSnippets读取地址0处是有50 70信息的。
我现在用的是580的芯片和另外的FLASH芯片,spi引脚和默认的spi启动引脚不同。OTP中烧录二次引导装载程序代码是往FLASH 0处写二次引导装载程序?那我在生成多本文件的时候就把二次引导装载程序放在地址0了就可以了吗?
谢谢!
你好,
是的,在生成multibin的时候,要将二次引导装载程序烧到地址0 FLASH, 70 50头之后
你好,
这个步骤我有
你好,
抱歉之前没看清你的一个情况:“spi flash引脚和默认的不同”
在这种情况下,你必须修改二级引导装载程序来对你的flash引脚进行适配,并且需要把二级引导装载程序烧录到你的OTP中。
上电经历的流程应该是:
1.芯片硬件初始化
2.芯片ROM引导运行,发现OTP中有代码(二次引导装载程序),将其拷贝到RAM中运行
3.二级引导装载程序读头取产品,获取图像1/2的图像头的地址
4.二级引导装载程序决定拷贝图像1,从图1头中获取到图像的相关信息,如图像大小
5.二级引导装载程序将图像1拷贝到RAM中并运行
你好,
我已经修改了FLASH引脚,也把二次引导装载程序放在了FLASH 0,这次的二级引导装载程序烧录到OTP中是烧录到OTP图像里面吗?
还有我想请问, 蓝牙的时钟晶振引脚排线错误会影响蓝牙的广播吗,比如广播地址会发生错误?
谢谢!
你好,
是的,二级引导烧录到OTP形象区域。
广播地址错误,具体是指什么?晶振异常会到导致无广播或连接不稳定