是的,LS 正解,而且有很多限制的,一定得注意。
这个帖子不错,LZ看了后应能解决问题:【下面是转帖】
http://bbs.driverdevelop.com/simple/index.php?t72905.html
驱动程序开发网技术社区 -> USB驱动开发 -> 请教:68013如果不外接RAM,可以通过keil在线调试么 [打印本页]
brightfeng 2004-07-13 12:44
请教:68013如果不外接RAM,可以通过keil在线调试么
各位大侠,请问我的板子如果没有外接RAM,只是利用68013内部的RAM,能通过keil monitor调试程序么?
对于cypress自带的monitor程序,是不是需要将.hex文件转换成.c文件再去设置其下载的位置呢?可是比较郁闷的是我的hex2c.exe不能将那些monitor程序转换成c程序,说什么hex2c是1.0版,不能将文件转换成c的,这是怎么回事呢,都是cypress自带的,不能转换么?还是我的操作不对?请大侠们指点
pengenwen 2004-07-13 15:35
如果没有外部SRAM,你就下载那个放到片内的MONITOR就可以了,在control panel中可以直接下载HEX格式的MONITOR的,如果要放到驱动中就需要用HEX2C转换成C文件,那个工具应该可以吧,我公司的简易开发板就是用那个片内的MONITOR,可以转换的
arthurcao 2004-07-13 16:41
对,你试试下载mon-int-sio0/1.hex,用控制面板。不用外部RAM的。
arthurcao 2004-07-13 16:43
另外我用你说的哪个工具转换过,好用啊。
brightfeng 2004-07-13 18:50
mon-int-sio0和mon-int-sio1我都试过了,但是存在同样的问题,我的固件code rang设的是0x1080开始,编译可以通过,但开始调试后,固件可以下载到68013里,点run后,没有什么动作,设备管理器中还是显示development board,而不是正常的sampledevice(我用的是例程bulkloop.uv2),而且这时操作control pannel,读取设备描述符等,也没有显示.
但是,同样的固件code rang的设置,如果改成外部调试的mon-ext-sio1进行调试就一切正常,所以我怀疑是下载的mon-int-sio1和固件地址的关系出了什么问题,还请大家帮忙!!!
我的固件下载地址是不是不太对呢?
hnewa 2004-07-14 17:03
看你的情况多半是 ?.hex 有问题
另外 ?.hex 文件不可以太大了哦...
hnewa 2004-07-14 17:05
hex2c sample.hex sample.c
ok
pengenwen 2004-07-14 18:07
固件从1080开始不行,因为MONITOR的大小大概在4K多点左右,可能固件把MONITOR覆盖了,固件程序定位再靠后吧
brightfeng 2004-07-14 20:59
多谢pengenwen大侠,我把固件地址改成1200,程序就可以运行了,十分感谢!
还有个问题,我看了一下那个mon-int-sio0.hex,它的地址好像是从0000开始的,这样的话启不是和0080以下的中断向量表的地址冲突了么?能不能有什么方法改动monitor程序的下载位置呢,请大侠不吝赐教,嘻嘻 |