當前位置:首頁 > 電源 > 數(shù)字電源
[導讀]介紹了一種基于DS80C410內(nèi)嵌CAN總線網(wǎng)絡(luò)的食堂售飯系統(tǒng)的設(shè)計,包括系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)和硬件設(shè)計。重點介紹了系統(tǒng)中窗口機的硬件、軟件設(shè)計,并詳細描述了DS80C410內(nèi)嵌CAN模塊的初始化過程和報文收發(fā)過程。

摘要:介紹了一種基于DS80C410內(nèi)嵌CAN總線網(wǎng)絡(luò)的食堂售飯系統(tǒng)的設(shè)計,包括系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)和硬件設(shè)計。重點介紹了系統(tǒng)中窗口機的硬件、軟件設(shè)計,并詳細描述了DS80C410內(nèi)嵌CAN模塊的初始化過程和報文收發(fā)過程。
關(guān)鍵詞:DS80C410    CAN總線    食堂售飯系統(tǒng)    窗口機

1引言 

    CAN總線(Controller Area Network Bus)是一種有效支持分布式控制的串行通信網(wǎng)絡(luò)。它比一般的通信總線具有更高的可靠性、實時性和靈活性。CAN為多主方式工作,網(wǎng)絡(luò)上任一節(jié)點均可在任意時刻主動地向網(wǎng)絡(luò)上其他節(jié)點發(fā)送信息,而且不分主從,通信方式靈活,無需站地址等節(jié)點信息。CAN總線現(xiàn)已廣泛應用于工業(yè)現(xiàn)場控制、小區(qū)安防、環(huán)境監(jiān)控等眾多領(lǐng)域中。

2系統(tǒng)結(jié)構(gòu)

    實時通信的食堂售飯系統(tǒng)的通信特點非常適合于采用CAN總線。它的短幀結(jié)構(gòu)非常適合系統(tǒng)對抗干擾能力和實時通信能力要求較高,單次通信量很小的場合;靈活的組網(wǎng)特點完全可以解決大型食堂售飯系統(tǒng)中多個食堂和營業(yè)網(wǎng)點較分散的問題。

    基于CAN總線的食堂售飯系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。采用總線型接法,主要包含三層:服務(wù)器、中繼器和終端。其中服務(wù)器包括工作服務(wù)器和備用服務(wù)器,這兩個服務(wù)器在營業(yè)時同時工作,互為備用,保證系統(tǒng)的穩(wěn)定可靠。中繼器可以延伸通信距離,增加終端數(shù)目,變換通信速率,并能起到濾波和隔離作用。終端主要是銷售用的窗口機,還包括掛失機、解掛機、發(fā)卡/充值機等。

          

      1  食堂售飯系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)圖                      

2 窗口機硬件結(jié)構(gòu)框圖

3.窗口機硬件設(shè)計

    窗口機是直接與售飯人員和用戶打交道的主要前臺設(shè)備。圖2為窗口機的硬件結(jié)構(gòu)框圖。采用Dallas內(nèi)嵌CAN控制器的高速網(wǎng)絡(luò)微控制器 DS80C410作為窗口機的微處理器,負責整個窗口機和鍵盤的監(jiān)控。MMM為非接觸式IC(Mifare)卡讀/寫器模塊。該模塊在微處理器的控制下,可完成對卡片的非接觸式讀/寫等操作。窗口機的通信任務(wù)是DS80C410內(nèi)嵌的CAN控制器在CPU控制下完成的,CAN控制器通過CAN總線收發(fā)器PCA82C250接收總線上的數(shù)據(jù),供CPU讀取,也可以將CPU送來的數(shù)據(jù)發(fā)送到CAN總線上。內(nèi)嵌CAN控制器通過DS80C410芯片上的P5.1(C0RX-CAN接收)和P5.0(C0TX-CAN發(fā)送)腳分別與收發(fā)器的RXD(接收數(shù)據(jù)輸出)和TXD(發(fā)送數(shù)據(jù)輸入)腳相連。窗口機硬件還包括一個4×4鍵盤(10個數(shù)字鍵、6個功能鍵)、前后各10位數(shù)碼顯示(顯示內(nèi)容完全相同)、32KB的EEPROM(用來存儲消費記錄)、看門狗等部分電路。

4.窗口機軟件設(shè)計

