固件程序问题

[复制链接]
829|11
 楼主| stly 发表于 2017-12-17 16:41 | 显示全部楼层 |阅读模式


我在固件程序是这样写:
StringDscr1:  
    db StringDscr1End-StringDscr1 ;; String descriptor length
    db DSCR_STRING
    db 'C',00
    db 'y',00
    db 'p',00
    db 'r',00
    db 'e',00
    db 's',00
    db 's',00
StringDscr1End:
可是 我用BUS Hound软件抓出来是 在Cypress 前面有两个字符串(..)
看书上说应该是 db StringDscr1End-StringDscr1 和 db DSCR_STRING 而且它们必须有!
llljh 发表于 2017-12-17 16:43 | 显示全部楼层
什么问题
 楼主| stly 发表于 2017-12-17 16:48 | 显示全部楼层


但是现在我想要把这个两个字符串(..)去掉,要怎么去掉?---即我希望BUS Hound软件抓出来的数据 Cypress前面没有字符了
程序里要怎么处理啊?
dingy 发表于 2017-12-17 16:49 | 显示全部楼层

尝试一下 db null
pengf 发表于 2017-12-17 16:51 | 显示全部楼层
那你就在协议中找到获取字符串描述符的相应的控制传输代码
renyaq 发表于 2017-12-17 16:53 | 显示全部楼层


然后在固件中找到回答上位机获取字符串命令的相应函数,获取字符串的时候是根据Index来获取的
supernan 发表于 2017-12-17 16:55 | 显示全部楼层

嗯,找到Cypress前面的几个字符串的Index,然后在固件程序中回答PC获取字符串描述符的函数中自己增加当Index为Cypress前面的几个字符串的Index的时候不做任何处理!
xxrs 发表于 2017-12-17 16:57 | 显示全部楼层
或者尝试一下 一开始就db 'c' 00
houcs 发表于 2017-12-17 16:59 | 显示全部楼层

不行吧……
liuzaiy 发表于 2017-12-17 17:01 | 显示全部楼层

写是写对了,没法再改了。不放心换成CY的例子,看看抓出来什么。
yinxiangh 发表于 2017-12-23 14:35 | 显示全部楼层
我不敢用这玩意抓,抓得系统很不稳定。
 楼主| stly 发表于 2017-12-23 18:44 | 显示全部楼层

嗯,那我就不改了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

433

主题

7058

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部