技術頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網 > 技術頻道 > 技術百科 > 基于DS80C410內嵌CAN總線食堂售飯系統(tǒng)的設計

基于DS80C410內嵌CAN總線食堂售飯系統(tǒng)的設計

時間:2008-05-04 14:37:00來源:ronggang

導語:?介紹了一種基于DS80C410內嵌CAN總線網絡的食堂售飯系統(tǒng)的設計,包括系統(tǒng)的網絡結構和硬件設計。重點介紹了系統(tǒng)中窗口機的硬件、軟件設計,并詳細描述了DS80C410內嵌CAN模塊的初始化過程和報文收發(fā)過程
摘 要:介紹了一種基于DS80C410內嵌CAN總線網絡的食堂售飯系統(tǒng)的設計,包括系統(tǒng)的網絡結構和硬件設計。重點介紹了系統(tǒng)中窗口機的硬件、軟件設計,并詳細描述了DS80C410內嵌CAN模塊的初始化過程和報文收發(fā)過程。 關鍵詞:DS80C410 CAN總線 食堂售飯系統(tǒng) 窗口機 1.引言   CAN總線(Controller Area Network Bus)是一種有效支持分布式控制的串行通信網絡。它比一般的通信總線具有更高的可靠性、實時性和靈活性。CAN為多主方式工作,網絡上任一節(jié)點均可在任意時刻主動地向網絡上其他節(jié)點發(fā)送信息,而且不分主從,通信方式靈活,無需站地址等節(jié)點信息。CAN總線現(xiàn)已廣泛應用于工業(yè)現(xiàn)場控制、小區(qū)安防、環(huán)境監(jiān)控等眾多領域中。 2.系統(tǒng)結構   實時通信的食堂售飯系統(tǒng)的通信特點非常適合于采用CAN總線。它的短幀結構非常適合系統(tǒng)對抗干擾能力和實時通信能力要求較高,單次通信量很小的場合;靈活的組網特點完全可以解決大型食堂售飯系統(tǒng)中多個食堂和營業(yè)網點較分散的問題。   基于CAN總線的食堂售飯系統(tǒng)網絡結構如圖1所示。采用總線型接法,主要包含三層:服務器、中繼器和終端。其中服務器包括工作服務器和備用服務器,這兩個服務器在營業(yè)時同時工作,互為備用,保證系統(tǒng)的穩(wěn)定可靠。中繼器可以延伸通信距離,增加終端數(shù)目,變換通信速率,并能起到濾波和隔離作用。終端主要是銷售用的窗口機,還包括掛失機、解掛機、發(fā)卡/充值機等。
圖1 食堂售飯系統(tǒng)網絡結構圖
圖2 窗口機硬件結構框圖
3.窗口機硬件設計   窗口機是直接與售飯人員和用戶打交道的主要前臺設備。圖2為窗口機的硬件結構框圖。采用Dallas內嵌CAN控制器的高速網絡微控制器 DS80C410作為窗口機的微處理器,負責整個窗口機和鍵盤的監(jiān)控。MMM為非接觸式IC(Mifare)卡讀/寫器模塊。該模塊在微處理器的控制下,可完成對卡片的非接觸式讀/寫等操作。窗口機的通信任務是DS80C410內嵌的CAN控制器在CPU控制下完成的,CAN控制器通過CAN總線收發(fā)器PCA82C250接收總線上的數(shù)據(jù),供CPU讀取,也可以將CPU送來的數(shù)據(jù)發(fā)送到CAN總線上。內嵌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ù)碼顯示(顯示內容完全相同)、32KB的EEPROM(用來存儲消費記錄)、看門狗等部分電路。 4.窗口機軟件設計   4.1主程序設計   窗口機具有連網和脫網兩種運行方式。窗口機的默認工作方式分為連網運行,只有在出現(xiàn)網絡故障或其他原因無法連網運行時,才通過開關設定為脫網運行。圖3為窗口機運行的主程序流程圖。窗口機初始化后,先進行鍵盤處理,LED顯示處理,并判斷是否回收消費記錄。然后查詢是否讀到卡,讀到卡后,調用相應連網或脫網子程序,進行營業(yè)操作。
圖3 窗口機主程序流程圖
  4.1.1 CAN的初始化   窗口機的初始化,包括對CAN模塊的初始化。當系統(tǒng)硬件復位后,首先屏蔽CAN中斷,然后將位于DS80C410的SFR(特殊功能寄存器)中的 C0C(CAN控制寄存器)中的CRST(復位) 位清0,即清除了CAN控制器的復位狀態(tài),同時 SWINT(軟件初始化) 位要置 1,即禁止CAN 的總線活動,這樣才允許程序對 CAN 模塊中的控制寄存器和擴展幀的屏蔽寄存器(C0EGM0~C0EGM3)進行寫操作,并設置通信波特率、窗口機ID、窗口機號、CAN狀態(tài)、CAN口使能、CAN定時等參數(shù), 初始化CAN模塊。最后恢復CAN中斷。初始化結束后,要清 SWINT位,恢復 CAN 總線的活動。   4.2子程序設計   4.2.1工作流程   在連網情況下,當窗口機通過MMM獲取卡號后,將卡號發(fā)送給服務器,服務器收到卡號后,在數(shù)據(jù)庫中查找對應卡號的用戶余額并將其返回給窗口機。窗口機顯示接收到的用戶余額,當一次營業(yè)操作完成以后,窗口機將用戶總消費額發(fā)送給服務器,服務器接收到消費額后進行相應數(shù)據(jù)庫記錄的更新,并將已接收消費額的確認幀(ACK)返回給窗口機。如果窗口機將讀到的卡號(SNR)發(fā)送給服務器的過程中幀丟失,即窗口機沒有收到服務器的余額幀,這時窗口機等待一個重發(fā)時間,仍未收到服務器的余額幀后,將重發(fā)先前的卡號。最多重發(fā)3次,當重發(fā)3次仍無法收到服務器的回應幀后,顯示相應的提示信息。如果在結帳以后,窗口機發(fā)給服務器的用戶消費額幀丟失,即服務器沒有收到消費額幀,無法進行相應記錄的更新,同樣采取上述方法重發(fā)用戶消費額。圖4為連網子程序流程圖。
