介紹一種運(yùn)用PIC16F84單片機(jī)實現(xiàn)與PC機(jī)串行通信的方法,并給出其硬件接口電路及通信源程序。關(guān)鍵詞 異步串行通信 發(fā)送與接收 VB4 Win95 串口查詢法 1 前言 美國Microchip公司的PIC16系列單片機(jī)是一種新型的CMOS工藝的8位單片機(jī)。其中,PIC16FXX單片機(jī)的程序存儲器為電可擦除閃速存儲器(flash),可多次修改程序,甚至可以在線編程。PIC16F83和PIC16F84片內(nèi)數(shù)據(jù)存儲器除RAM外,還有64字節(jié)的EEPROM,可以當(dāng)作一般的或非易失性的數(shù)據(jù)存儲器使用,簡單方便。它還具有片內(nèi)上電復(fù)位、延時電路、看門狗電路等。另外,PIC16系列單片機(jī)功耗極低,因而是一種非常適合在各種便攜式設(shè)備中使用的高性價比的單片機(jī),并已經(jīng)得到了越來越廣泛的應(yīng)用。 但是在許多需要大量計算的運(yùn)用中,還必須借助微機(jī)的強(qiáng)大數(shù)據(jù)處理能力。這樣必須通過通信電路實現(xiàn)PIC單片機(jī)與微機(jī)間的可靠數(shù)據(jù)傳輸。有的PIC16單片機(jī)內(nèi)并沒有提供串行口,所以串行通信必須通過自己設(shè)計的硬件電路和通信軟件來實現(xiàn)。 下面介紹用查詢法實現(xiàn)異步串行通訊的方法。同時給出了用PIC16F84單片機(jī)的兩個I/O口模擬2線串行口的硬件接口電路、程序流程框圖、單片機(jī)內(nèi)通信程序以及微機(jī)內(nèi)的通信程序等。2 硬件實現(xiàn)方法與電路 PIC16F84的程序存儲器由1K×14的閃速(flash)存儲器構(gòu)成,它只有13條I/O口,1個定時器,為了盡量節(jié)省單片機(jī)的軟硬件資源,采用下述異步串行通信的實現(xiàn)方法。 如圖1所示,PIC16F84在4MHz時鐘下,采用半雙工方式,可實現(xiàn)9600波特率的異步串行數(shù)據(jù)通信,1位停止位,8位數(shù)據(jù)位,無校驗位。接收和發(fā)送以低位在先(一般模式),采用軟件延時。為節(jié)省篇幅,單片機(jī)內(nèi)的通信程序中未提供任何握手協(xié)議,用戶可根據(jù)自己的需要在軟件中加入握手方式。
標(biāo)簽:
PIC
16
PC機(jī)
單片機(jī)
上傳時間:
2014-12-27
上傳用戶:偷心的海盜