标题 | 阅读 | 评论 | 转发 | 发布日期 | |
---|---|---|---|---|---|
linux设备驱动中常用函数及其出处 | 2656 | 0 | 0 | 2008-07-31 | |
2410平台上dm9000a网卡驱动分析(一) | 2189 | 0 | 1 | 2008-07-27 | |
dm9000a网卡驱动 | 1783 | 0 | 0 | 2008-07-26 | |
s3c2410的ds18b20驱动(基于linux-2.6.24.4内核) | 1824 | 0 | 0 | 2008-07-10 | |
A new I/O memory access mechanism | 1079 | 0 | 0 | 2008-07-09 | |
2410和gprs模块的通信源代码及详解 | 1551 | 0 | 0 | 2008-07-09 | |
常见的设备注册函数 | 1599 | 0 | 0 | 2008-07-06 | |
platform_device和platform_driver(二) | 5633 | 0 | 3 | 2008-07-06 | |
platform_device和platform_driver(一) | 4254 | 2 | 3 | 2008-07-05 | |
ucos2下多任务应用程序的例子(基于TMS320LF2407平台,ucos-V2.85) | 4096 | 0 | 0 | 2008-07-04 | |
TMS320LF2407A上移植ucos2的笔记(V2.85) | 2857 | 3 | 0 | 2008-07-03 |
stblade2009-11-15 10:04
你好,谢谢你能分享你的经验。 我有个关于dm9000a的问题,麻烦请指点一下。 我的s3c2440-wince5.0板子,由DEMO板访制,多加了个CPLD,但dm9000a没用它。现在调试dm9000a,片选是CS3,中断EINT7,CMD为ADDR2。 症状是:一旦dm9000a有片选,则LCD触摸屏出现黑线,并逐渐发白,触摸、鼠标不能输入,感觉像是卡住了,同时整个板子的电流有较大起伏,约200mA。片选一变高,则一切恢复正常;再一会又有片选时,症状如此反复。全程‘INT’脚没动静。 我想是:dm9000a没有产生中断而占用CPU过长,导致LCD不能刷新。但同样的NK.bin下载到DEMO板就能正常用。 然后我修改platform.reg。(这是本身的没改) [HKEY_LOCAL_MACHINE\Comm\DM9CE1\Parms] ... "RecvBuffer"=dword:20 "IrqNumber"=dword:23 "SysIntr"=dword:12 "IoAddress"=dword:18000000 //cs3的起始地址 其中"IrqNumber"应该怎么计算呢?在s3c2440a_intr.h里有:#define EINT7 35,就是这个吗? "SysIntr"的值是SysIntr_firmware+2,即是16+2。 "IoAddress"=dword:18000000,有的说要偏移0x300,即为:18000300 .为啥要偏移? 但是在dm9isa.cpp里却是: { CID_RXBUFFER_NUMBER, 0x10, NDIS_STRING_CONST("RecvBuffer")},/?上为0x20 { CID_IO_BASE_ADDRESS, 0x10000000, NDIS_STRING_CONST("IoAddress")}, { CID_IRQ_NUMBER, 0x03, NDIS_STRING_CONST("IrqNumber")},/?上为0x23 { -1,-1,NULL} 注册表信息与驱动信息不同。但好像是说wince注册表和驱动没啥关系,可现在驱动里的片选地址都是错的。 我在其他地方看到有这样的问题:‘DM9000的RX没有打开,并且RX和TX的中断也没有打开’,这个在那里查看?还有MMU的状态,在哪里查看。 打扰了,麻烦指点一下。