4.1主程序設(shè)計

    窗口機具有連網(wǎng)和脫網(wǎng)兩種運行方式。窗口機的默認工作方式分為連網(wǎng)運行,只有在出現(xiàn)網(wǎng)絡(luò)故障或其他原因無法連網(wǎng)運行時,才通過開關(guān)設(shè)定為脫網(wǎng)運行。圖3為窗口機運行的主程序流程圖。窗口機初始化后,先進行鍵盤處理,LED顯示處理,并判斷是否回收消費記錄。然后查詢是否讀到卡,讀到卡后,調(diào)用相應連網(wǎng)或脫網(wǎng)子程序,進行營業(yè)操作。

   3 窗口機主程序流程圖

4.1.1 CAN的初始化

    窗口機的初始化,包括對CAN模塊的初始化。當系統(tǒng)硬件復位后,首先屏蔽CAN中斷,然后將位于DS80C410的SFR(特殊功能寄存器)中的 C0C(CAN控制寄存器)中的CRST(復位) 位清0,即清除了CAN控制器的復位狀態(tài),同時 SWINT(軟件初始化) 位要置 1,即禁止CAN 的總線活動,這樣才允許程序?qū)?CAN 模塊中的控制寄存器和擴展幀的屏蔽寄存器(C0EGM0~C0EGM3)進行寫操作,并設(shè)置通信波特率、窗口機ID、窗口機號、CAN狀態(tài)、CAN口使能、CAN定時等參數(shù), 初始化CAN模塊。最后恢復CAN中斷。初始化結(jié)束后,要清 SWINT位,恢復 CAN 總線的活動。

4.2子程序設(shè)計

4.2.1工作流程

    在連網(wǎng)情況下,當窗口機通過MMM獲取卡號后,將卡號發(fā)送給服務(wù)器,服務(wù)器收到卡號后,在數(shù)據(jù)庫中查找對應卡號的用戶余額并將其返回給窗口機。窗口機顯示接收到的用戶余額,當一次營業(yè)操作完成以后,窗口機將用戶總消費額發(fā)送給服務(wù)器,服務(wù)器接收到消費額后進行相應數(shù)據(jù)庫記錄的更新,并將已接收消費額的確認幀(ACK)返回給窗口機。如果窗口機將讀到的卡號(SNR)發(fā)送給服務(wù)器的過程中幀丟失,即窗口機沒有收到服務(wù)器的余額幀,這時窗口機等待一個重發(fā)時間,仍未收到服務(wù)器的余額幀后,將重發(fā)先前的卡號。最多重發(fā)3次,當重發(fā)3次仍無法收到服務(wù)器的回應幀后,顯示相應的提示信息。如果在結(jié)帳以后,窗口機發(fā)給服務(wù)器的用戶消費額幀丟失,即服務(wù)器沒有收到消費額幀,無法進行相應記錄的更新,同樣采取上述方法重發(fā)用戶消費額。圖4為連網(wǎng)子程序流程圖。

4 連網(wǎng)子程序流程圖                    

    脫網(wǎng)情況下,窗口機采用的是記帳的辦法,將脫網(wǎng)狀態(tài)下用戶的卡號和消費記錄全部存儲在窗

    口機的EEPROM中,等系統(tǒng)恢復連網(wǎng)運行以后,服務(wù)器從各窗口機中回收存儲的數(shù)據(jù),進行服務(wù)器數(shù)據(jù)庫的更新。由于脫網(wǎng)情況下窗口機不能和服務(wù)器進行實時通信,所以程序較簡單,就不再給出流程圖了。

                

5 發(fā)送子程序                               

    6接收子程序

