<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 基于DS80C410內嵌CAN總線(xiàn)食堂售飯系統的設計

基于DS80C410內嵌CAN總線(xiàn)食堂售飯系統的設計

作者: 時(shí)間:2007-03-23 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:介紹了一種網(wǎng)絡(luò )的售飯,包括的網(wǎng)絡(luò )結構和硬件。重點(diǎn)介紹了中窗口機的硬件、軟件,并詳細描述了模塊的初始化過(guò)程和報文收發(fā)過(guò)程。
關(guān)鍵詞售飯系統窗口機

1引言

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

2系統結構

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

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

1 食堂售飯系統網(wǎng)絡(luò )結構圖

2 窗口機硬件結構框圖

3.窗口機硬件設計

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

4.窗口機軟件設計

4.1主程序設計

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

3 窗口機主程序流程圖

4.1.1 CAN的初始化

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

4.2子程序設計

4.2.1工作流程

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

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

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

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

5 發(fā)送子程序

6接收子程序

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

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

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

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

5.結束語(yǔ)

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

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

參考文獻:

[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] 饒運濤, 鄒繼軍, 鄭勇蕓. 現場(chǎng)總線(xiàn)CAN原理與應用技術(shù) [M]. 北京: 北京航空航天大學(xué)出版社, 2003.
[5] 任敏 趙躍華. 內嵌CAN總線(xiàn)在智能繼路器中的應用 [J]. 電力自動(dòng)化設備,2003, (11) :0060-03,P60~62.
[6] DallasMaxim集成產(chǎn)品公司. CAN總線(xiàn)及其集成解決方案 [J]. 今日電子,2003(5),P29~31.
[7] 鄒繼軍,饒運濤,鄭勇蕓,馮林. CAN總線(xiàn)在食堂售飯系統中的應用[J]. 廈門(mén)大學(xué)學(xué)報(自然科學(xué)版),2001(8), 增刊1, 第40卷, P252~254.
[8] 鄒繼軍,饒運濤. 食堂售飯系統窗口機設計[J]. 東華理工學(xué)院學(xué)報,2004(3),第27卷, P293~297.
[9] 田希暉,張^,張連超,羅詩(shī)途.CAN總線(xiàn)及其應用技術(shù)[J].微計算機信息(測控自動(dòng)化)2004,(10).



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>