欧美第一-欧美第一区-欧美第一页-欧美电影第-欧美电影巜性爽爽-欧美电影一区

電話咨詢

PHONE CONSULTING

+8621 68568185


400 CONSULTING

400-690-8875

QQ在線售后咨詢
WeChat
微信咨詢
臺(tái)灣,香港,澳門,北京,上海,廣州,深圳
點(diǎn)擊我--聯(lián)系我

上海自動(dòng)門,北京感應(yīng)門,廣州旋轉(zhuǎn)門,深圳門禁 China automatic door
內(nèi)容檢索:    繁體中文
相關(guān)鏈接:上海自動(dòng)門,深圳門禁,北京旋轉(zhuǎn)門,廣州閉門器,杭州地彈簧南京國(guó)際品牌專賣店(北京松下,蘇州多瑪,天津蓋澤,上海亞薩合萊,日本納博克,瑞典必盛,瑞士瑞可達(dá),美國(guó)史丹利,法國(guó)GMT,德國(guó)西門子,美國(guó)HID) 上海感應(yīng)門,杭州電動(dòng)門,南京玻璃門,無錫平移門產(chǎn)品設(shè)計(jì)安裝,常州維修,蘇州保養(yǎng),寧波維護(hù)服務(wù)中心;產(chǎn)品涉及到成都商場(chǎng),武漢超市,西安銀行,東莞商鋪,青島店鋪,長(zhǎng)沙汽車,重慶醫(yī)院,沈陽大廈,鄭州小區(qū),濟(jì)南數(shù)據(jù)中心工廠等。 松下自動(dòng)門,Panasonic感應(yīng)門,旋轉(zhuǎn)門,醫(yī)用門 松下自動(dòng)門H3,松下自動(dòng)門新品上市 安徽蕪湖旋轉(zhuǎn)門,合肥自動(dòng)門,滁州門禁,馬鞍山閉門器,宣城地彈簧 臺(tái)灣自動(dòng)門,Taiwan感應(yīng)門,臺(tái)北旋轉(zhuǎn)門,Taipei醫(yī)用門 香港自動(dòng)門,Hong Kong感應(yīng)門,Kowloon Peninsula 九龍半島旋轉(zhuǎn)門,New Territories 新界醫(yī)用門 澳門Macao自動(dòng)門,Macau感應(yīng)門,Ilha da Taipa 氹仔,凼仔島旋轉(zhuǎn)門,Ilha Coloane 路環(huán)島醫(yī)用門 上海至泰自動(dòng)門有限公司 上海至泰自動(dòng)門設(shè)計(jì)安裝維修保養(yǎng)服務(wù)中心 上海松下自動(dòng)門有限公司 上海松下自動(dòng)門 北京松下自動(dòng)門設(shè)計(jì)安裝 廣州,深圳松下自動(dòng)門維修保養(yǎng) 上海至泰自動(dòng)門,杭州,寧波,溫州感應(yīng)門,南京,蘇州,無錫,常州閉門器,嘉興,湖州地彈簧,北京,深圳,廣州旋轉(zhuǎn)門 上海至泰自動(dòng)門,北京旋轉(zhuǎn)門,廣州感應(yīng)門,深圳門禁
 技術(shù)資料
 基礎(chǔ)知識(shí)
 常見問題
 行業(yè)動(dòng)態(tài)
 技術(shù)方案
 行業(yè)法規(guī)
 
 產(chǎn)品快速通道
 
 聯(lián)系電話
 021-68568185 68567085
北京,上海,廣州,深圳
 傳  真
 021-68567085
臺(tái)灣,香港,澳門,臺(tái)北
  產(chǎn)品咨詢      技術(shù)服務(wù)
   
上海自動(dòng)門維修感應(yīng)門保養(yǎng)官網(wǎng)www.zitin.com.cn   www.shanghai-door.com
多瑪自動(dòng)門,閉門器,地彈簧www.zitin.com.cn/dorma   多瑪感應(yīng)門維修保養(yǎng)官網(wǎng)www.shanghai-door.com/dorma
杭州,蘇州,南京,成都,重慶,武漢,西安,天津,長(zhǎng)沙
鄭州,東莞,青島,濟(jì)南,沈陽,昆明,寧波,無錫,常州,合肥
多瑪自動(dòng)門,(Panasonic)松下自動(dòng)門,上海自動(dòng)門,門禁,感應(yīng)門,旋轉(zhuǎn)門,地彈簧,閉門器,門禁上海,門禁系統(tǒng)
 
  當(dāng)前位置:首頁 > 技術(shù)資料> 行業(yè)動(dòng)態(tài) > 一種射頻IC卡就餐機(jī)和后臺(tái)管理微機(jī)的通信設(shè)計(jì)
 
一種射頻IC卡就餐機(jī)和后臺(tái)管理微機(jī)的通信設(shè)計(jì)
文章類別: 行業(yè)動(dòng)態(tài) 加入時(shí)間:2005-1-14

一種射頻IC卡就餐機(jī)和后臺(tái)管理微機(jī)的通信設(shè)計(jì)

