已绑定手机
|
发表于 2022-5-27 16:33:37
|
显示全部楼层
|阅读模式
来自 广东省深圳市南山区
1.二次开发步骤
1.1导入库和头文件
采用Vs2008开发环境,请按以下步骤: 步骤1:包含头文件(#include "RKUpgradeDll.h") 步骤2:导入库文件(#pragma comment(lib,"RKUpgrade.lib")) 采用其他windows开发平台,请按以下步骤:
步骤1:参考RKUpgradeDll.h文件,声明 使用到的数据类型和函数
步骤2:调用系统的LoadLibrary函数,加载RKUpgrade.dll
步骤3.调用系统的 GetProcAddress函数,引入使用到的函数指针
1.2初始化RKUpgrade库
步骤1:初始化INIT_DEV_INFO变量为全零, bScan4FsUsb成员和uiRockusbTimeout成员根据实际情况设置
步骤2: 初始化InitLogInfo变量,设置是否要记录日志和日志保存位置
步骤3: 初始化InitCallbackInfo变量 为全零
步骤4: 调 用RK_Initialize初始化函数
注:在程序初始化时调用
1.3扫描设备
步骤1:调用RK_ScanDevice函数,扫描设备
步骤2: 判断nDeviceCounts参数,0没有发现设备,1发现1台设备,>1发现 多台设备默认只操作最前面的那台
步骤3: 判断bExistMsc参数和bExistAdb,如果bExistMsc为真,开始读写操作前需 要先调用RK_SwitchToRockusb函数切换到rockusb,如果bExistAdb为真,需要先调用外部工具adb.exe执行adb reboot loader
1.4操作设备(以写序列号为例)
步骤1:调用RK_WriteSN函数
1.5反初始化RKUpgrade.dll库
步骤1:所有调用RK_Uninitialize函数
2.操作接口
2.1 读写自定义数据
说明:自定义数据保存在IDBLOCK的扇区3中,有512个字节空间
函数:RK_WriteCustomData 和 RK_ReadCustomData
参数: pCustomData:分配512字节buffer
nCustomDataOffset:自定义数据在512空间中的偏移
nCustomDataLen:自定义数据的长度,字节单位
注:读取成功后,返回的是整个sector3数据,要通过 nCustomDataOffset偏移到自定义数据. 写入的数据是从pCustomData + nCustomDataOffset开始的 nCustomDataLen数据
2.2 读写序列号
说明:序列号在sector3中2-61位置,0-1是序列号长度
函数:RK_WriteSN和RK_ReadSN
参数: pSN:序列号,字符串数据
nSNLen:序列号长度,字节单位
2.3 读写网卡地址
说明:网卡地址在sector3中506-511位置,每4位代表一个字符,一共表示12个字符网卡地址,
函数:RK_WriteMAC和 RK_ReadMAC
参数: pMac:6个字节转换后的地址
nMacLen:长度为6
2.4 读写WifiMac地址
说明:WifiMac地址在sector3中445-450位置,每4位代表一个字符,一共表示12个字符网卡地址,
函数:RK_WriteWifi和 RK_ReadWifi
参数:
pWifi:6个字节转换后的地址
nWifiLen:长度为6
2.5读写蓝牙地址
说明:蓝牙地址在sector3中499-504位置,每4位代表一个字符,一共表示12个字符网卡地址,
函数:RK_WriteBT和 RK_ReadBT
参数:
pBT:6个字节转换后的地址
nBTLen:长度为6
2.6清空Sector3数据
说明:sector3中全部512字节清零
函数:RK_ClearAllInfo
2.7读写Vendor数据
说明:有两个Vendor区,分别是vendor0和vendor1,每个区504个字节,这个区域的性质是升级后数据不会丢失,设备端 可读可写
函数:RK_WriteVendorInfo和RK_ReadVendorInfo
参数:
pVendorBuffer:504为单位的buffer
sectorOffset:指定vendor号,只有0或者1
sectorCount: 指定读写访问的vendor数
2.8读写Provision数据
说明rovision区,大概1-1.5M大小的空间,按ID来访问每个读写项,每个项数据不能超过62K.目前只有新的芯片方案 有这个接口,请与系统工程师确认后使用
函数: RK_WriteProvisioningData和RK_ReadProvisioningData
参数:
pDataBuffer:数据项的访问buffer
nBufferSize:数据项buffer大小,字节单位
nID:数据项ID
更多详细内容请下载附件查看
|
|