久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区


曙海教育集團論壇Win CE 專區WinCE系統定制與驅動開發 → wince下usb驅動攻堅戰


  共有7064人關注過本帖樹形打印

主題:wince下usb驅動攻堅戰

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


加好友 發短信
等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
wince下usb驅動攻堅戰  發帖心情 Post By:2010-11-26 14:08:26

首先給出一個ED和TD的鏈表結構圖,相信有了這個圖對代碼的理解就容易多了!
HeadPtr-->ED-->ED-->ED-->ED
ED-->TD-->TD-->TD...

    根據OHCI spec:每個ED(Endpoint Descriptor)描述USB設備的一個端點的所有數據傳輸,所有的ED被連接在一起;而TD(Transfer Descriptor)描述的才是最終要在USB總線上傳輸的數據包,屬于同一個USB設備端點的TD被連接在一起,并掛在相應的ED上。
1)ohcd.c
該文件在platform下,可替代wince自帶的system.c文件(在public/common/oak/drivers/usb/hcd/ohc/下)。該文件中的函數被hcddrv.c文件中的HCD_流形式接口函數調用。
2)hcddrv.cpp
該文件在public/common/oak/drivers/usb/hcd/common下面,文件中的具體設置函數:
HcdMdd_CreateMemoryObject
HcdMdd_CreateHcdObject
HcdMdd_DestroyMemoryObject
HcdMdd_DestroyHcdObject
HcdMdd_PowerOn
HcdMdd_PowerDown
HcdMdd_SetCapability
又被ohcd.c中的函數調用
CUHcd-->CHW-->CHcd(繼承關系,CUHcd的實例被創建)
 
初始化函數調用流程
1)HCD_Init()[hcddrv.cpp]
2)HcdPdd_Init()[ohcd.c]
3)InitializeOHCI()[ohcd.c]
配置IOBASE,IRQ。可讀取注冊表,也可以通過程序自配
4)HcdMdd_CreateMemoryObject();HcdMdd_CreateHcdObject()[hcddrv.cpp]
HcdMdd_CreateMemoryObject()==>CPhysMem->InittedOK()[usb/hcd/common/cphysmem.hpp]
HcdMdd_CreateHcdObject()==>CHcd->DeviceInitialize()[usb/hcd/ohcd2/cuhcd.cpp]
 
CHcd::DeviceInitialize()過程
1)CDeviceGlobal::Initialize()[usb/hcd/common/cdevice.cpp]
加載usbd.dll,并調用其中的HcdAttach()[usb/usbd/usbddrv.cpp]用hcddrv.cpp中的gc_HcdFuncs來設置usbd層的功能函數[pHcd->pHcdFuncs]
2)CHW::Initialize()[usb/hcd/ohcd2/chw.cpp]
初始化硬件,控制器寄存器,并創建線程用于處理HC的IST,并調用SignalCheckForDoneTransfer()來偵聽傳輸的完成
3)CHCCArea::Initialize()[usb/hcd/ohcd2/cpipe.cpp]
初始化CPipe的靜態變量,建立一個禎鏈表的空調度,同時建立中斷Queue Head樹,創建線程用于處理傳輸完成。
 
IoPortBase = USB_BASE 以及Sys_Irq的初始化流程
1)HcdPdd_Init()[ohcd.c]
2)InitializeOHCI()[ohcd.c]
3)ConfigureOHCICard()[ohcd.c]:在此配置;HcdMdd_CreateHcdObject()[hcddrv.cpp]
4)CreateHCDObject()[cuhcd.cpp]:在此new CUhcd并初始化其父類CHW,在CHW初始化時初始化其成員變量m_portBase[chw.cpp]
 
Transfer流程
所有的IssueTransfer最終都要調用CPipe::IssueTransfer()[cpipe.cpp]
1)new STransfer并配置
2)拷貝client buffer到out transfer
3)AddTransfer:設置TDs鏈表并加到相應的ED下
4)ScheduleTransfer
5)CHW::ListControl()
 
[以下以bulk為例]
1)在CHW::Initialize()中有
CHW::m_pBulkHead = &m_portBase->HcBulkHeadED;
2)在各pipe類的::OpenPipe()中有
*(CHW::m_pBulkHead) = (pa)m_pED;
 
故此:傳輸過程由HC根據各ED值來讀寫指定內存,具體數據在各ED下的TDS鏈表中的各TD中,過程由HcControl和HcCommandStatus寄存器的各相應位來控制。