一種射頻IC卡就餐機(jī)和后臺(tái)管理微機(jī)的通信設(shè)計(jì)
作者: 梁昌明 李一森
2005-1-14

  摘 要 主要介紹一種射頻IC卡就餐機(jī)和后臺(tái)管理微機(jī)通信的硬件和軟件設(shè)計(jì)。硬件設(shè)計(jì)方面簡(jiǎn)述各種串行通信方法的比較,并詳細(xì)論述了用RS-485實(shí)現(xiàn)遠(yuǎn)距離通信。軟件方面詳述了在VISUAL FOXPRO 5.0中應(yīng)用COMMUNICATIONS 串行通信控件實(shí)現(xiàn)射頻IC卡就餐機(jī)和后臺(tái)管理微機(jī)的通信,實(shí)現(xiàn)了兩者相互傳輸數(shù)據(jù)。

  1 系統(tǒng)總體方案
  我們采用美國(guó)ATMEL公司的子公司TEMIC公司生產(chǎn)的TK5550射頻識(shí)別IC卡、IDIC(Identification Integrated Circuit)、讀寫基站集成電路U2270B和ATMEL公司的8位單片機(jī)研制開發(fā)學(xué)校食堂就餐管理系統(tǒng),系統(tǒng)具有預(yù)付收費(fèi)、目標(biāo)識(shí)別、身份驗(yàn)證、數(shù)據(jù)采集、數(shù)據(jù)加密和數(shù)據(jù)庫管理的功能。系統(tǒng)由TK5550卡、就餐機(jī)、數(shù)據(jù)庫管理系統(tǒng)、就餐機(jī)和數(shù)據(jù)庫管理微機(jī)的通訊系統(tǒng)四部分組成。主機(jī)與就餐機(jī)之間的通信采用RS-485通信**,工作方式為半雙工,每次通信都是主機(jī)**先呼叫從機(jī)。
2 串行通信接口設(shè)計(jì)
  **常見的串行通行接口**是RS-232-C串行總線,傳輸?shù)氖菃味诵盘?hào),即信號(hào)線中一條是公共地線,另一條是信號(hào)線。它只適用于數(shù)據(jù)傳送速率要求不高,距離不長(zhǎng)的場(chǎng)合(小于15米),適合于長(zhǎng)距離傳送的總線**有:RS-422、RS-423、RS-485、RS-499以及20MA電流環(huán)串行接口。
  本系統(tǒng)中單片機(jī)與上位主機(jī)的通訊選用了RS-485總線**,并采用了MAX465芯片來實(shí)現(xiàn),它具有RS-485通訊接口中要的全部功能,數(shù)據(jù)通訊的方向由RE,DE 腳來控制,設(shè)計(jì)中二者連在一起,由單片機(jī)的P1.5來控制,當(dāng)它為高電平時(shí),數(shù)據(jù)由單片機(jī)經(jīng)MAX485到外部串行總線,即處于發(fā)送狀態(tài);為低電平時(shí),數(shù)據(jù)由外部串行總線到單片機(jī)。
  一般微機(jī)的串行口采用RS-232接口,故在主機(jī)一端需要一個(gè)RS-232/RS-485轉(zhuǎn)換器。本設(shè)計(jì)中采用了臺(tái)灣ATEN公司生產(chǎn)的IC-485SN轉(zhuǎn)換器,它是一種雙向RS-232/RS-485或RS-422轉(zhuǎn)換器,可提供點(diǎn)對(duì)點(diǎn)、點(diǎn)對(duì)多點(diǎn)的全雙工和半雙工以及多點(diǎn)的單工串行通信。具體工作方式可**兩個(gè)撥碼開關(guān)和外部界限靈活配置。由于本系統(tǒng)中涉及到多點(diǎn)半雙工通訊,下面就以此方式介紹其使用方法。
 
  在此工作方式下系統(tǒng)的連線如上圖。可見轉(zhuǎn)換器對(duì)外部的RS-485總線只需兩根信號(hào)線:DATA+和DATA-,即發(fā)送和接收數(shù)據(jù)公用一對(duì)差分傳輸線,而轉(zhuǎn)換器和微機(jī)的RS-232接口則需**3根線進(jìn)行連接:RX, DX和RTS/CTS,其中RX為接收數(shù)據(jù)信號(hào)線,TX為發(fā)送數(shù)據(jù)信號(hào)線,RTS和CTS端接在一起,控制數(shù)據(jù)發(fā)送是否允許。由于轉(zhuǎn)換器工作時(shí)RTS必須為高電平來為轉(zhuǎn)換器供電,即轉(zhuǎn)換器接收數(shù)據(jù)時(shí)也一直處于數(shù)據(jù)發(fā)送允許的狀態(tài),為避免發(fā)生沖突,應(yīng)在設(shè)計(jì)主機(jī)串行通訊程序時(shí),控制發(fā)送和接收數(shù)據(jù)分時(shí)進(jìn)行,即系統(tǒng)始終工作在半雙工的工作方式。
3 串行通信程序設(shè)計(jì)
  本系統(tǒng)上位主機(jī)數(shù)據(jù)庫管理系統(tǒng)采用VF5.0編寫,這里介紹的串行通信程序主要是在VF中實(shí)現(xiàn)與單片機(jī)的通信程序設(shè)計(jì)。
3.1就餐系統(tǒng)通信程序的設(shè)計(jì)
  WINDOWS 應(yīng)用程序串行通信方式有調(diào)用WINDOWS API函數(shù)和**的通信控件COMMUNICATIONS兩種方式。本系統(tǒng)采用**的通信控件communications進(jìn)行通信程序的設(shè)計(jì),實(shí)現(xiàn)掛失數(shù)據(jù)的發(fā)送、用戶卡號(hào)的發(fā)送、發(fā)卡和就餐數(shù)據(jù)的接收。在這里主要以接收用戶就餐數(shù)據(jù)為例討論應(yīng)用通信控件Communications通信程序的設(shè)計(jì)。
  就餐機(jī)向主機(jī)傳送的數(shù)據(jù)為學(xué)生卡號(hào)和消費(fèi)金額,主機(jī)把接受后的數(shù)據(jù)臨時(shí)存貯在表jc中,然后**相關(guān)運(yùn)算后修改表stu中的存款數(shù)據(jù)。主機(jī)與多臺(tái)就餐機(jī)的通訊方式為,先與一號(hào)機(jī)通訊,待到一號(hào)機(jī)數(shù)據(jù)傳輸完畢后,再與二號(hào)機(jī)通信直到**大編號(hào)就餐機(jī)。使用主機(jī)的串口com2與就餐機(jī)相連。
