亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        WINCE的CAN總線設(shè)備驅(qū)動的設(shè)計與實現(xiàn)

        2011-08-15 00:52:53孫鶴飛朱維杰
        科技傳播 2011年13期
        關(guān)鍵詞:驅(qū)動程序寄存器應(yīng)用程序

        孫鶴飛,朱維杰

        武警工程學(xué)院通信工程系,陜西 西安 710086

        0 引言

        在WINCE系統(tǒng)下,CAN的研究已經(jīng)有很多,也取得了不錯的應(yīng)用效果,但是以S3C6410為嵌入式系統(tǒng)硬件核心,外圍擴展CAN 控制器MCP2515,采用嵌入式操作系統(tǒng)WINCE的方案幾乎沒有,所以有研究的價值。

        1 系統(tǒng)硬件結(jié)構(gòu)

        Microchip公司生產(chǎn)的MCP2515芯片是一款帶有兩個SPI接口的CAN控制器,支持CAN技術(shù)規(guī)范V2.0A/B,能夠接收和發(fā)送標準和擴展信息幀,同時具有接收濾波和信息管理的功能。MCP2515芯片通過SPI接口與處理器進行數(shù)據(jù)通信,數(shù)據(jù)傳輸速率最高可達5Mb/s。本設(shè)計的相關(guān)硬件部分為S3C6410和CAN控制器MCP2515、CAN控制器MCP2515和CAN收發(fā)器MCP2551以及CAN收發(fā)器MCP2551和CAN總線的物理連接。MCP2515芯片作為處理器S3C6410的外圍設(shè)備,可以將處理器S3C6410本身的SPI接口接在MCP2515芯片的SPI接口上,MCP2515的TXCAN、RXCAN分 別 接 MCP2551的 TXD、RXD,MCP2551的 CANH、CANL與CAN總線相連。

        2 軟件設(shè)計

        該設(shè)計采用的是wince流接口驅(qū)動。流接口驅(qū)動程序的主要任務(wù)是為應(yīng)用程序屏蔽了硬件細節(jié),在應(yīng)用程序看來硬件只不過是一個設(shè)備的文件,應(yīng)用程序可以像操作普通文件一樣對硬件設(shè)備進行操作。

        對流驅(qū)動設(shè)備的開發(fā)主要包括2方面的工作,第一是編寫流接口驅(qū)動程序,這是最復(fù)雜最關(guān)鍵的部分;第二是編寫上層應(yīng)用程序,此時的硬件設(shè)備就是一個普通文件,應(yīng)用程序通過調(diào)用API函數(shù)即可操作硬件設(shè)備。要操作流接口設(shè)備分為以下幾步:應(yīng)用程序使用文件API對設(shè)備進行訪問,文件API被操作系統(tǒng)發(fā)送到FileSys.exe進程中;FileSys.exe發(fā)現(xiàn)是對設(shè)備進行的操作,就交給設(shè)備管理器進行具體處理;設(shè)備管理器根據(jù)相應(yīng)的請求,調(diào)用對應(yīng)的流接口驅(qū)動程序;最后由驅(qū)動程序負責(zé)與硬件設(shè)備通信。

        2.1 軟件處理流程

        軟件的實現(xiàn),首先要確保處理器S3C6410本身的SPI接口可以正常工作,這樣才可以使用處理器S3C6410的SPI接口對MCP2515的寄存器進行有關(guān)設(shè)置。因此,首先是對S3C6410的SPI接口的初始化,之后是對MCP2515芯片進行的初始化;之后開始編寫MCP2515芯片的收發(fā)程序;然后開始寫出CAN流接口函數(shù)形式;最后導(dǎo)出流接口函數(shù),修改注冊表等文件。

        下面介紹幾個關(guān)鍵的初始化:

        第一,對SPI初始化之前,要進行虛擬地址的映射。根據(jù)硬件平臺,得到S3C6410與MCP2515連接的硬件地址,即MCP2515的物理基地址,再結(jié)合MCP2515的寄存器與基地址的偏移關(guān)系,可以得到寄存器的所有物理地址。在WINCE系統(tǒng)下,因為有MMU管理單元,所以不能使用物理地址,而只能使用虛擬地址VA來訪問該寄存器。調(diào)用WINCE的系統(tǒng)函數(shù)VirtualAlloc()、VirtualCopy()可以把物理地址轉(zhuǎn)化為程序可以訪問的虛擬地址,然后通過MCP2515的虛擬地址來設(shè)置MCP2515的工作狀態(tài)。

        第二,SPI接口的初始化。當虛擬地址映射成功后,開始設(shè)置處理器S3C6410的4 個復(fù)用引腳,分別為SPIMOSI1、SPIMISO1、SPICLK1和SPICS1(片選CS)。SPI正常工作后,就可通過SPI對MCP2515的寄存器進行設(shè)置。 第三,CAN控制器(MCP2515)的初始化。根據(jù)MCP2515 芯片的技術(shù)規(guī)定,采用以下操作步驟對芯片進行初始化。先發(fā)軟復(fù)位命令,接下來分別是禁止中斷命令、進入配置模式命令、設(shè)置波特率命令、進入正常模式命令和設(shè)置屏蔽位命令。 上面的初始化工作完成之后,剩下的就是要實現(xiàn)CAN的流驅(qū)動接口函數(shù)。

        2.2 流接口函數(shù)的導(dǎo)出

        流接口驅(qū)動程序?qū)崿F(xiàn)CAN_Init()、CAN_IOControl()以及CAN_PowerUp ()等一組標準的接口函數(shù),用來完成標準的文件I/ O函數(shù)等,最終生成一個DLL。在對硬件設(shè)備進行操作之前,首先要通過CreatFile()函數(shù)、ReadFile()函數(shù)、WriteFile()函數(shù)、DeviceIOControl()函數(shù)等來調(diào)用相應(yīng)的流驅(qū)動接口函數(shù),方便用戶使用驅(qū)動程序。

        然后建立一個“CAN.def”的文件,將DLL中的函數(shù)輸出,并將此文件添加到流接口驅(qū)動程序的工程里面,此文件所做的工作就是在EXPORTS段后面列出要從DLL中輸出的函數(shù)的名稱。在LIBRARY后面必須加上要編譯文件的實際名。接下來在VS2005打開CAN.reg和CAN.bib,設(shè)置驅(qū)動程序的加載信息。最后增加兩個文件makefile(定義了編譯規(guī)則)和sources(使用的頭文件,自定義函數(shù)庫,系統(tǒng)函數(shù)庫等),重新編譯即可。至此,流接口驅(qū)動編寫完成。

        3 結(jié)論

        該文在對MCP2515芯片功能的介紹下,選擇了WinCE系統(tǒng)下的流驅(qū)動模型,介紹了流接口驅(qū)動開發(fā)步驟。結(jié)合車載虛擬儀表的實際應(yīng)用,在硬件開發(fā)平臺上實現(xiàn)了CAN設(shè)備流接口驅(qū)動的開發(fā),進行了大量的實驗,做了一些通信測試,其結(jié)果基本能滿足我們需要的通信需要,具有一定的實用前景。

        [1]楊軍波,須文波.基于WinCE環(huán)境的CAN適配卡驅(qū)動程序的設(shè)計與實現(xiàn)[J].微計算機信息,2005,21(12):510.

        [2]鄔寬明.CAN總線原理和應(yīng)用系統(tǒng)設(shè)計[M].北京:北京航空航天大學(xué)出版社,1996.

        猜你喜歡
        驅(qū)動程序寄存器應(yīng)用程序
        Lite寄存器模型的設(shè)計與實現(xiàn)
        刪除Win10中自帶的應(yīng)用程序
        電腦報(2019年12期)2019-09-10 05:08:20
        分簇結(jié)構(gòu)向量寄存器分配策略研究*
        關(guān)閉應(yīng)用程序更新提醒
        電腦迷(2012年15期)2012-04-29 17:09:47
        高速數(shù)模轉(zhuǎn)換器AD9779/AD9788的應(yīng)用
        一種可重構(gòu)線性反饋移位寄存器設(shè)計
        三星電子將開設(shè)應(yīng)用程序下載商店
        微軟軟件商店開始接受應(yīng)用程序
        驅(qū)動程序更新與推薦
        驅(qū)動程序更新與推薦
        国产日韩久久久精品影院首页| 国产精品天干天干综合网| 久激情内射婷内射蜜桃| 欧美一级三级在线观看| 少妇爽到爆视频网站免费| av在线高清观看亚洲| 中国人妻与老外黑人| 欧美极品美女| 亚洲一区二区三区免费av在线| 亚洲国产精品悠悠久久琪琪| 亚洲最大av网站在线观看| 久久婷婷综合色丁香五月| 日韩精品精品一区二区三区| 精品国产一区二区三区av麻| 日韩人妻一区二区三区蜜桃视频| 国产精在线| 日韩亚洲午夜精品一区二区三区| 国产精品一区二区三区在线蜜桃| 亚洲狠狠婷婷综合久久久久图片 | 国产成人午夜精品免费视频| 久九九久视频精品网站| 国产成人自拍视频播放| s级爆乳玩具酱国产vip皮裤| 91在线在线啪永久地址| 亚洲国内精品一区二区在线| 狠狠躁夜夜躁人人爽超碰97香蕉| 免费a级毛片无码a∨免费软件| 亚洲 暴爽 AV人人爽日日碰 | 成人亚洲av网站在线看| 国产裸体美女永久免费无遮挡 | 国产91大片在线观看| 亚洲精品一区二区三区麻豆| 最近中文字幕完整版| 麻豆国产VA免费精品高清在线| 亚洲av一区二区三区蜜桃| 国产精品亚洲欧美大片在线看| 亚洲αⅴ无码乱码在线观看性色| 久久久精品少妇—二区| 日本另类αv欧美另类aⅴ| 亚洲精品456| 国产一区二区三区特黄|