毛片网站在线看_天堂俺去俺来也www久久婷婷_日韩av免费网站_18性欧美xxxⅹ性满足_一区二区三区韩国免费中文网站 _性xx色xx综合久久久xx_999亚洲国产精


曙海教育集團(tuán)論壇Win CE 專區(qū)WinCE系統(tǒng)定制與驅(qū)動開發(fā) → 基于WinCE6.0的LPC3250串口驅(qū)動程序開發(fā)


  共有11824人關(guān)注過本帖樹形打印

主題:基于WinCE6.0的LPC3250串口驅(qū)動程序開發(fā)

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


加好友 發(fā)短信
等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
基于WinCE6.0的LPC3250串口驅(qū)動程序開發(fā)  發(fā)帖心情 Post By:2010-11-26 10:34:15

在Clpc32xxPdd16550UART的Init函數(shù)中,GetIsrInfo以串口的Active注冊表鍵為依據(jù)查出物理中斷號,并保存在 DDKISRINFO結(jié)構(gòu)體的dwlrq成員中。KernelloCon-trol函數(shù)將物理中斷號轉(zhuǎn)換為邏輯中斷號,符合條件就將邏輯中斷號回寫到注冊表中。相關(guān)代碼如下:

圖片點擊可在新窗口打開查看

  接著調(diào)用父類CPdd16550的Init函數(shù),創(chuàng)建中斷服務(wù)線程(IST)事件,并通過InterruptInitialize函數(shù)將事件與邏輯中斷號關(guān)聯(lián)起來,最后調(diào)用CreateHardwareAccess和MapHardware函數(shù)將串口基地址及相關(guān)寄存器片內(nèi)地址映射到內(nèi)核進(jìn)程的虛擬地址。

  在MapHardware中,用GetWindowInfo根據(jù)串口的Active注冊表鍵獲得串口的全部I/O端口和內(nèi)存地址信息,然后用 MmMapIoSpace函數(shù)將串口物理地址和相關(guān)控制寄存器地址轉(zhuǎn)換成內(nèi)核進(jìn)程的虛擬地址,以便后面對寄存器進(jìn)行操作,部分代碼如下:

圖片點擊可在新窗口打開查看

  CreateHardwareAccess函數(shù)根據(jù)MapHardware得到的m_pBaseAddress,構(gòu)造一個CRegLPC32xx類實例,然后調(diào)用CRegLPC32xx類的Init函數(shù)確保串口控制器硬件進(jìn)入穩(wěn)定的工作狀態(tài)。

  根據(jù)LPC3250的數(shù)據(jù)手冊,設(shè)置標(biāo)準(zhǔn)UART的波特率需要設(shè)置小數(shù)波特率預(yù)分頻器和UART波特率發(fā)生器。當(dāng)不用小數(shù)波特率預(yù)分頻器(即X=Y=1) 時,將標(biāo)準(zhǔn)UART的{Baudrate,DLM:DLL}的值定義一個數(shù)組BaudPairs[]。GetDivisorOfRate根據(jù)這個數(shù)組得到分頻系數(shù),然后調(diào)用父類的成員函數(shù)SetBaudRate便可設(shè)置波特率。高速UART的波特率類似,只是波特率計算公式和分頻系數(shù)與標(biāo)準(zhǔn)UART不同。

  用GetWaterMark得到接收器FIFO的觸發(fā)深度,分別為16、32、48和60位,然后在CPdd16550的InitReceive中設(shè)置FIFO控制寄存器,默認(rèn)的FIFO觸發(fā)深度是32位。

  Clpc32xxPdd16550UART是個抽象類,實現(xiàn)通用功能,具體的要分別由繼承的標(biāo)準(zhǔn)串口Clpc32xxPdd16550Stan- dardUART類和高速串口Clpc32xxPdd16550HighUART類實現(xiàn)。在各自初始化時,主要是配置各種寄存器,實現(xiàn)具體硬件差異化,包括:配置UART時鐘控制寄存器、時鐘模式寄存器和時鐘選擇寄存器,分別使能UART時鐘、設(shè)置自動時鐘模式、選擇相應(yīng)的時鐘源作為分頻器的輸入時鐘;禁止UART3 Modem和UART6 IrDA功能;禁止UART的回送功能。

  特別要強(qiáng)調(diào)的是關(guān)于中斷的處理,串口驅(qū)動中斷可以用動態(tài)映射,也可以用靜態(tài)映射。在OEMInter-ruptHandler、 Clpc32xxPdd16550UART::Init、CPdd16550::Init、CPdd16550::ThreadRun等處加入調(diào)試打印信息,可以較快地找到問題所在,確定硬件中斷是否映射為系統(tǒng)中斷、系統(tǒng)中斷與中斷事件是否綁定、中斷產(chǎn)生時是否進(jìn)入相應(yīng)的處理程序。中斷處理好了,串口驅(qū)動就基本完成了。

  上述工作結(jié)束后,就要添加串口的注冊表。以串口3為例,主要是設(shè)置動態(tài)鏈接庫DLL、設(shè)備基地址、中斷號、前綴名、被加載的順序等。根據(jù)注冊表的 DeviceArrayIn-dex、CreateSerialObject就可以構(gòu)造標(biāo)準(zhǔn)串口或高速串口類實例了, DeleteSerialObject在退出驅(qū)動時刪除實例。具體代碼如下:

圖片點擊可在新窗口打開查看

圖片點擊可在新窗口打開查看

圖片點擊可在新窗口打開查看

  在廣州致遠(yuǎn)電子有限公司的SmartARM3250開發(fā)板上,通過WinCE的串口應(yīng)用程序與上位PC機(jī)進(jìn)行發(fā)送接收實驗,本驅(qū)動已經(jīng)實現(xiàn)標(biāo)準(zhǔn)串口最高460 800 b/s、高速串口最高921 600 b/s的穩(wěn)定傳輸。

  結(jié) 語

  本文介紹了WinCE6.0下的串口驅(qū)動模型,結(jié)合LPC3250的硬件情況,詳細(xì)說明了串口驅(qū)動開發(fā)過程,包括配置串口相關(guān)的寄存器和處理中斷中重要函數(shù)的實現(xiàn),以及注冊表和Source文件編寫等。本驅(qū)動程序在廣州致遠(yuǎn)電子有限公司的SmartARM3250開發(fā)板上實驗成功。在串口驅(qū)動開發(fā)中所用的思路,對其他類似的驅(qū)動設(shè)計有較高的參考價值。

 

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

返回版面帖子列表

基于WinCE6.0的LPC3250串口驅(qū)動程序開發(fā)








簽名
毛片网站在线看_天堂俺去俺来也www久久婷婷_日韩av免费网站_18性欧美xxxⅹ性满足_一区二区三区韩国免费中文网站 _性xx色xx综合久久久xx_999亚洲国产精
欧美大片在线观看一区二区| 一区二区三区产品免费精品久久75| 精品国产一区二区三区久久影院| 国产激情偷乱视频一区二区三区| 亚洲无人区一区| 国产在线播放一区二区三区| 欧美日韩在线播| 亚洲欧洲国产专区| 国产在线视频一区二区| 在线成人免费视频| 一区二区高清免费观看影视大全| 国产精品久久久久久久久免费桃花 | 成人欧美一区二区三区白人 | 欧美日韩久久久一区| 中文字幕第一区第二区| 国产成人精品免费一区二区| 久久久精品国产免大香伊| 日韩影视精彩在线| 日韩一区二区三区在线视频| 亚洲国产精品久久久男人的天堂| 久久aⅴ国产欧美74aaa| 欧美一级日韩免费不卡| 青青草精品视频| 日韩一级免费观看| 精品一区二区久久久| 日韩美女一区二区三区| 韩国精品在线观看| 久久久午夜电影| 国产精品18久久久久| 日韩视频一区在线观看| 久久精品av麻豆的观看方式| 26uuu国产日韩综合| 国内精品国产三级国产a久久| aaa亚洲精品一二三区| 国产日韩欧美不卡| 成人黄色av网站在线| 亚洲欧洲成人精品av97| 日韩在线卡一卡二| 99精品国产91久久久久久| 欧美经典一区二区三区| 精品一区二区三区免费| 欧美一区二区三区小说| 亚洲成人av在线电影| 日韩欧美国产精品| 久久99九九99精品| 成人欧美一区二区三区| 99精品欧美一区| 午夜私人影院久久久久| 欧美精品一二三| 亚洲一卡二卡三卡四卡五卡| 欧美一级精品大片| 国产乱码精品一区二区三区忘忧草| 91精品国产综合久久香蕉麻豆| 日韩欧美在线123| 国产一区二区三区四区五区美女| 99久久免费视频.com| 亚洲成av人片在线观看| 不卡一区二区在线| 亚洲黄色av一区| 99麻豆久久久国产精品免费 | 久久久久久久久久久99999| 久久机这里只有精品| 日本一区二区久久| 一本一道综合狠狠老| 久久不见久久见中文字幕免费| 一本久久a久久免费精品不卡| 久久综合久久久久88| 国产91高潮流白浆在线麻豆| 国产欧美一区二区精品婷婷| 欧美网站一区二区| 国内精品久久久久影院一蜜桃| 日韩一区二区免费电影| 国产iv一区二区三区| 天天综合色天天综合色h| 久久亚洲一级片| 色诱视频网站一区| 免费人成在线不卡| 亚洲国产日韩精品| 久久精品欧美日韩| 日韩精品自拍偷拍| 色综合久久中文综合久久97| 高清不卡一二三区| 日韩精品91亚洲二区在线观看| 欧美美女直播网站| 国内成人自拍视频| 专区另类欧美日韩| 日韩欧美亚洲另类制服综合在线| 一区二区三区在线不卡| 欧美大度的电影原声| 国产91丝袜在线18| 成人欧美一区二区三区白人| 欧美一卡2卡三卡4卡5免费| 91成人在线免费观看| 国产很黄免费观看久久| 久久精品国产精品亚洲红杏| 亚洲天堂2016| 国产精品天干天干在观线 | 日本道免费精品一区二区三区| 久久网站热最新地址| 色综合久久中文综合久久牛| 成人久久视频在线观看| 免费观看一级特黄欧美大片| 亚洲女同女同女同女同女同69| 成人深夜在线观看| 另类人妖一区二区av| 亚洲小说春色综合另类电影| 欧美国产一区在线| 日韩久久精品一区| 3d动漫精品啪啪一区二区竹菊 | 日韩制服丝袜av| 成人免费视频在线观看| 亚洲精品在线电影| 欧美电影免费观看完整版| 欧美怡红院视频| 欧美视频自拍偷拍| 色成人在线视频| 在线日韩一区二区| av激情亚洲男人天堂| voyeur盗摄精品| 丁香婷婷综合色啪| av不卡免费电影| av男人天堂一区| 91精彩视频在线| 91久久精品一区二区二区| 91国偷自产一区二区使用方法| 日韩精品91亚洲二区在线观看| 久久久欧美精品sm网站| 7777精品久久久大香线蕉| 69av一区二区三区| 91精品国产综合久久精品图片 | 亚洲视频小说图片| 精品国产人成亚洲区| 精品av综合导航| 日韩视频一区二区三区在线播放 | 欧美一区二区观看视频| 欧美日韩在线免费视频| 欧美久久久久久蜜桃| 欧美探花视频资源| 2019国产精品| 久久久久久久久久久久久久久99 | 91麻豆精品国产91久久久久久久久| 亚洲男帅同性gay1069| 亚洲一区在线观看免费观看电影高清| 欧美一区二区三区播放老司机 | 日韩欧美亚洲国产精品字幕久久久 | 亚洲福利电影网| 一区二区三区在线播放| 精品一区免费av| 丰满亚洲少妇av| 欧美日韩夫妻久久| 欧美一三区三区四区免费在线看| 91香蕉视频污| 日本韩国欧美在线| 日韩精品综合一本久道在线视频| 91国偷自产一区二区三区成为亚洲经典 | av在线不卡网| 911精品产国品一二三产区| 欧美r级在线观看| 国产精品拍天天在线| 亚洲少妇30p| 久久99精品一区二区三区三区| 亚洲午夜一区二区三区| 日本在线不卡视频一二三区| 久久精品国产一区二区| 色婷婷久久一区二区三区麻豆| 国产剧情在线观看一区二区| 日本精品视频一区二区| 欧美一级xxx| 亚洲乱码国产乱码精品精小说| 欧美激情在线看| 日韩成人免费电影| 国产在线麻豆精品观看| 欧美性大战久久久| 久久久久久久网| 美女视频网站黄色亚洲| 成人高清免费在线播放| 精品国产免费一区二区三区四区 | 另类小说欧美激情| 久久久综合视频| 亚洲日本一区二区三区| 国产精品888| 午夜精品成人在线视频| 国产精品888| 欧美视频日韩视频| 国产精品久久久久久久久久久免费看| 欧美精品xxxxbbbb| **性色生活片久久毛片| 日韩精彩视频在线观看| 美女一区二区三区在线观看| 国产·精品毛片| 精品日韩在线一区| 亚洲成人av福利| 欧美亚洲日本国产| 亚洲国产精品成人久久综合一区| 亚洲免费伊人电影| 国产精品一区二区在线观看网站| 成人激情图片网| 欧美一区二区三区小说| 日韩不卡一区二区三区| 色猫猫国产区一区二在线视频|