3.2 主機(jī)與就餐機(jī)雙方通信的約定
  微機(jī)向就餐機(jī)發(fā)送字**串時(shí),該塊字**串前附加A,末尾附加B,串口兩端的校驗(yàn)和一致,則向微機(jī)發(fā)送C,如果不一致,則向微機(jī)發(fā)送D;微機(jī)收集來自就餐機(jī)的數(shù)據(jù)時(shí),先由微機(jī)向**定的就餐機(jī)發(fā)送E,該就餐機(jī)收到E以后,向微機(jī)發(fā)送數(shù)據(jù)塊以及校驗(yàn)和,并且在數(shù)據(jù)塊的末尾附加F,如果串口兩端的校驗(yàn)和一致,則微機(jī)發(fā)送G,如果不一致,則微機(jī)發(fā)送H。(注:A,B,C,D,E,F,G,H都以ASCII碼格式發(fā)送,而且在OleControl1中收到的都是字**,而不是數(shù)字)。
3.3 通信程序?qū)崿F(xiàn)
  每次通信時(shí),**先在主機(jī)的init事件中初始化通信控件olecontrol1,初始化設(shè)置為:
  thisform.olecontrol1.CommPort=1 //選擇串行口com1
  thisform.olecontrol1.PortOpen=1 //打開串行口com1
  thisform.olecontrol1.InputMode=0 //接收的數(shù)據(jù)按文本方式
  thisform.olecontrol1.RTSEnable=1 //允許使用rts線,用于rs-232/485轉(zhuǎn)換器的發(fā)送控制和供電
  thisform.olecontrol1.InputLen=1 //每次讀取接收緩沖區(qū)的一個(gè)字**
  thisform.olecontrol1.OutbufferCount=0 //清除發(fā)送緩沖區(qū)
  thisform.olecontrol1.InbufferCount=0 //清除接收緩沖區(qū)
  定時(shí)控件timer1作為超時(shí)定時(shí)器, 在Timer1的OnTimer事件中,(假定共有兩臺(tái)就餐機(jī))如果微機(jī)向就餐機(jī)#1發(fā)送的數(shù)據(jù)正確,那么,延時(shí)后,向下一個(gè)就餐機(jī)發(fā)送數(shù)據(jù),直到**一個(gè)就餐機(jī),然后提示發(fā)送完畢;如果微機(jī)向就餐機(jī)發(fā)送的數(shù)據(jù)錯(cuò)誤,那么,延時(shí)后,再發(fā)**。如果連續(xù)三次發(fā)送都發(fā)生了錯(cuò)誤,那么,給出錯(cuò)誤的就餐機(jī)號(hào),并且向下一個(gè)就餐機(jī)發(fā)送數(shù)據(jù)。定時(shí)器的初始化為:
  timer1.Interval=50 *定時(shí)時(shí)間間隔為50ms
  timer1.ensbled=.f.先關(guān)超時(shí)定時(shí)器1
  在Command1的Click 事件中**調(diào)用外部過程program2向就餐機(jī)發(fā)送地址(即機(jī)號(hào)),和要求就餐機(jī)向主機(jī)傳送就餐數(shù)據(jù)的命令。Program2的程序?yàn)椋?BR>  procedure programe2
  *發(fā)送機(jī)號(hào)
  表單js.olecontrol1.RThreshold=0
  表單js.olecontrol1.Settings=2400,m,8,1
  jh2=chr(jh2)
  表單js.olecontrol1.OutPut=jh2
  *發(fā)送命令
  表單js.olecontrol1.Settings=2400,s,8,1
  表單js.olecontrol1.OutPut=E
  表單js.olecontrol1.InbufferCount=0
  表單js.olecontrol1.OutbufferCount=0
  表單js.olecontrol1.RThreshold=1
    表單js.timer1.enabled=.t.
    return
    具體為:**先在發(fā)送數(shù)據(jù)之前設(shè)置OLECONTROLL的Rthreshold為0,禁止對(duì)發(fā)送事件產(chǎn)生ONCOMM事件,防止主機(jī)接收自己的數(shù)據(jù)。在發(fā)送一個(gè)字節(jié)的機(jī)號(hào)時(shí),設(shè)settings表單js.olecontrol1.Settings=2400,m,8,1
    即校驗(yàn)位為mark:‘1’,代表地址字節(jié),以校驗(yàn)位作為識(shí)別地址的**。在發(fā)送完機(jī)號(hào)后,設(shè)置settings為:
  表單js.olecontrol1.Settings=2400,s,8,1
    即校驗(yàn)位為space:‘0’,表示發(fā)送的一個(gè)字節(jié)E是要求就餐機(jī)開始向主機(jī)傳送就餐數(shù)據(jù)的命令。主機(jī)向就餐機(jī)發(fā)送數(shù)據(jù)的方法是應(yīng)用通信控件的OUTPUT函數(shù),即為表單js.olecontrol1.OutPut=E。在發(fā)送完命令后,要清控主機(jī)的發(fā)送和接收緩沖區(qū),即令:
   表單js.olecontrol1.InbufferCount=0
  表單js.olecontrol1.OutbufferCount=0
  同時(shí),使控件的Rthreshold有效,等待接收就餐機(jī)發(fā)來的數(shù)據(jù),另外要打開超時(shí)定時(shí)器即令表單js.timer1.enabled=.t.,以判斷就餐機(jī)是否正常。在OleControl1的OnComm事件中,**先判斷控件的屬性CommEvent=2,表示收到 Rthreshold 個(gè)字**。該事件將持續(xù)產(chǎn)生直到用 Input 屬性從接收緩沖區(qū)中刪除數(shù)據(jù)。然后接收從串口來的就餐數(shù)據(jù)和校驗(yàn)和,就餐機(jī)發(fā)送完數(shù)據(jù)后緊接著發(fā)送一個(gè)F,表示數(shù)據(jù)發(fā)送完畢。如果主機(jī)接收正確向就餐機(jī)發(fā)送一個(gè)G。延時(shí)后與下一臺(tái)就餐機(jī)通信。接收后的數(shù)據(jù)臨時(shí)存貯在表JCJ中,等待處理。如果主機(jī)接收不正確向就餐機(jī)發(fā)送一個(gè)H。
  主機(jī)與就餐機(jī)的通信成功與否,在超時(shí)定時(shí)器的ONTIMER事件進(jìn)行判斷,其工作方法在前面已說明。
