编辑: 雷昨昀 | 2014-08-14 |
kingst.org http://www.kingst.org http://www.kingst.org http://www.kingst.org QQ QQ QQ QQ : : : :
415942827 415942827
415942827 415942827 淘宝地址:http://item.taobao.com/item.htm?id=6293581805 http://item.taobao.com/item.htm?id=6293581805 http://item.taobao.com/item.htm?id=6293581805 http://item.taobao.com/item.htm?id=6293581805 原理介绍
1、 主芯片介绍: Cy7c68013 是一款集成了 USB 2.0 接口的微控制器,其内部没有 FLASH,只有 RAM,运行程序全部在 RAM 中运行,它的程序下载有三种方式: ――通过 USB 接口下载,或――从EEPROM下载 ――外部储存器设备(仅对128脚配置) 我们的saleae,毋庸置疑,采用的是第一种方式,现在市面上有人销售的68013版本USB-BLASTER采用的就是第二种方式.
2、USB 启动模式: 在上电的序列期间,内部验证模块会直接来读取当前的 EEPROM 的首地址的数 据,如果是0xC0 (saleae) , 芯片内部逻辑会直接将存储在EEPROM 内部的VID/PID/DID(发行者 ID/产品 ID/设备版本)来替代内部存储的三个 ID, 下边用一个 saleae 逻辑分析仪抓取另外一个 saleae 的读取 EEPROM 的时序图,从图上可以看出那三个 ID 值分别是多少: 那么从我抓的图上可以看出来,上电读取首地址 0xc0,后边是一个 I2C 的读取数据的时 序,0x50 是器件地址,0x00 是存取数据的首地址,后边的
8 个字节是数据,玩电子的 知道I2C 的时序我想都应该懂得,因此内部数据分别是0xc0( 引导码),0x25,0x09,0x81,0x38,0x00,0x00,0x00;
共这
8 个字节.同样的道理,USBEE 的 抓图如下所示,并且从图上可以看出,这8个字节分别是:0xc0(引导码),0xa9,0x08, 0x14,0x00,0x00,0x00,0x00;
共8个字节. 如果检查到当前的 EEPROM 的首地址是 0Xc2,那么芯片内部逻辑会直接从 EEPROM 下载程序并且运行,68013 版本 USB-BLASTER 就是了.
68013 实际上是一个
51 内核的 CPU,因此如果你要 DIY,你可以根据上边提供的 这几个 ID 号,自己 DIY 了.