如何读出cy7c68013a板子上的程序?
先声明发到这个版也许有些不妥,但是我看到本版里讨论cy7c68013a的比较多,站长如果觉得不妥可以移走。板子是ADI的ADISUSBZ,usb接口的,对应ADIS系列陀螺仪的开发板,如图
http://cache.amobbs.com/bbs_upload782111/files_30/ourdev_562313.JPG
(原文件名:{ABE6DA84-14D2-496D-A069-9ED9A9A4BE72}.JPG)
板子是双面板,很厚,可以直接凝自攻螺丝。
上面只有一颗cy7c68013a-128,一颗24lc001,一个L1A#005(估计就是1117,用以提供3.3v),一个三极管,若干接头。
我看到saleae logic的逻辑分析仪也是用cy7c68013a和一个eeprom,是不是这种板子只需要eeprom中的两个ID就够了?能不能直接用USB口读出,虽然读eeprom不复杂,但板子不是我的,我不敢改上面的东西。
如果哪位大哥教小弟一下,成功的话我就吧把原理图抄出来贡献给大家。这个板子硬件成本不超过100,却卖2000多,当然贵的是软件和知识,像saleae logic一样,我们没钱就只能不要脸了。
ADI的并口评估版有原理图,自己做过一个,很好用,但只支持到162xx,usb这个能支持大部分ADIS的数字陀螺仪。 图片是从ADIS16300_Demo_EvalTips.pdf,官方的文档上截下来的。模糊不说,连型号都错了,明明是16300,图上确是13130!而且该评估版明确表明,不支持16130,汗。。。。。
ADIS系列的官方文档错误不少,有些很简单的计算都不对,不知道ADI干什么吃的,还卖那么贵。 cy7c68013a本身内部没有FLASH,它的程序是通过PC机传到内部的SRAM中运行的,你看它的驱动inf文件,就能知道他的程序在PC机的那里放着 应该是这样的吧:68031的“程序”是在pc驱动里面的,,另外板上那片24cXX里面存了USB的ID而已 回复【2楼】68000
cy7c68013a本身内部没有flash,它的程序是通过pc机传到内部的sram中运行的,你看它的驱动inf文件,就能知道他的程序在pc机的那里放着
-----------------------------------------------------------------------
意思是对于板子来说,只需要把EEPROM里的东西搞出来,就算‘山寨’完成了?有没有软件可以直接通过usb读出来这种板子上EEPROM里的内容,或者通过其它渠道获取ID,按照格式算出EEPROM里的内容? 【4楼】 ilawp
读出EEPROM里的内容有几种方法,
1。通过编程器
2。通过软件,好像是cyperr就提供这种软件
3。看cy7c68013的规格说,里面有提到EEPROM的格式,之后再看这个USB设备的PID和VID及USB设备字符串等,就应该算出EERPOM中的内容了 谢谢大家,我用usbview查的相关信息如下
Device Descriptor:
bcdUSB: 0x0200
bDeviceClass: 0x00
bDeviceSubClass: 0x00
bDeviceProtocol: 0x00
bMaxPacketSize0: 0x40 (64)
idVendor: 0x0456 (Analog Devices, Inc.)
idProduct: 0xEF00
bcdDevice: 0x0000
iManufacturer: 0x01
iProduct: 0x02
iSerialNumber: 0x00
bNumConfigurations: 0x01
ConnectionStatus: DeviceConnected
Current Config Value: 0x01
Device Bus Speed: Full
Device Address: 0x02
Open Pipes: 6
Endpoint Descriptor:
bEndpointAddress: 0x01
Transfer Type: Bulk
wMaxPacketSize: 0x0040 (64)
bInterval: 0x0A
Endpoint Descriptor:
bEndpointAddress: 0x81
Transfer Type: Bulk
wMaxPacketSize: 0x0040 (64)
bInterval: 0x0A
Endpoint Descriptor:
bEndpointAddress: 0x02
Transfer Type: Bulk
wMaxPacketSize: 0x0200 (512)
bInterval: 0x00
Endpoint Descriptor:
bEndpointAddress: 0x04
Transfer Type: Bulk
wMaxPacketSize: 0x0200 (512)
bInterval: 0x00
Endpoint Descriptor:
bEndpointAddress: 0x86
Transfer Type: Bulk
wMaxPacketSize: 0x0200 (512)
bInterval: 0x00
Endpoint Descriptor:
bEndpointAddress: 0x88
Transfer Type: Bulk
wMaxPacketSize: 0x0200 (512)
bInterval: 0x00
vid与pid应该分别是0x0456 0xEF00。原理图已经抄下,东西还回去了。晚上把图画一下贴出来吧 我把电路的原理示意图画了一下,重开了个帖子
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4104775&bbs_id=1025
谢谢大家的帮助。虽然不知道对不对,我能得到的信息就这么多了 用USBound 可以将PC下载的程序截下来。我就成功地读出过一个仿真器的程序。 回复【9楼】tercel8888
用usbound 可以将pc下载的程序截下来。我就成功地读出过一个仿真器的程序。
-----------------------------------------------------------------------
是这样,对命令包和数据包进行简单的分析解析就行。
页:
[1]