4 結(jié)束語
  前面比較詳細(xì)的介紹了主機(jī)接收就餐機(jī)數(shù)據(jù)的程序設(shè)計(jì)過程和方法,至于主機(jī)向就餐機(jī)發(fā)送掛失卡號(hào)和發(fā)卡初始化新卡的通信程序的設(shè)計(jì)原理是相同的。只是發(fā)卡時(shí),因?yàn)?*通信要傳輸?shù)臄?shù)據(jù)量很小,卡號(hào)金額均為10個(gè)字**,對(duì)通信結(jié)果成功與否的判斷,沒有使用求校驗(yàn)和的方法,采取了連續(xù)傳輸3次, 在3中取2的措施,這樣更可靠。

參考文獻(xiàn)

[1]ATMEL CORPORATION, U2270B ANTENNA DESIGN HINTS,1999
[2]ATMEL CORPORATION, TK5550 DATA SHEET,1999
[3]ATEN International Co. , LTD, The IC-485SN Converter User Manual, Taiwan, 1999
[4]Small D., “The potential of RFID is finally areality”,Industrial Engineering, Vol 24 Iss: 10 p.46-7,Data:Oct.1992
[5]美國(guó)愛**梅爾(ATMEL)公司,IC智能卡技術(shù)手冊(cè),1999年4月
[6]劉立康, 用vb5.0實(shí)現(xiàn)與單片機(jī)串行通信的程序設(shè)計(jì),微計(jì)算機(jī)信息,1999年第15卷第3期
[7]范逸之, Visual Basic 與 RS-232 串行通信控制, 中國(guó)青年出版社, 2000年8月
[8]夏海燕、羅家融、王玲,運(yùn)行VB的MSCOMM控件實(shí)現(xiàn)一機(jī)對(duì)多機(jī)數(shù)據(jù)通信的實(shí)例, 微計(jì)算機(jī)信息,1999年第4期
[9]周捷、張為公, WINDOWS95環(huán)境下利用VISUAL C++實(shí)現(xiàn)微機(jī)與GPS-OEM板的串行通信, 電子技術(shù)應(yīng)用, 1998年第11期
[10]陳堅(jiān)、孫志月, MODEM通信編程技術(shù), 西安電子科技出版社, 1998年
[11]彭江平、王毅、李靜、倪芳,Visual Foxpro 5.0面向?qū)ο蟪绦蛟O(shè)計(jì)祥解及實(shí)例,人民郵電出版社,1998年
[12]姜靈敏、彭江平、毛錦云,Visual Foxpro 5.0程序設(shè)計(jì)入門,人民郵電出版社,1998年


2005-1-14

  摘 要 主要介紹一種射頻IC卡就餐機(jī)和后臺(tái)管理微機(jī)通信的硬件和軟件設(shè)計(jì)。硬件設(shè)計(jì)方面簡(jiǎn)述各種串行通信方法的比較,并詳細(xì)論述了用RS-485實(shí)現(xiàn)遠(yuǎn)距離通信。軟件方面詳述了在VISUAL FOXPRO 5.0中應(yīng)用COMMUNICATIONS 串行通信控件實(shí)現(xiàn)射頻IC卡就餐機(jī)和后臺(tái)管理微機(jī)的通信,實(shí)現(xiàn)了兩者相互傳輸數(shù)據(jù)。

  1 系統(tǒng)總體方案
  我們采用美國(guó)ATMEL公司的子公司TEMIC公司生產(chǎn)的TK5550射頻識(shí)別IC卡、IDIC(Identification Integrated Circuit)、讀寫基站集成電路U2270B和ATMEL公司的8位單片機(jī)研制開發(fā)學(xué)校食堂就餐管理系統(tǒng),系統(tǒng)具有預(yù)付收費(fèi)、目標(biāo)識(shí)別、身份驗(yàn)證、數(shù)據(jù)采集、數(shù)據(jù)加密和數(shù)據(jù)庫管理的功能。系統(tǒng)由TK5550卡、就餐機(jī)、數(shù)據(jù)庫管理系統(tǒng)、就餐機(jī)和數(shù)據(jù)庫管理微機(jī)的通訊系統(tǒng)四部分組成。主機(jī)與就餐機(jī)之間的通信采用RS-485通信**,工作方式為半雙工,每次通信都是主機(jī)**先呼叫從機(jī)。
