打印

usb固件程序调试问题

[复制链接]
2338|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sunleicy|  楼主 | 2011-9-20 22:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近使用cy7c67300这款芯片进行usb固件开发,由于烧固件后没有达到预期的效果,目前想在程序中加一些调试语句,以用示波器检测,当固件程序从EEPROM中读到RAM中运行起来后可以用示波器检测到一些定义的输出口的波形,不知道这些调试语句如何添加,希望行家指点!

相关帖子

沙发
dqyubsh| | 2011-9-22 07:43 | 只看该作者
这要什么指点,想怎么加就怎么加。最简单的,就是把一个IO管脚设置成输出,在循环中跳变。

使用特权

评论回复
板凳
sunleicy|  楼主 | 2011-9-23 00:54 | 只看该作者
请2楼的给我贴一个例子吧,我是刚接触usb的固件,因为是在校学生,没有什么经验。

使用特权

评论回复
地板
dqyubsh| | 2011-9-23 07:24 | 只看该作者
1,68013调试手段,首推KEIL的串口仿真。前提是使用带串口的100脚或者128脚封装的芯片,并使用232芯片做了电平转换,接出了串口。

这个过程参见cypress网站上的AN42499。它可以设置端点,单步运行,查看所有资源(除了1个定时器和1个串口、部分RAM被占用)

2,除了1,还可以考虑串口输出。这个过程参见AN15456,AN58009。它可以把想要调试的信息通过串口输出到微机。

3,除了1和2,还可以使用USB本身的通讯功能,这比串口来的简单快捷。我的作法是,自定义厂商命令,用cyconsole向端点0或1发送命令,返回想要知道的变量结果。这个例程参见C:\Cypress\USB\Examples\FX2LP\Vend_ax。

4,如你所说,使用示波器跟踪管脚。68013的IO管脚设置比标准51复杂,你要看Technical Reference Manual的第十三章Input/Output。设置方法和AVR单片机类似。一般涉及到PORTxCFG,OEx,IOx三个寄存器,而且PA-PE各个端口会有差别,以手册为准。
        // PB是普通I/O口,输出
        IFCONFIG &= ~bmIFCFG1;                  // IFCFG1=0,B口为I/O口
        OEB = 0xFF;                                   
        IOB = 0x80;                                        // 外接DAC,输出0V

使用特权

评论回复
5
sunleicy|  楼主 | 2011-10-1 21:34 | 只看该作者
谢谢dqyubsh了,我试试看!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

17

帖子

1

粉丝