0xAA串口更新14.bin文件。
0xAA指令和32KB数据分块理解请参考32.icl更新:http://inforum.dwin.com.cn:20080/forum.php?mod=viewthread&tid=7553
一.计算14.bin文件多少条指令
32Kbytes 一包数据,可分成137条指令。
例程的14.bin文件16KB,在32KB的137条指令范围内。
UE中一行数据16字节,15行划分为一包,15*16=240字节
数据结束到1028行,1028/15=68.5条指令;
68*15=1020行,第69条指令从1021行开始统计(1-15行包含第15行,1到1020行包含第1020行);
具体:68*15+8=1028行,即前68条数据部分是240字节,第69条是8*16=128字节。
二.指令数据处理
数据内容除第1行和最后4行中间数据均相同,第1条和第69条数据需仔细处理,第2条到第68条数据复制、粘贴;
前68条:5A A5 F3 82+变量地址(依次+0x78)+数据;帧头+数据长度+0x82(写)都一样,只需每条指令变量地址+0x78。 (大家如测试可先5A A5 F3 82按列复制N条,再加上变量地址依次+0x78,最后每条指令填上数据,这样会很快且不容易出错)
第69条:5A A5 83 82+变量地址+数据;最后一条指令数据长度一定要注意是否正确;
第1条 5A A5 F3 82 80 00 第2条 5A A5 F3 82 80 78 第3条 5A A5 F3 82 80 F0 第4条 5A A5 F3 82 81 68 第5条 5A A5 F3 82 第6条 5A A5 F3 82 第7条 5A A5 F3 82 第8条 5A A5 F3 82 第9条 5A A5 F3 82 第10条 5A A5 F3 82 ......
第68条 5A A5 F3 82 9E 78 第69条 5A A5 83 82 9F E0
三.具体指令
69条指令就不粘贴再这里了,大家下载附件即可。
数据可以复制进串口助手的扩展栏,避免每次复制到发送窗口出错。(指令前的HEX打上“√”)
(1)数据写到变量地址(RAM:临时存储,掉电不保存)后,再写入到Flash。
(2)写入Flash 相应ID:5AA5 0F 82 00 AA 5A 02 00 70 80 00 03 E8 00 00 0000; 14*8=112=0x70(256/32=8,256KB块分成8个32KB块;14*256/32=112=0x70)
黑屏:5A A5 0F 82 00 AA 5A 02 01 00 80 00 00 14 00 00 00 00;前面如果更新过32.icl,14.bin文件继续写入0x0100 ID会清掉图片数据黑屏;
花屏:检查数据分包和最后一条指令数据长度是否正确,5A A5 83 82+变量地址+数据;最后一条指令数据长度一定要注意是否正确;
页面ID是第0页显示。
(3)数据较多可读取写入状态判断
5A A5 04 83 00 AA 01(读取写入状态) 5A A5 06 83 00 AA 01 5A 02 (返回5A02说明还在写入) 5A A5 04 83 00 AA 01(读取写入状态) 5A A5 06 83 00 AA 01 00 02 (返回0002说明写入完成)
(4)写入完成复位一次,等同掉电上电。 5A A5 07 82 00 04 55 AA 5A A5 指令到此完成。
四.演示视频
五.友情链接
(1)UE数据复制:http://inforum.dwin.com.cn:20080/forum.php?mod=viewthread&tid=3680
(2)0xAA 32.icl更新(理解0xAA指令、256KB、32KB数据块):http://inforum.dwin.com.cn:20080/forum.php?mod=viewthread&tid=7553
(3)0xAA 14.bin更新(理解数据指令划分):http://inforum.dwin.com.cn:20080/forum.php?mod=viewthread&tid=7561
(4)0xAA 多个32KB数据包:http://inforum.dwin.com.cn:20080/forum.php?mod=viewthread&tid=243
|