Other Parts Discussed in Thread: CC3100MOD, CC3200, CC3100, UNIFLASH
主题中讨论的其他器件: CC3200、 CC3100、 UNIFLASH
你好
我对具有 Service Pack 的 CC3100mod 有一条说明:
NWP 补丁版本:2.6.0.5
Mac 补丁版本:1.4.0.1
PHY 补丁版本:1.0.3.34
我已下载
- CC3100_CC3200_ServicePack_1.0.1.6-2.7.0.0
- CC3100_CC3200_ServicePack_1.0.1.11-2.9.0.0
并 希望更新 Service Pack。
UniFlash 工作正常、但 AM 计划在生产中使用主机编程。
在 ServicePack 自述文件中编写:
3.用于主机编程的头文件(仅适用于 CC3100)
====================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
文件:
- host_programming\host_programming_1.0.1.11-2.9.0.0_ucf.h
- host_programming\host_programming_1.0.1.11-2.9.0.0_ucf-signed.h
此 ServicePack 映像只能与生产器件配合使用。
与此 ServicePack 兼容的芯片列表包括:
- CC3100R1
应使用 CC3100 SDK 的 host_programming 更新包中的 host_programming 示例对 ServicePack 进行编程。
但我在 CC3100 SDK 中找不到"host_programming example"。
我使用此代码升级:
int cc3100_UpgradeFW (空)
{
_i32 fileHandle =-1;
_u32令牌= 0;
_i32返回值= 0;
_u32余数 Len、movingOffset、chunkLen;
/*正在初始化 CC3100器件*/
SL_Start (0、0、0);
readversion();
/*使用回滚、安全和公开写入来创建/打开128KB 的服务接收文件*/
RetVal = sl_FsOpen ("/sys/servicepack.ucf、
FS_MODE_OPEN_CREATE (LEN_128KB、_FS_FILE_OPEN_FLAG_SECURE|_FS_FILE_OPEN_FLAG_COMMIT|_FS_FILE_PUT)、
&Token、&fileHandle);
if (RetVal < 0)
{
返回-1;
}
/*对 servicepack 进行编程*/
remainingLen = sizeof (servicePackImage);
movingOffset = 0;
chunkLen =(_u32) find_min (chunch_LEN、remainlen);
/*必须以1024字节的块完成刷写*/
操作
{
RetVal = sl_FsWrite (fileHandle、movingOffset、(_u8 *)&servicePackImage[movingOffset]、chunkLen);
如果(RetVal < 0)
{
返回-1;
}
remainingLen --chunkLen;
movingOffset += chunkLen;
chunkLen =(_u32) find_min (chunch_LEN、remainlen);
} while (chunkLen >0);
/*关闭 servicepack 文件*/
RetVal = sl_FsClose (fileHandle、0、(_u8 *) servicePackImageSig、sizeof (servicePackImageSig));
如果(RetVal < 0)
{
返回-1;
}
/*停止 CC3100器件*/
sl_Stop (0xFF);
/*正在初始化 CC3100器件*/
SL_Start (0、0、0);
readversion();
sl_Stop (0xFF);
返回0;
}
此代码工作 异常。 所有 SL_函数返回成功、但 升级后 ServicePack 的版本始终为:
NWP 补丁版本:2.6.0.5
Mac 补丁版本:1.4.0.1
PHY 补丁版本:1.0.3.34
我尝试使用以下文件更新 CC3100mod:
文件:
- host_programming\host_programming_1.0.1.11-2.9.0.0_ucf.h
- host_programming\host_programming_1.0.1.11-2.9.0.0_ucf-signed.h
和
- host_programming\host_programming_1.0.1.6-2.7.0.0_ucf.h
- host_programming\host_programming_1.0.1.6-2.7.0.0_ucf-signed.h
如果我要通过 UniFlash 在 servicepack_1.0.1.11-2.9.0.0.bin 上更新 CC3100mod、然后尝试使用 Host Programming with
- host_programming\host_programming_1.0.1.11-2.9.0.0_ucf.h
- host_programming\host_programming_1.0.1.11-2.9.0.0_ucf-signed.h
然后、servicepack 版本将再次变为旧 的2.6.0.5
这是问题吗?