《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > AT89S52單片機與PC機串行通信設計
AT89S52單片機與PC機串行通信設計
摘要: 單片機與PC機串行通信,,又稱為下位機與上位機的串行通信,。采用這種通信方式,,可以解決工況條件差對工作人員帶來的危害,又可以實現(xiàn)實時在線遠距離集中監(jiān)控,,對工作現(xiàn)場分散的單片機采用控制平臺管理,,既可以改善工作條件,又可以提高工作效率,。本文針對串行通信的電路設計和程序設計做出了具體的闡述,。
Abstract:
Key words :

  O 引言

  單片機" title="單片機">單片機與PC機" title="PC機">PC機串行通信" title="串行通信">串行通信,又稱為下位機與上位機的串行通信,。采用這種通信方式,,可以解決工況條件差對工作人員帶來的危害,又可以實現(xiàn)實時在線遠距離集中監(jiān)控,,對工作現(xiàn)場分散的單片機采用控制平臺管理,,既可以改善工作條件,,又可以提高工作效率,。本文針對串行通信的電路設計和程序設計做出了具體的闡述。

  1 電路設計

  通信接口標準有RS232,、RS423A,、RS422A、RS485等,,常用的接口標準有RS232和RS485,。RS232在微機串行通信接口中廣泛采用,在加裝了調制解調器(modem)的情況下,,這種通信可以通過電話線傳輸數(shù)據(jù),,并且可以傳輸幾千公里遠的距離,如果沒有modem可以傳輸十幾米遠,。本課題采用的是RS-232直連無modem方式和DB-9連接器,,單片機采用 AT89S52" title="AT89S52">AT89S52,使單片機的串行輸入端(RXD)和串行輸出端(TXD)與PC機的COM口相連接,。

  RS232是用正負電壓來表示邏輯狀態(tài),,與TTL高低電平表示邏輯狀態(tài)的規(guī)定不同。因此,,為了能夠同計算機接口相連或TTL器件相連,,必須在RS232與 TTL之間進行電平和邏輯關系的變換。實現(xiàn)這種變換的方法可以用單立元件,,也可以用集成芯片,,本文采用MAX232來完成TTL-EIA(美國電子工業(yè)聯(lián)合會)雙向電平轉換,。MAX232內部有電壓倍增電路和轉換電路,僅需+5 V電源便可工作,,使用十分方便,,其與AT89S52連接時可以采用最簡單的方式連接(見圖1),MAX232的T1 IN引腳與89S52的串行輸入口線P3.1TXD相連,,R1 OUT引腳與89S52的串行輸入口線P3.0RXD相連,,MAX232的T1 OUT、R1 IN分別于與RS232的2,、3引腳相連,。MAX232泵電源引腳必須接0.1μf電容,如圖中的C26,、C27,、C28、C29,。

與AT89S52連接時可以采用最簡單的方式連接

  因為電路中采用了電平轉換芯片,,只需把單片機所用到的連接器和PC機串口所用的連接器的2、3,、5管腳對應連接起來,,2、3管腳不需交叉連接(如圖2所示),;如果是PC機之間或同一個PC機的兩個COM口相連,,則兩個連接器的2、3管腳需交叉相連,。

DB-9連接器電路連接圖

  2 程序設計

  主程序的設計是:AT89S52單片機采用定時器1,,工作于方式2,11.059 MHz的晶振,,波特率為9 600 Hz,,時間常數(shù)是FDH,由單片機先向PC機發(fā)送十六進制的聯(lián)絡信號“aaH”,,PC機接收正確時回答B(yǎng)BH,,以數(shù)組adr[]的和作為校驗和,測試正常時發(fā)送數(shù)組tri[],。完整程序代碼如下:

程序

  上下位機間通信是否正??梢酝ㄟ^上位機安裝的串口調試軟件實現(xiàn),上述程序經過調試軟件調試后運行正常,。

此內容為AET網站原創(chuàng),,未經授權禁止轉載。