4.2.2 幀的發(fā)送和接收

    DS80C410中CAN模塊提供了15個報文中心,作為發(fā)送或接收數(shù)據(jù)的存儲器。幀的發(fā)送和接收通過這15個報文中心實現(xiàn),也可以選擇一個或若干個報文中心發(fā)送或接收幀。這15個報文中心發(fā)送或接收數(shù)據(jù)的優(yōu)先級順序是以報文中心的逆序排列的。報文中心1-14可設(shè)置為接收或發(fā)送數(shù)據(jù),報文中心15只能接收數(shù)據(jù)。報文中心的控制寄存器(C0M1C~C0M15C)位于SFR中。每個報文中心有一個格式寄存器(C0MyF)、4個仲裁寄存器和8個字節(jié)(C0MyD0~C0MyD7)的數(shù)據(jù)區(qū)域。仲裁寄存器的值可以在初始化中設(shè)置,也可以在發(fā)送程序中設(shè)置,而且它的值可隨著數(shù)據(jù)的接收而自動更改。另外,報文中心15的C015M0~C015M3寄存器,還可以執(zhí)行附加的濾波。

    當網(wǎng)絡(luò)中某一窗口機處于發(fā)送狀態(tài)時,首先對使用的報文中心初始化,把要發(fā)送的報文裝入報文中心,報文中心仲裁寄存器的值作為幀的標識符發(fā)送出去。圖5為使用報文中心1發(fā)送數(shù)據(jù)的程序流程圖,其中MSRDY(報文中心就緒),DTUP(數(shù)據(jù)更新),MTRQ(CPU發(fā)送請求)等位是報文中心1的控制寄存器C0M1C的位。

    當窗口機處于接收狀態(tài)時,CAN控制器將根據(jù)屏蔽寄存器和接收報文中心的仲裁寄存器的值對接收幀的ID標識符進行判斷,確定報文中心是否接收,只有當接收幀的標識符與仲裁寄存器的值相等的時候,幀才被接收;另外,CAN模塊還有媒體屏蔽寄存器和媒體仲裁寄存器,可對接收的數(shù)據(jù)幀的第0和1兩個字節(jié)進行額外的校驗。圖6是使用報文中心2接收數(shù)據(jù)的程序流程圖。其中 MSRDY,DTUP,MTRQ等位是報文中心 2的控制寄存器 C0M2C的位。

5.結(jié)束語

    DS80C410是帶有以太網(wǎng)和CAN的網(wǎng)絡(luò)微控制器。包括一個10/100以太網(wǎng)MAC,三個全雙工硬件串行口,8個雙向8位端口,一個可選的CAN2.0B控制器,1-Wire®主機和64個I/O引腳及用于存儲用戶應用和網(wǎng)絡(luò)堆棧的64K字節(jié)內(nèi)部SRAM。內(nèi)嵌CAN模塊支持標準(11位)和擴展(29位)標識符和通用掩模,媒體字節(jié)過濾, DeviceNet™,SDS和高層CAN協(xié)議,自動波特率模式和SIESTA低功耗模式?;贒S80C410內(nèi)嵌CAN總線的食堂售飯系統(tǒng),不僅有良好的穩(wěn)定性、安全性和可靠性,而且實時響應能力強,網(wǎng)絡(luò)維護方便,用戶界面友好、軟件使用、升級和移植方便,成本低廉。

    本文創(chuàng)新點:DS80C410集成度較高,16MB連續(xù)存儲空間,能夠同時完成對窗口和鍵盤的監(jiān)控。高達75MHz的系統(tǒng)時鐘頻率,使單周期指令僅54ns。內(nèi)嵌CAN模塊,使窗口機硬件結(jié)構(gòu)更為簡單,節(jié)省硬件資源。CAN模塊的15個報文中心,使通信效率增強。對CAN模塊操作與對單片機擴展外部程序/數(shù)據(jù)存貯器的操作是相同的,軟件實現(xiàn)不復雜。

參考文獻:

[1] Dallas/Maxim semiconductor. DS80C410/DS80C411 Network Microcontrollers with Ethernet and CAN, 2005.
[2] Dallas/Maxim semiconductor. High-Speed Microcontroller User’s Guide, 2004.
[3] Dallas/Maxim semiconductor. High-Speed Microcontroller User’s Guide: Network Microcon- troller Supplement, 2005.
[4] 饒運濤, 鄒繼軍, 鄭勇蕓. 現(xiàn)場總線CAN原理與應用技術(shù) [M]. 北京: 北京航空航天大學出版社, 2003.
[5] 任敏 趙躍華. 內(nèi)嵌CAN總線在智能繼路器中的應用 [J]. 電力自動化設(shè)備,2003, (11) :0060-03,P60~62.
[6] DallasMaxim集成產(chǎn)品公司. CAN總線及其集成解決方案 [J]. 今日電子,2003(5),P29~31.
[7] 鄒繼軍,饒運濤,鄭勇蕓,馮林. CAN總線在食堂售飯系統(tǒng)中的應用[J]. 廈門大學學報(自然科學版),2001(8), 增刊1, 第40卷, P252~254.
[8] 鄒繼軍,饒運濤. 食堂售飯系統(tǒng)窗口機設(shè)計[J]. 東華理工學院學報,2004(3),第27卷, P293~297.
[9] 田希暉,張玘,張連超,羅詩途.CAN總線及其應用技術(shù)[J].微計算機信息(測控自動化)2004,(10).

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