999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

WINCE的CAN總線設備驅動的設計與實現

2011-08-15 00:52:53孫鶴飛朱維杰
科技傳播 2011年13期
關鍵詞:設備

孫鶴飛,朱維杰

武警工程學院通信工程系,陜西 西安 710086

0 引言

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

1 系統硬件結構

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

2 軟件設計

該設計采用的是wince流接口驅動。流接口驅動程序的主要任務是為應用程序屏蔽了硬件細節,在應用程序看來硬件只不過是一個設備的文件,應用程序可以像操作普通文件一樣對硬件設備進行操作。

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

2.1 軟件處理流程

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

下面介紹幾個關鍵的初始化:

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

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

2.2 流接口函數的導出

流接口驅動程序實現CAN_Init()、CAN_IOControl()以及CAN_PowerUp ()等一組標準的接口函數,用來完成標準的文件I/ O函數等,最終生成一個DLL。在對硬件設備進行操作之前,首先要通過CreatFile()函數、ReadFile()函數、WriteFile()函數、DeviceIOControl()函數等來調用相應的流驅動接口函數,方便用戶使用驅動程序。

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

3 結論

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

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

[2]鄔寬明.CAN總線原理和應用系統設計[M].北京:北京航空航天大學出版社,1996.

猜你喜歡
設備
諧響應分析在設備減振中的應用
調試新設備
當代工人(2020年13期)2020-09-27 23:04:20
基于VB6.0+Access2010開發的設備管理信息系統
基于MPU6050簡單控制設備
電子制作(2018年11期)2018-08-04 03:26:08
廣播發射設備中平衡輸入與不平衡輸入的轉換
電子制作(2018年10期)2018-08-04 03:24:48
食之無味,棄之可惜 那些槽點滿滿的可穿戴智能設備
500kV輸變電設備運行維護探討
工業設計(2016年12期)2016-04-16 02:52:00
HTC斥資千萬美元入股虛擬現實設備商WEVR
IT時代周刊(2015年8期)2015-11-11 05:50:37
Automechanika Shanghai 2014 之“看” 汽保設備篇
如何在設備采購中節省成本
主站蜘蛛池模板: 亚洲欧美精品在线| 五月激激激综合网色播免费| 国产一级视频在线观看网站| 日韩不卡高清视频| 国产呦精品一区二区三区网站| 免费毛片a| 亚洲无码A视频在线| 亚洲精品成人福利在线电影| 日韩A级毛片一区二区三区| 亚洲人成影院午夜网站| 亚洲制服中文字幕一区二区 | 亚洲伊人久久精品影院| 亚洲中文在线视频| 国产真实乱子伦视频播放| 中文字幕伦视频| 久久精品视频亚洲| a毛片基地免费大全| 亚洲国产无码有码| www亚洲天堂| 国精品91人妻无码一区二区三区| 色婷婷成人| 国产亚洲高清在线精品99| 久久不卡国产精品无码| 天天色综网| 国产在线自在拍91精品黑人| 久久精品aⅴ无码中文字幕| 欧美国产在线精品17p| 日韩123欧美字幕| 激情网址在线观看| 国产亚洲精品无码专| 国内精品视频在线| 国产h视频在线观看视频| 国产99精品久久| 国产靠逼视频| 国产综合无码一区二区色蜜蜜| 欧美人与动牲交a欧美精品| 999福利激情视频| 伊人久久婷婷五月综合97色| 亚洲高清无码久久久| 国产欧美在线观看视频| 在线欧美一区| 久久情精品国产品免费| 欧美成人午夜影院| 久久中文字幕2021精品| 在线播放精品一区二区啪视频| 天天色综合4| 蝴蝶伊人久久中文娱乐网| 欧美精品亚洲二区| 区国产精品搜索视频| 国产后式a一视频| 国产成人福利在线视老湿机| 久久久精品无码一二三区| 69国产精品视频免费| 老汉色老汉首页a亚洲| 亚洲日韩高清在线亚洲专区| 91福利在线看| a天堂视频在线| 91丝袜在线观看| 日本伊人色综合网| 久久久91人妻无码精品蜜桃HD | 亚洲第一成年网| 亚洲成AV人手机在线观看网站| 在线观看精品国产入口| 国产精品v欧美| 一区二区三区国产精品视频| 国产情侣一区二区三区| 无码精品一区二区久久久| 国产欧美网站| 美女无遮挡免费网站| 女人天堂av免费| 国产精品片在线观看手机版| 国产亚洲精品91| 亚洲 欧美 中文 AⅤ在线视频| 国产99精品久久| 高清乱码精品福利在线视频| 中文国产成人精品久久| 国产理论精品| 国产在线91在线电影| 高清无码一本到东京热| 国产精品漂亮美女在线观看| 亚洲综合精品香蕉久久网| 国产黄网永久免费|