2 串行通信接口設(shè)計(jì)
  **常見的串行通行接口**是RS-232-C串行總線,傳輸?shù)氖菃味诵盘?hào),即信號(hào)線中一條是公共地線,另一條是信號(hào)線。它只適用于數(shù)據(jù)傳送速率要求不高,距離不長(zhǎng)的場(chǎng)合(小于15米),適合于長(zhǎng)距離傳送的總線**有:RS-422、RS-423、RS-485、RS-499以及20MA電流環(huán)串行接口。
  本系統(tǒng)中單片機(jī)與上位主機(jī)的通訊選用了RS-485總線**,并采用了MAX465芯片來實(shí)現(xiàn),它具有RS-485通訊接口中要的全部功能,數(shù)據(jù)通訊的方向由RE,DE 腳來控制,設(shè)計(jì)中二者連在一起,由單片機(jī)的P1.5來控制,當(dāng)它為高電平時(shí),數(shù)據(jù)由單片機(jī)經(jīng)MAX485到外部串行總線,即處于發(fā)送狀態(tài);為低電平時(shí),數(shù)據(jù)由外部串行總線到單片機(jī)。
  一般微機(jī)的串行口采用RS-232接口,故在主機(jī)一端需要一個(gè)RS-232/RS-485轉(zhuǎn)換器。本設(shè)計(jì)中采用了臺(tái)灣ATEN公司生產(chǎn)的IC-485SN轉(zhuǎn)換器,它是一種雙向RS-232/RS-485或RS-422轉(zhuǎn)換器,可提供點(diǎn)對(duì)點(diǎn)、點(diǎn)對(duì)多點(diǎn)的全雙工和半雙工以及多點(diǎn)的單工串行通信。具體工作方式可**兩個(gè)撥碼開關(guān)和外部界限靈活配置。由于本系統(tǒng)中涉及到多點(diǎn)半雙工通訊,下面就以此方式介紹其使用方法。
 
  在此工作方式下系統(tǒng)的連線如上圖。可見轉(zhuǎn)換器對(duì)外部的RS-485總線只需兩根信號(hào)線:DATA+和DATA-,即發(fā)送和接收數(shù)據(jù)公用一對(duì)差分傳輸線,而轉(zhuǎn)換器和微機(jī)的RS-232接口則需**3根線進(jìn)行連接:RX, DX和RTS/CTS,其中RX為接收數(shù)據(jù)信號(hào)線,TX為發(fā)送數(shù)據(jù)信號(hào)線,RTS和CTS端接在一起,控制數(shù)據(jù)發(fā)送是否允許。由于轉(zhuǎn)換器工作時(shí)RTS必須為高電平來為轉(zhuǎn)換器供電,即轉(zhuǎn)換器接收數(shù)據(jù)時(shí)也一直處于數(shù)據(jù)發(fā)送允許的狀態(tài),為避免發(fā)生沖突,應(yīng)在設(shè)計(jì)主機(jī)串行通訊程序時(shí),控制發(fā)送和接收數(shù)據(jù)分時(shí)進(jìn)行,即系統(tǒng)始終工作在半雙工的工作方式。
3 串行通信程序設(shè)計(jì)
  本系統(tǒng)上位主機(jī)數(shù)據(jù)庫管理系統(tǒng)采用VF5.0編寫,這里介紹的串行通信程序主要是在VF中實(shí)現(xiàn)與單片機(jī)的通信程序設(shè)計(jì)。
3.1就餐系統(tǒng)通信程序的設(shè)計(jì)
  WINDOWS 應(yīng)用程序串行通信方式有調(diào)用WINDOWS API函數(shù)和**的通信控件COMMUNICATIONS兩種方式。本系統(tǒng)采用**的通信控件communications進(jìn)行通信程序的設(shè)計(jì),實(shí)現(xiàn)掛失數(shù)據(jù)的發(fā)送、用戶卡號(hào)的發(fā)送、發(fā)卡和就餐數(shù)據(jù)的接收。在這里主要以接收用戶就餐數(shù)據(jù)為例討論應(yīng)用通信控件Communications通信程序的設(shè)計(jì)。
  就餐機(jī)向主機(jī)傳送的數(shù)據(jù)為學(xué)生卡號(hào)和消費(fèi)金額,主機(jī)把接受后的數(shù)據(jù)臨時(shí)存貯在表jc中,然后**相關(guān)運(yùn)算后修改表stu中的存款數(shù)據(jù)。主機(jī)與多臺(tái)就餐機(jī)的通訊方式為,先與一號(hào)機(jī)通訊,待到一號(hào)機(jī)數(shù)據(jù)傳輸完畢后,再與二號(hào)機(jī)通信直到**大編號(hào)就餐機(jī)。使用主機(jī)的串口com2與就餐機(jī)相連。
3.2 主機(jī)與就餐機(jī)雙方通信的約定
  微機(jī)向就餐機(jī)發(fā)送字**串時(shí),該塊字**串前附加A,末尾附加B,串口兩端的校驗(yàn)和一致,則向微機(jī)發(fā)送C,如果不一致,則向微機(jī)發(fā)送D;微機(jī)收集來自就餐機(jī)的數(shù)據(jù)時(shí),先由微機(jī)向**定的就餐機(jī)發(fā)送E,該就餐機(jī)收到E以后,向微機(jī)發(fā)送數(shù)據(jù)塊以及校驗(yàn)和,并且在數(shù)據(jù)塊的末尾附加F,如果串口兩端的校驗(yàn)和一致,則微機(jī)發(fā)送G,如果不一致,則微機(jī)發(fā)送H。(注:A,B,C,D,E,F,G,H都以ASCII碼格式發(fā)送,而且在OleControl1中收到的都是字**,而不是數(shù)字)。
