谘詢電話

ENGLISH0755-88840386
新聞中心

谘詢電話

0755-88840386
您的位置:首頁 > 新聞中心>詳情頁

基於MSComm控件的稱重儀表與計算機的串行通信

發布時間:2020-12-03 11:38:02 |來源:網絡轉載

0前言
稱重儀表是大家日常生活所見的更為普遍的一種儀表盤,伴隨著自動化科技等每門課程的發展趨勢,如今的稱重儀表已不僅是將淨重顯示信息出去,而提升了很多新的作用,如串口通信、複印等。該文關鍵詳細介紹稱重儀表的串口通信,在儀表盤與電子計算機的通訊中,主要是運用單片機的串行接口來完成串口通信,將單片機與電子計算機相接組成上下位機的構造,以拓展操縱頁麵,完成人機交互技術。稱重儀表常用的單片機是SYNCMOS-SM8958A,歸屬於8052係列產品單片機的繼承商品。
1稱重儀表串口通信
1.1RS232脈衝信號變換通信接口
單片機有一個串口通信插口,其標準接口為TTL規範,而電子計算機串口通信的標準接口為RS232C標準接口。它合適於數據信息傳輸速率0~115200b/s範疇內的通訊。係統軟件中串口通信在硬件配置上釆用3線製RxD、TxD、GND軟揮手的零MODEM方法,僅必須3個線就可在2個數據機器設備中間完成全雙工的數據信息傳輸,將要PC機和單片機的傳送數據線TxD與讀取數據RxD交叉式聯接,二者的接地線GND立即相接,別的電源線能夠無需,而釆用手機軟件揮手方法。那樣既能夠完成預訂的每日任務,又可以簡單化電路原理節約成本。可是電子計算機根據串行接口處理芯片,推送和接受的全是TTL電平表明的電子信息。它與TTLMOS邏輯性脈衝信號徹底不一樣,邏輯性。脈衝信號要求為5~15V中間,邏輯性1是脈衝信號為-5~-15V中間。因而在將電子計算機和單片機的RxD和TxD交叉式聯接時,務必開展脈衝信號變換,釆用某企業的MAX232來做脈衝信號變換。MAX232歸屬於某企業的通用性串行通信接受/推送驅動器處理芯片。其外圍電路簡易,隻需外接4個0.1讓的電容器就可以,MAX232將電子計算機的TxD端輸出的TTL電平數據信號變換為RS232C脈衝信號,輸出到單片機的RxD腳位。
1.2単片機串口通信
SM8958A係列產品單片機根據外界腳位RxD(P3.0,串行通信數據信息協調器)、TxD(P3.1,串行通信數據信息推送端)向客戶出示一個可編程控製器的全雙工串口通信插口,其內部結構示意圖如圖2所顯示。推送油壓緩衝器和接受油壓緩衝器全是以8031內部獨特作用存儲器SBUF的為名存有的,2個緩衝寄存器公共一個詳細地址99H,可以用讀/寫命令區別。要傳送數據時隻需應用“MOVSBUF,A”寫命令,CPU把累加器A的內容載入推送的SBUF(99H),再由TxD腳位一位一位地為外推送;串行通信讀取數據時,協調器RxD一位一位地讀取數據,直至接到一個詳細的標識符數據信息後通告CPU,再根據“MOVA,SBUF”讀命令,CPU從接受的SBUF(99H)讀出數據,送至累加器A中。推送和讀取數據全過程釆用終斷方法,進而能夠進一步提高CPU的利用率。
單片機的UART插口是一個全雙工的串行接口,能另外推送和讀取數據。單片機的UART插口有4種工作方式,必須對串行接口操縱存儲器SCON的設定來界定串行接口的工作方式和操縱它的作用。
SMO和SM1為工作方式挑選位;RI為接受終斷標示;TI為推送終斷標示;RB8為讀取數據第9位;TB8為傳送數據第9位;REN為接受操縱;SM2為多極通訊。
串行接口的操縱存儲器SCON操縱串行接口的工作方式和串口波特率,推送和接受全過程選用終斷方法。SCON的TI或RI引起內部串行接口終斷或根據內部查看進行終斷作用,串口波特率產生器能用計時器T/C1或T/C2設定。SM8958A有一個規範的串行接口,有4種工作方式,其表明和常用串口波特率見表2。根據對串口通信操縱存儲器SCON開展程序編寫進行串口通信的複位。單片機能夠選用選編或是C語言,根據對單片機的串口通信程序編寫,從串口通信把數據信息發給電子計算機。
SMO.SM1為串行接口工作方式挑選位,在原文中SM0.SM1為0、1,即串口通信工作中在方法1,該方法為10位一幀的多線程串口通信方法,其串口波特率是可變性的,由計時器操縱,1位起止位,8位數據位,1位終止位,無奇偶校驗位。
1-3單片機串口通信編程設計
儀表盤的單片機程序流程是在KeilC51c語言編譯器下撰寫,串行接口輸入選用查看方法,輸出選用終斷方法。
2上位機軟件串口通信編程設計
運用MSComm控製開展上位機軟件串口通信程序編寫。
串口通信控製MSComm32.OCX是Windows下串口通信程序編寫的32位係統ActiveX控製。量化策略法是MSComm解決通訊難題的一種方式。OnComm惡性事件還能夠定期檢查解決通訊不正確。每每有新的標識符抵達,或端口號情況更改或產生不正確時,MSComm控製開啟OnComm惡性事件,進而獲得並解決這種通訊惡性事件。另外CPU不用持續檢測串口通信,這類方法的優勢是程序流程回應立即,可信性高。
1)複位並開啟串口通信。對串口通信的複位關鍵包含下列好多個特性的設定:根據CommPort特性設定通訊服務器端口;根據Handshaking特性設定通訊協議;根據Setings特性設定傳輸速度等主要參數;再依據實際必須設定別的丄些有關特性。在複位完串口通信後根據將PortOpen特性設為True即打開了串口通信。
2)捕獲串口通信惡性事件。采用較為普遍應用的惡性事件動的方法,在OnComm惡性事件裏捕獲通訊惡性事件並開展相對的解決。
3)串口通信數據信息的讀寫能力。串口通信的讀寫能力關鍵根據Input和Output特性。從串口通信讀人的數據信息在Input裏,立即啟用就可以載入,而把要推送的數據信息取值給Out-put就可以。留意這兒的數據信息分二種狀況,字符串數組和二進製。
4)串口通信的關掉。將PortOpen特性設定為False就可以關掉串口通信。
3結果
該文以稱重儀表與電子計算機開展數據通訊為例子,主要詳細介紹了單片機與電子計算機中間的串口通信和RS232串口通信係統總線規範,運用VisualC++的MSComm控製完成了稱重儀表與電子計算機的串口通信。

 

本文源於網絡轉載,如有侵權,請聯係刪除

分享到
網站地圖凱發K8凱發K8凱發K8凱發K8凱發K8