圖4 連網子程序流程圖
  脫網情況下,窗口機采用的是記帳的辦法,將脫網狀態(tài)下用戶的卡號和消費記錄全部存儲在窗   口機的EEPROM中,等系統(tǒng)恢復連網運行以后,服務器從各窗口機中回收存儲的數(shù)據(jù),進行服務器數(shù)據(jù)庫的更新。由于脫網情況下窗口機不能和服務器進行實時通信,所以程序較簡單,就不再給出流程圖了。
圖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可設置為接收或發(fā)送數(shù)據(jù),報文中心15只能接收數(shù)據(jù)。報文中心的控制寄存器(C0M1C~C0M15C)位于SFR中。每個報文中心有一個格式寄存器(C0MyF)、4個仲裁寄存器和8個字節(jié)(C0MyD0~C0MyD7)的數(shù)據(jù)區(qū)域。仲裁寄存器的值可以在初始化中設置,也可以在發(fā)送程序中設置,而且它的值可隨著數(shù)據(jù)的接收而自動更改。另外,報文中心15的C015M0~C015M3寄存器,還可以執(zhí)行附加的濾波。   當網絡中某一窗口機處于發(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.結束語   DS80C410是帶有以太網和CAN的網絡微控制器。包括一個10/100以太網MAC,三個全雙工硬件串行口,8個雙向8位端口,一個可選的CAN2.0B控制器,1-Wire®主機和64個I/O引腳及用于存儲用戶應用和網絡堆棧的64K字節(jié)內部SRAM。內嵌CAN模塊支持標準(11位)和擴展(29位)標識符和通用掩模,媒體字節(jié)過濾, DeviceNet™,SDS和高層CAN協(xié)議,自動波特率模式和SIESTA低功耗模式。基于DS80C410內嵌CAN總線的食堂售飯系統(tǒng),不僅有良好的穩(wěn)定性、安全性和可靠性,而且實時響應能力強,網絡維護方便,用戶界面友好、軟件使用、升級和移植方便,成本低廉。   本文創(chuàng)新點:DS80C410集成度較高,16MB連續(xù)存儲空間,能夠同時完成對窗口和鍵盤的監(jiān)控。高達75MHz的系統(tǒng)時鐘頻率,使單周期指令僅54ns。內嵌CAN模塊,使窗口機硬件結構更為簡單,節(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原理與應用技術 [M]. 北京: 北京航空航天大學出版社, 2003.   [5] 任敏 趙躍華. 內嵌CAN總線在智能繼路器中的應用 [J]. 電力自動化設備,2003, (11) :0060-03,P60~62.   [6] Dallas\Maxim集成產品公司. CAN總線及其集成解決方案 [J]. 今日電子,2003(5),P29~31.   [7] 鄒繼軍,饒運濤,鄭勇蕓,馮林. CAN總線在食堂售飯系統(tǒng)中的應用[J]. 廈門大學學報(自然科學版),2001(8), 增刊1, 第40卷, P252~254.   [8] 鄒繼軍,饒運濤. 食堂售飯系統(tǒng)窗口機設計[J]. 東華理工學院學報,2004(3),第27卷, P293~297.   [9] 田希暉,張玘,張連超,羅詩途.CAN總線及其應用技術[J].微計算機信息(測控自動化)2004,(10).

標簽:

點贊

分享到:

上一篇:專用銑床數(shù)控系統(tǒng)的研究

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.surachana.com)獨家所有。如需轉載請與0755-82949061聯(lián)系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。

本網轉載并注明其他來源的稿件,均來自互聯(lián)網或業(yè)內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。

相關資訊

網站簡介|會員服務|聯(lián)系方式|幫助信息|版權信息|網站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網-工業(yè)自動化與智能制造的全媒體“互聯(lián)網+”創(chuàng)新服務平臺

網站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2025 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網安備 44030402000946號