- 相關(guān)推薦
VB環(huán)境下實(shí)現(xiàn)PC機(jī)與單片機(jī)(8031)的串行通訊
摘要:一般的PC與單片機(jī)之間的串行通信,需要單片機(jī)采集數(shù)據(jù),然后用異步串行通訊方式傳給PC機(jī)。本文著重用VB具有面向?qū)ο蟮脑O(shè)計(jì)方法,友好的用戶界面等優(yōu)點(diǎn),來探討在VB環(huán)境下來實(shí)現(xiàn)PC機(jī)與單片機(jī)(8031)之間串行通訊的方法。
關(guān)鍵詞:PC機(jī) 單片機(jī) 串行通訊 數(shù)據(jù)交換
1 引言
隨著計(jì)算機(jī)技術(shù)特別是單片機(jī)技術(shù)的發(fā)展,在各種單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)中,如智能儀器儀表、各類手持設(shè)備、GPS接收器等,常常遇到計(jì)算機(jī)與外界的信息交換,即通訊。串行通信是指按照逐位順序傳遞數(shù)據(jù)的通信方式,由于僅需三根傳輸線傳送信息且通信距離相對(duì)較遠(yuǎn),所以在控制領(lǐng)域的現(xiàn)場(chǎng)監(jiān)測(cè)、分布控制等場(chǎng)合有著重要的應(yīng)用價(jià)值。鑒于PC機(jī)具有強(qiáng)大的監(jiān)控和管理功能,單片機(jī)則具有快速以及容易控制的特點(diǎn),在數(shù)據(jù)量不大、傳輸要求不高的情況下,一般都采用給PC機(jī)配置的RS-232標(biāo)準(zhǔn)串行接口COM1、COM2等相連接來實(shí)現(xiàn)應(yīng)用系統(tǒng)與PC機(jī)之間的數(shù)據(jù)交換。本文論述了在VB環(huán)境下如何實(shí)現(xiàn)單片機(jī)與PC機(jī)之間實(shí)現(xiàn)串行通訊所需條件,PC機(jī)通訊程序利用VB提供的MsComm串行通訊控件來完成,單片機(jī)的程序用匯編語言來寫。
2 系統(tǒng)介紹
2.1 ADM101E芯片介紹
大多數(shù)PC機(jī)都有一個(gè)串行通訊端口RS-232用于兩臺(tái)計(jì)算機(jī)間進(jìn)行串行通訊。RS - 232通訊接口是一種標(biāo)準(zhǔn)化的串行接口,是為遠(yuǎn)程通訊連接終端設(shè)備DTE(Data Terminal Equipment)與數(shù)據(jù)通訊設(shè)備DCE (Data Communication Equipment)定義的物理接口。RS-232采用非平衡連接(又稱為單端線路),在這個(gè)線路中,信號(hào)電壓加到一條導(dǎo)線上,所有的信號(hào)電壓都使用一個(gè)公共的接地線。為了提高抗干擾能力和增加傳送距離,RS一232的每個(gè)腳線的信號(hào)和電平規(guī)定采用負(fù)邏輯電平,DC(-15一5V)規(guī)定為邏輯“1”,DC( 5— 15V)規(guī)定邏輯“0”, DC(-5一 5V規(guī)定為過渡區(qū))。由于單片機(jī)的輸入、輸出電平為TTL電平,與 PC機(jī)RS-232標(biāo)準(zhǔn)串行接口的電氣規(guī)范不一致,因此要實(shí)現(xiàn)單片機(jī)與PC機(jī)之間的數(shù)據(jù)通讀,必須進(jìn)行電平轉(zhuǎn)換。一般常用的電平轉(zhuǎn)換器件有MC1488、MC1489及MAX232等,但MC1488、MC1489需要±12V電源,這對(duì)于不具備±12V電源的單片機(jī)系統(tǒng)是非常不便的。而雙路RS-232收發(fā)器MAX232雖然只需要 5V電源,但對(duì)于僅用單路收發(fā)器的應(yīng)用系統(tǒng)來說,又顯得有些余。本文采用一種體積小、功耗低、單 5V電源供電的單路RS-232收發(fā)器ADM101E芯片如圖1,該芯片的引角解釋如表1。