3.3 通信程序?qū)崿F(xiàn)
  每次通信時(shí),**先在主機(jī)的init事件中初始化通信控件olecontrol1,初始化設(shè)置為:
  thisform.olecontrol1.CommPort=1 //選擇串行口com1
  thisform.olecontrol1.PortOpen=1 //打開串行口com1
  thisform.olecontrol1.InputMode=0 //接收的數(shù)據(jù)按文本方式
  thisform.olecontrol1.RTSEnable=1 //允許使用rts線,用于rs-232/485轉(zhuǎn)換器的發(fā)送控制和供電
  thisform.olecontrol1.InputLen=1 //每次讀取接收緩沖區(qū)的一個(gè)字**
  thisform.olecontrol1.OutbufferCount=0 //清除發(fā)送緩沖區(qū)
  thisform.olecontrol1.InbufferCount=0 //清除接收緩沖區(qū)
  定時(shí)控件timer1作為超時(shí)定時(shí)器, 在Timer1的OnTimer事件中,(假定共有兩臺(tái)就餐機(jī))如果微機(jī)向就餐機(jī)#1發(fā)送的數(shù)據(jù)正確,那么,延時(shí)后,向下一個(gè)就餐機(jī)發(fā)送數(shù)據(jù),直到**一個(gè)就餐機(jī),然后提示發(fā)送完畢;如果微機(jī)向就餐機(jī)發(fā)送的數(shù)據(jù)錯(cuò)誤,那么,延時(shí)后,再發(fā)**。如果連續(xù)三次發(fā)送都發(fā)生了錯(cuò)誤,那么,給出錯(cuò)誤的就餐機(jī)號(hào),并且向下一個(gè)就餐機(jī)發(fā)送數(shù)據(jù)。定時(shí)器的初始化為:
  timer1.Interval=50 *定時(shí)時(shí)間間隔為50ms
  timer1.ensbled=.f.先關(guān)超時(shí)定時(shí)器1
  在Command1的Click 事件中**調(diào)用外部過程program2向就餐機(jī)發(fā)送地址(即機(jī)號(hào)),和要求就餐機(jī)向主機(jī)傳送就餐數(shù)據(jù)的命令。Program2的程序?yàn)椋?BR>  procedure programe2
  *發(fā)送機(jī)號(hào)
  表單js.olecontrol1.RThreshold=0
  表單js.olecontrol1.Settings=2400,m,8,1
  jh2=chr(jh2)
  表單js.olecontrol1.OutPut=jh2
  *發(fā)送命令
  表單js.olecontrol1.Settings=2400,s,8,1
  表單js.olecontrol1.OutPut=E
  表單js.olecontrol1.InbufferCount=0
  表單js.olecontrol1.OutbufferCount=0
  表單js.olecontrol1.RThreshold=1
    表單js.timer1.enabled=.t.
    return
    具體為:**先在發(fā)送數(shù)據(jù)之前設(shè)置OLECONTROLL的Rthreshold為0,禁止對(duì)發(fā)送事件產(chǎn)生ONCOMM事件,防止主機(jī)接收自己的數(shù)據(jù)。在發(fā)送一個(gè)字節(jié)的機(jī)號(hào)時(shí),設(shè)settings表單js.olecontrol1.Settings=2400,m,8,1
    即校驗(yàn)位為mark:‘1’,代表地址字節(jié),以校驗(yàn)位作為識(shí)別地址的**。在發(fā)送完機(jī)號(hào)后,設(shè)置settings為:
  表單js.olecontrol1.Settings=2400,s,8,1
    即校驗(yàn)位為space:‘0’,表示發(fā)送的一個(gè)字節(jié)E是要求就餐機(jī)開始向主機(jī)傳送就餐數(shù)據(jù)的命令。主機(jī)向就餐機(jī)發(fā)送數(shù)據(jù)的方法是應(yīng)用通信控件的OUTPUT函數(shù),即為表單js.olecontrol1.OutPut=E。在發(fā)送完命令后,要清控主機(jī)的發(fā)送和接收緩沖區(qū),即令:
   表單js.olecontrol1.InbufferCount=0
  表單js.olecontrol1.OutbufferCount=0
  同時(shí),使控件的Rthreshold有效,等待接收就餐機(jī)發(fā)來的數(shù)據(jù),另外要打開超時(shí)定時(shí)器即令表單js.timer1.enabled=.t.,以判斷就餐機(jī)是否正常。在OleControl1的OnComm事件中,**先判斷控件的屬性CommEvent=2,表示收到 Rthreshold 個(gè)字**。該事件將持續(xù)產(chǎn)生直到用 Input 屬性從接收緩沖區(qū)中刪除數(shù)據(jù)。然后接收從串口來的就餐數(shù)據(jù)和校驗(yàn)和,就餐機(jī)發(fā)送完數(shù)據(jù)后緊接著發(fā)送一個(gè)F,表示數(shù)據(jù)發(fā)送完畢。如果主機(jī)接收正確向就餐機(jī)發(fā)送一個(gè)G。延時(shí)后與下一臺(tái)就餐機(jī)通信。接收后的數(shù)據(jù)臨時(shí)存貯在表JCJ中,等待處理。如果主機(jī)接收不正確向就餐機(jī)發(fā)送一個(gè)H。
  主機(jī)與就餐機(jī)的通信成功與否,在超時(shí)定時(shí)器的ONTIMER事件進(jìn)行判斷,其工作方法在前面已說明。