支持(0中立(0反對(0單帖管理 | 引用 | 回復 回到頂部

返回版面帖子列表

wince下usb驅動攻堅戰








簽名
久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区
久草热久草热线频97精品| 日韩一区二区不卡| 成人va在线观看| 国产精品911| 久久精品国产精品亚洲精品| 天天免费综合色| 舔着乳尖日韩一区| 久久国产精品色| 国产一区二区三区在线观看精品 | 久久综合久久鬼色| 精品99一区二区三区| 国产日本亚洲高清| 中文字幕在线视频一区| 亚洲激情网站免费观看| 一区二区三区在线视频免费 | 国产亚洲精品精华液| 国产精品污污网站在线观看| 最新日韩在线视频| 亚洲一区二区三区自拍| 美国欧美日韩国产在线播放| 国产精品乡下勾搭老头1| 91在线云播放| 欧美日韩国产免费一区二区三区| 综合国产精品久久久| 欧美精品成人一区二区三区四区| 精品国产成人在线影院| 亚洲日本va午夜在线影院| 日韩高清一级片| av电影在线观看一区| 久久精品日产第一区二区三区精品版| 欧美一区二区三区四区夜夜大片| 中文字幕中文字幕在线中一区高清 | 成人自拍视频网站| 欧美主播一区二区三区美女 久久精品人| 视频一区视频二区视频三区高| 一本久道久久综合| 日韩西西人体444www| 最新久久zyz资源站| 蜜臀av亚洲一区中文字幕| 7777奇米亚洲综合久久| 伊人久久av导航| 久久青草国产手机看片福利盒子 | 国产精品福利一区| 亚洲二区在线视频| 丁香亚洲综合激情啪啪综合| 久久综合给合久久狠狠色| 在线不卡中文字幕| 亚洲综合男人的天堂| 成人国产精品免费网站| 一区二区三区电影| 国产清纯白嫩初高生在线观看91 | 在线观看www91| 久久精品夜色噜噜亚洲a∨| 日本特黄久久久高潮| 国产精品推荐精品| 欧美一级久久久久久久大片| 亚洲精品乱码久久久久久黑人| 顶级嫩模精品视频在线看| 亚洲免费久久| 国产精品麻豆欧美日韩ww| 国产伦理精品不卡| 夜夜爽www精品| 亚洲人成网站精品片在线观看| 国产成人综合在线| 色偷偷久久人人79超碰人人澡| 国产精品国产三级国产aⅴ无密码| 狠狠色丁香婷婷综合久久片| 秋霞久久久久久一区二区| 久久奇米777| 国产成人高清在线| 欧洲另类一二三四区| 一区二区视频在线看| 97se亚洲国产综合在线| 91精品久久久久久久91蜜桃| 夜夜精品视频一区二区| 99精品欧美一区二区三区| 91精品国产色综合久久ai换脸 | 尤物在线观看一区| 成人在线观看av| 26uuu精品一区二区在线观看| 久久99精品久久久| 色综合久久天天| 亚洲最大成人综合| 久久综合九九| 亚洲视频狠狠干| 国产美女99p| 国产亚洲综合av| 成人精品在线视频观看| 欧美精品日日鲁夜夜添| 捆绑紧缚一区二区三区视频| 亚洲春色在线视频| 亚洲乱码一区二区三区在线观看| av激情久久| 中文字幕av一区二区三区免费看| www.欧美.com| 精品免费99久久| 岛国一区二区三区| 日韩一区二区三区三四区视频在线观看| 黄一区二区三区| 欧美精品久久久久久久多人混战 | 国产三级欧美三级日产三级99 | 91免费视频网址| 亚洲精品在线观看视频| 成人app在线| 国产亚洲精久久久久久| 91麻豆精品秘密入口| 欧美激情一区二区三区不卡| 91久久伊人青青碰碰婷婷| 国产日产欧美一区| 国产精品久久久久久久久婷婷| 国产精品伦一区二区三级视频| 国产精品三区www17con| 亚洲精品国产品国语在线app| 任我爽在线视频精品一| 亚洲成人中文在线| 欧美在线免费观看亚洲| 国产不卡免费视频| 国产亚洲精品7777| 久久久久久国产精品免费免费| 亚洲精品菠萝久久久久久久| 日韩精品国内| 青青草97国产精品免费观看 | 久久国产欧美日韩精品| 4438成人网| 91久久精品www人人做人人爽| 国产精品乱子久久久久| 色一情一乱一伦一区二区三区 | 成人av资源网站| 国产精品免费看片| 日韩av图片| 久久99精品国产麻豆婷婷洗澡| 555夜色666亚洲国产免| 91九色蝌蚪成人| 亚洲一卡二卡三卡四卡无卡久久| 欧美在线视频你懂得| 99国产精品久| 亚洲激情欧美激情| 欧美日韩国产欧美日美国产精品| 成人18视频在线播放| 一区二区在线免费| 欧美性做爰猛烈叫床潮| 成av人片一区二区| 亚洲黄色av一区| 欧美日韩你懂得| 国产乱码精品一区二区三区不卡| 亚洲一区二区三区自拍| 欧美精品三级日韩久久| 国产一区再线| 国产主播一区二区| 国产精品美女久久久久久久久久久| 神马欧美一区二区| voyeur盗摄精品| 亚洲一区av在线| 日韩欧美一级二级三级久久久| 欧美精品一区二区三区久久| 精品亚洲国内自在自线福利| 国产精品日韩成人| 欧美体内she精高潮| 国产伦精品一区二区三区视频黑人| 日本91福利区| 亚洲欧洲成人自拍| 337p亚洲精品色噜噜噜| 免费99视频| 国产揄拍国内精品对白| 亚洲免费在线播放| 欧美变态tickling挠脚心| 午夜欧美性电影| 91福利入口| 精品一二三四区| 亚洲一区二区高清| 国产女人水真多18毛片18精品视频 | 国产一区二区三区视频在线播放| 综合欧美一区二区三区| 欧美一区二区三区视频免费播放| 日韩欧美一区二区在线观看 | 成人丝袜18视频在线观看| 一区二区三区成人在线视频| 精品欧美一区二区久久| 91黄色激情网站| 欧美lavv| 成人黄动漫网站免费| 国模娜娜一区二区三区| 亚洲亚洲精品在线观看| 国产拍揄自揄精品视频麻豆| 欧美精品日日鲁夜夜添| 在线观看成人av电影| 久久99精品久久久久久青青日本| 成人综合激情网| 久久99精品网久久| 亚洲va天堂va国产va久| 亚洲视频免费看| 国产精品日韩精品欧美在线| 日韩一区二区在线看| 91高清视频在线| 麻豆久久久9性大片| 国产精华一区| 91免费看`日韩一区二区| 成人一区二区三区视频在线观看| 久久丁香综合五月国产三级网站 | 亚洲乱码精品一二三四区日韩在线|