一级毛片免费不卡在线视频,国产日批视频免费在线观看,菠萝菠萝蜜在线视频免费视频,欧美日韩亚洲无线码在线观看,久久精品这里精品,国产成人综合手机在线播放,色噜噜狠狠狠综合曰曰曰,琪琪视频

WindowsCE.Net下CAN卡的驅(qū)動(dòng)程序設(shè)計(jì)

時(shí)間:2023-05-01 12:15:39 電子通信論文 我要投稿
  • 相關(guān)推薦

WindowsCE.Net下CAN卡的驅(qū)動(dòng)程序設(shè)計(jì)

摘要:主要討論在WinCE設(shè)計(jì)和開(kāi)發(fā)CAN卡通信程序的方法;詳細(xì)介紹CAN卡底層驅(qū)動(dòng)函數(shù)的設(shè)計(jì)和實(shí)現(xiàn),同時(shí)將驅(qū)動(dòng)進(jìn)行封裝,用動(dòng)態(tài)庫(kù)的方式提供給用戶(hù)CAN卡通信用的驅(qū)動(dòng),使用啟可以方便地在自己的程序中調(diào)用,實(shí)現(xiàn)WinCE下的CAN卡通信。

    關(guān)鍵詞:WinCE.NET CAN 驅(qū)動(dòng)

引言

近年來(lái)電力行業(yè)為了快速部署變電站,采用了建造整體變電所的方法:在生產(chǎn)基地將變電站的內(nèi)部設(shè)備安裝、調(diào)試完成,只留下與外界的接口,整體運(yùn)到變電站所在地后進(jìn)行安裝和簡(jiǎn)單調(diào)試即可投入運(yùn)行。其內(nèi)部設(shè)備通過(guò)CAN總線(xiàn)進(jìn)行通信,系統(tǒng)原有的監(jiān)控軟件基于DOS系統(tǒng),維護(hù)調(diào)試比較困難,因此想要尋求更方便、友好的系統(tǒng)支持。經(jīng)過(guò)比較,嵌入式操作系統(tǒng)市場(chǎng)上風(fēng)頭正勁的Windows CE .NET成為最終選擇。微軟的最新產(chǎn)品Windows CE.NET提供了端對(duì)端的開(kāi)發(fā)、調(diào)試手段,可以不拆卸設(shè)備的情況下通過(guò)Telnet登錄到WindowsCE上進(jìn)行調(diào)試和維護(hù),其系統(tǒng)本身為嵌入式市場(chǎng)進(jìn)行重新設(shè)計(jì),包括創(chuàng)建一個(gè)基于WindowsCE的定制設(shè)備所需的一切。這樣就需要將原來(lái)DOS下的程序移植到WindowsCE.NET下,但是各個(gè)硬件廠(chǎng)商目前還沒(méi)有提供CAN通信卡在Windows CE.NET下的驅(qū)動(dòng),所以開(kāi)發(fā)Windows CE.NET下的CAN卡驅(qū)動(dòng)成為項(xiàng)目推行中的關(guān)鍵一環(huán)。

本文主要針對(duì)研華的雙口CAN卡PCM3680進(jìn)行分析,介紹在WindowsCE.ENT系統(tǒng)下進(jìn)行底層設(shè)備驅(qū)動(dòng)開(kāi)發(fā)的方法并提供CAN通信的實(shí)例。

1 CAN總線(xiàn)通信協(xié)議及CAN通信卡介紹

CAN總線(xiàn)是德國(guó)Bosch公司20世紀(jì)80年代初為解決現(xiàn)代汽車(chē)中眾多的控制與測(cè)試儀器之間的數(shù)據(jù)交換而開(kāi)的一種串行數(shù)據(jù)通信協(xié)議。它是一種多主總線(xiàn),廢除了傳統(tǒng)的站地址編碼,而代之以對(duì)通信數(shù)據(jù)塊進(jìn)行編碼。這種方法使網(wǎng)絡(luò)內(nèi)節(jié)點(diǎn)個(gè)數(shù)在理論上不受限制,擴(kuò)展格式中的29位的標(biāo)識(shí)碼便可以定義2 29個(gè)不同的數(shù)據(jù)塊。

在本項(xiàng)目中使用的是研華的PCM3680,這是一塊嵌入式PC104的雙口CAN總線(xiàn)通信卡;CAN控制器采用Philips的獨(dú)立CAN控制器SJA1000芯片;CAN收發(fā)器采用Philips的P82C250,可以同時(shí)操作兩個(gè)CAN網(wǎng)絡(luò),提供高達(dá)1Mb/s的傳輸速度。PCM3680支持很寬的中斷范圍:中斷3、4、5、6、7、9、10、11、12、15,同時(shí)1000V的光電隔離提供系統(tǒng)高可靠性。在CAN卡通信中,要用到CAN控制器中的很多寄存器,各個(gè)寄存器的含義和作用可以參考控制芯片的說(shuō)明書(shū)。圖1列出驅(qū)動(dòng)程序設(shè)計(jì)中用到最主要的寄存器結(jié)構(gòu)。

2 CAN卡驅(qū)動(dòng)底層函數(shù)設(shè)計(jì)

本方案設(shè)計(jì)CAN驅(qū)動(dòng)是放在Windows CE操作系統(tǒng)的內(nèi)核下層,位于OEM adaptation layer(OAL)層的一個(gè)真正的驅(qū)動(dòng),而不是在主程序中的串口操作。在Windows CE的設(shè)備管理器可以看到CAN1和CAN2兩個(gè)端口,并且可以查看其工作的正常與否和對(duì)其進(jìn)行配置。如:中斷號(hào)和I/O地址。

2.1 CAN卡寄存器讀寫(xiě)函數(shù)

[1] [2] [3] [4] [5] [6] 

【W(wǎng)indowsCE.Net下CAN卡的驅(qū)動(dòng)程序設(shè)計(jì)】相關(guān)文章:

基于Windows 2000的多路話(huà)音采集壓縮卡驅(qū)動(dòng)程序設(shè)計(jì)05-02

案例驅(qū)動(dòng)在C語(yǔ)言程序設(shè)計(jì)教學(xué)中的探索實(shí)踐04-28

RAID卡·什么是支持驅(qū)動(dòng)器數(shù)目04-26

Can04-29

任務(wù)驅(qū)動(dòng)教學(xué)法在《VB語(yǔ)言程序設(shè)計(jì)》教學(xué)中的初探04-30

在《ASP程序設(shè)計(jì)》教學(xué)中采用任務(wù)驅(qū)動(dòng)教學(xué)法的研究04-26

低雜波電流驅(qū)動(dòng)下加熱的數(shù)值模擬04-27

任務(wù)驅(qū)動(dòng)下的高職旅游英語(yǔ)口語(yǔ)教學(xué)04-30

黑河流域下游水分驅(qū)動(dòng)下的生態(tài)演化04-30

結(jié)構(gòu)驅(qū)動(dòng)戰(zhàn)略下的虛擬組織:演化、條件和影響04-28