4 結(jié)束語
  前面比較詳細(xì)的介紹了主機(jī)接收就餐機(jī)數(shù)據(jù)的程序設(shè)計(jì)過程和方法,至于主機(jī)向就餐機(jī)發(fā)送掛失卡號(hào)和發(fā)卡初始化新卡的通信程序的設(shè)計(jì)原理是相同的。只是發(fā)卡時(shí),因?yàn)?*通信要傳輸?shù)臄?shù)據(jù)量很小,卡號(hào)金額均為10個(gè)字**,對(duì)通信結(jié)果成功與否的判斷,沒有使用求校驗(yàn)和的方法,采取了連續(xù)傳輸3次, 在3中取2的措施,這樣更可靠。

參考文獻(xiàn)

[1]ATMEL CORPORATION, U2270B ANTENNA DESIGN HINTS,1999
[2]ATMEL CORPORATION, TK5550 DATA SHEET,1999
[3]ATEN International Co. , LTD, The IC-485SN Converter User Manual, Taiwan, 1999
[4]Small D., “The potential of RFID is finally areality”,Industrial Engineering, Vol 24 Iss: 10 p.46-7,Data:Oct.1992
[5]美國(guó)愛**梅爾(ATMEL)公司,IC智能卡技術(shù)手冊(cè),1999年4月
[6]劉立康, 用vb5.0實(shí)現(xiàn)與單片機(jī)串行通信的程序設(shè)計(jì),微計(jì)算機(jī)信息,1999年第15卷第3期
[7]范逸之, Visual Basic 與 RS-232 串行通信控制, 中國(guó)青年出版社, 2000年8月
[8]夏海燕、羅家融、王玲,運(yùn)行VB的MSCOMM控件實(shí)現(xiàn)一機(jī)對(duì)多機(jī)數(shù)據(jù)通信的實(shí)例, 微計(jì)算機(jī)信息,1999年第4期
[9]周捷、張為公, WINDOWS95環(huán)境下利用VISUAL C++實(shí)現(xiàn)微機(jī)與GPS-OEM板的串行通信, 電子技術(shù)應(yīng)用, 1998年第11期
[10]陳堅(jiān)、孫志月, MODEM通信編程技術(shù), 西安電子科技出版社, 1998年
[11]彭江平、王毅、李靜、倪芳,Visual Foxpro 5.0面向?qū)ο蟪绦蛟O(shè)計(jì)祥解及實(shí)例,人民郵電出版社,1998年
[12]姜靈敏、彭江平、毛錦云,Visual Foxpro 5.0程序設(shè)計(jì)入門,人民郵電出版社,1998年

 
  上海至泰智能科技有限公司 版權(quán)所有 © 2005 ZITIN CORPORATION.  相關(guān)鏈接: 上海自動(dòng)門至泰智能感應(yīng)門禁門控公司:是日本松下、德國(guó)蓋澤、多瑪凱拔自動(dòng)門,閉門器,地彈簧等總代理;同時(shí)是德恩科自動(dòng)門電機(jī)感應(yīng)門馬達(dá),德國(guó)西門子、美國(guó)HID、中控人臉識(shí)別指紋門禁指定經(jīng)銷商 Switzerland Germany dormakaba,GEZE, Japan Panasonic Automatic doors, floor springs, and door closers are the general agents in China; At the same time, it is the designated dealer for dunkermotoren automatic door motor induction door motor, Siemens in Germany, HID in the United States, and central control facial recognition fingerprint access control 日本松下自動(dòng)門,閉門器,地彈簧 德國(guó)多瑪自動(dòng)門,閉門器,地彈簧 德國(guó)多瑪自動(dòng)門,閉門器,地彈簧 瑞典亞薩合萊多瑪自動(dòng)門,閉門器,地彈簧 日本納博克自動(dòng)門 美國(guó)史丹利自動(dòng)門 瑞士格里根,瑞可達(dá),美國(guó)史丹利,瑞典亞薩合萊,日本納博克自動(dòng)門 旋轉(zhuǎn)門 平開門 Switzerland GILGEN, record, United States STANLEY, Sweden ASSA ABLOY, Japan NABCO Automatic sliding door, swing door, revolving door Panasonic automatic door,induction door,revolving door Japan, South Korea, Singapore, Israel, Europe, the UK, Germany, Italy, France, Australia, Canada, Malaysia, Indonesia, Thailand, Philippines, brunei, Vietnam, Laos, myanmar, Cambodia,Norway, Iceland, Ireland, the Netherlands, Sweden, Finland, France, Switzerland, Luxembourg, Austria, Spain, Denmark, Belgium, Liechtenstein, Britain, Greece, Andorra, Slovenia, Portugal, the Czech republic, Malta, the United States, Singapore, South Korea, brunei, Israel, Kuwait, Cyprus, Qatar and the united Arab emirates, Australia, New Zealand, America, India, France, Switzerland, Russia, Brazil, Mexico, Iran, Saudi Arabia, Pakistan Automatic sliding door, revolving door, swing door, door closer, floor spring for Hong Kong, Taiwan, Taipei, Macau 香港 ,臺(tái)灣泰山,自動(dòng)門,門弓器,地彈簧-多瑪 dormakaba 蓋澤geze 松下 Panasonic GMT(電動(dòng)感應(yīng)門,旋轉(zhuǎn)門,醫(yī)用門,閉門器) 臺(tái)灣自動(dòng)門,Taiwan感應(yīng)門,臺(tái)北旋轉(zhuǎn)門,Taipei醫(yī)用門 香港自動(dòng)門,Hong Kong感應(yīng)門,Kowloon Peninsula 九龍半島旋轉(zhuǎn)門,New Territories 新界醫(yī)用門 澳門Macao自動(dòng)門,Macau感應(yīng)門,Ilha da Taipa 氹仔,凼仔島旋轉(zhuǎn)門,Ilha Coloane 路環(huán)島醫(yī)用門 Taiwan, Hong Kong, Macau, Beijing, Shanghai, Guangzhou, Shenzhen, Chengdu, Hangzhou, Chongqing, Wuhan, Nanjing, Tianjin, Xi'an, Suzhou, Wuxi, Ningbo, Hefei, Qingdao, Changsha, Dongguan, Zhengzhou, Foshan, Jinan, Kunming, Shenyang, Dalian, Xiamen, Fuzhou, Zhuhai, Quanzhou, Putian 臺(tái)灣,香港,澳門,中國(guó)北京,上海,廣州,深圳,成都,杭州,重慶,武漢,南京,天津,西安,蘇州,無錫,寧波,合肥,青島,長(zhǎng)沙,東莞,鄭州,佛山,濟(jì)南,昆明,沈陽,大連,廈門,福州,珠海,泉州,莆田 蘇州自動(dòng)門-昆山感應(yīng)門設(shè)計(jì)旋轉(zhuǎn)門安裝維修至泰整體解決方案(太倉,常熟,張家港,江蘇省-廠家官網(wǎng))Suzhou Automatic Door - Kunshan Gan Ying Door Design Rotary Door Installation and Maintenance to Tai Integrated Solution (Taicang, Changshu, Zhangjiagang, Jiangsu Province - Manufacturer's Official Website) 蘇州自動(dòng)門設(shè)計(jì)昆山安裝太倉維修常熟保養(yǎng) Suzhou automatic door design, Kunshan installation, Taicang maintenance, Changshu maintenance 一線城市自動(dòng)門安裝感應(yīng)門維修門禁: 北京,深圳,廣州,南京,杭州,蘇州,無錫,常州,溫州,義烏,莆田,泉州,濟(jì)南,青島,西安,成都,鄭州自動(dòng)感應(yīng)門,電動(dòng)玻璃平移門產(chǎn)品設(shè)計(jì)安裝,維修,保養(yǎng),維護(hù)服務(wù)中心;產(chǎn)品涉及到商場(chǎng),無人超市,銀行,商鋪,店鋪,汽車,醫(yī)院,大廈,小區(qū),數(shù)據(jù)中心工廠等。 Installation of automatic doors, induction doors, maintenance and access control in first tier cities: Beijing, Shenzhen, Guangzhou, Nanjing, Hangzhou, Suzhou, Wuxi, Changzhou, Wenzhou, Yiwu, Putian, Quanzhou, Jinan, Qingdao, Xi'an, Chengdu, Zhengzhou Automatic Induction Doors, Electric Glass Sliding Doors Product Design, Installation, Repair, Maintenance, and Service Centers; The products involve shopping malls, unmanned supermarkets, banks, shops, stores, cars, hospitals, buildings, residential areas, data center factories, etc. 上海自動(dòng)門維修感應(yīng)門,至泰門禁系統(tǒng)安裝售后服務(wù)解決方案遍及上海黃浦區(qū)自動(dòng)門,盧灣區(qū),徐匯區(qū),長(zhǎng)寧區(qū),靜安區(qū),普陀區(qū),閘北區(qū),虹口區(qū),楊浦區(qū),閔行區(qū),寶山區(qū),嘉定區(qū),浦東新區(qū),金山區(qū),松江區(qū),青浦區(qū),南匯區(qū),奉賢區(qū),崇明縣;做為專業(yè)的上海自動(dòng)門維修感應(yīng)門安裝公司、工廠、廠家及代理商,我們的品牌有松下、多瑪、蓋澤、瑞可達(dá)、必盛、史丹利、格屋、納博克、亞薩合萊自動(dòng)門;GMT地彈簧,閉門器,BFT庭院門,歐尼克ownic醫(yī)用門,開門機(jī)等。  
