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