wuyuehua19的笔记 https://bbs.21ic.com/?452328 [收藏] [复制] [RSS]

日志

USI WIFI GSPI驱动调试笔记(WINCE6)(一)

已有 2216 次阅读2011-8-2 07:53 |系统分类:嵌入式系统| 88W8686, GSPI, WINCE

    花了一周半时间,终于把WIFI的GSPI驱动初步调通,现在把大概过程记录下来。


    用的WIFI芯片是USI 的 WM-G-MR-9-Ref-2(里面封装了 MARVELL的88W8686)。WIFI原本是要用在一款手持设备上,但由于手持设备没有接以太网PHY,会给调试带来诸多不便,因此用了我更早之前做的板子。板上的主芯片是NXP的ARM9 LPC3250 (先抱怨一下LPC3250:首先只有一路USB,而且还要外置PHY,导致只能接一个USB设备,而我们用的3G模块正是USB接口,真是悲剧;其次,这款MCU的寄存器组织感觉很混乱,设置一个GPIO要跨几个基地址的寄存器映射,很郁闷)。   


    言归正传,首先说一下硬件连接:用LPC3250的SSP0来连接WIFI芯片的SPI接口(之前板上的SSP0是接一块SPI的FLASH,所以先要把这块FLASH 焊下来),另外8686(我把WIFI芯片简称为8686)还有一个下降沿触发的中断脚,我把它连接到板上的GPI_00口。


    先申明一下,本人对WINCE不怎么熟悉,只在原有的BSP上小打小闹过,因此我的调试过程在高手看来可能太低级了,有什么问题还请指正。


    从网上可以很容易下载到针对PXA270的GSPI的驱动程序,我驱动的是基于这个基础上修改的。拿到驱动程序后,首先直接编译,当然是报错啦:提示说缺失 xllplib.lib和 dma.lib,编译器不知道怎么处理。于是打开/wlan/source文件。把


TARGETLIBS= \
  $(_PROJECTROOT)\cesysgen\sdk\lib\$(_CPUINDPATH)\coredll.lib \
  $(_PROJECTROOT)\cesysgen\sdk\lib\$(_CPUINDPATH)\ntcompat.lib \
  $(_PROJECTROOT)\cesysgen\sdk\lib\$(_CPUINDPATH)\ndis.lib \
  $(_PROJECTROOT)\cesysgen\sdk\lib\$(_CPUINDPATH)\ceddk.lib \
  $(_PUBLICROOT)\common\oak\lib\$(_TGTCPU)\$(WINCEDEBUG)\rsa32.lib \
  $(_TARGETPLATROOT)\lib\$(_CPUDEPPATH)\drvif.lib \
  $(_TARGETPLATROOT)\lib\$(_CPUDEPPATH)\dma.lib \
  $(_TARGETPLATROOT)\lib\$(_CPUDEPPATH)\xllplib.lib \
  $(_TARGETPLATROOT)\lib\$(_CPUDEPPATH)\drvio.lib


中的dma和xllplib两行去掉。


然后编译,就报了一堆的错,因为原本是针对PXA270的,编译肯定通不过,接下来就是要进行移植修改了。


路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)