| 品牌中心 | 網(wǎng)站地圖 付款信息 │ 聯(lián)系我們
主站蜘蛛池模板: 日韩国产色色色色 | 中文字幕乱老妇 | 欧美日韩精品在线 | 日韩欧美视频一二区 | 午夜视频9999| 97在线视频免费 | 加勒比一本大道 | 国产视觉 | 国产99@热| 国产h精品在线观看 | 成人拍拍拍在线观看 | 91免费视屏| 偶偶福利 | 国产视频一区 | 日韩免费在线观看 | 国产精选自拍第1页 | 日产中文字乱码 | 岛国免费 | 欧美又粗又 | 午夜福利体验区 | 伦理电影手机在线 | 欧美最猛亚洲精品 | 日韩AⅤ在线观看 | 91视频中文 | 欧美另类吹潮 | 欧美亚洲国产 | 国偷精品免费看 | 乱伦免费国产高 | 国产狂喷潮在线播放 | 欧美在线播放成人a | 91啦丨露脸丨熟女 | 成人午夜在线视频网 | 韩国三级hd中文 | 国产又大又硬 | 午夜免费日韩小电影 | 国产极品尤物在线 | 亚洲无码在线观看a | 欧美另类video| 国产不卡视频cr | 成人午夜电影大全 | 日韩在线国产 |