新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > PIC單片機(jī)與PC機(jī)的串行數(shù)據(jù)交換

PIC單片機(jī)與PC機(jī)的串行數(shù)據(jù)交換

作者: 時(shí)間:2012-03-31 來源:網(wǎng)絡(luò) 收藏

416F877機(jī)實(shí)現(xiàn)電平轉(zhuǎn)換

機(jī)的接口是符合EIA RS-232C規(guī)范的外部總線標(biāo)準(zhǔn)接口。RS-232C采用的是負(fù)邏輯,即邏輯1:-5~-15 V;邏輯0:+5~+15 V。而CMOS電平為:邏輯“1”:4.99 V,邏輯“0”:0.01 V;TTL電平的邏輯“1”和“0”則分別為2.4 V和0.4 V。因此在用RS-232C總線進(jìn)行通信時(shí)需外接電路實(shí)現(xiàn)電平轉(zhuǎn)換。在發(fā)送端用驅(qū)動(dòng)器將TTL或CMOS電平轉(zhuǎn)換為RS-232C電平,在接收端用接收器將RS-232C電平再轉(zhuǎn)換為TTL或CMOS電平。這里選用了MAXIM公司的MAX232來作電平轉(zhuǎn)換。MAX232屬于MAXIM公司的通用接收/發(fā)送驅(qū)動(dòng)器芯片。其外圍電路簡(jiǎn)單,只需外接4個(gè)0.1 μF的電容即可,其系統(tǒng)硬件電路如圖1所示。圖中MAX232將16F877的TX輸出的TTL電平信號(hào)轉(zhuǎn)換為RS-232C電平,輸入到機(jī),并將PC機(jī)輸出的RS-232C電平轉(zhuǎn)換為TTL電平,輸出到16F877的RX引腳。

5PC機(jī)支持與PIC16F877進(jìn)行的編程

本文中PC 機(jī)可與PIC16F877編程一起完成以下功能:PC機(jī)和均可發(fā)送和接收,由PC機(jī)決定是發(fā)送還是接收;程序設(shè)定當(dāng)PC機(jī)鍵盤輸入發(fā)送指令時(shí),PC機(jī)分別顯示PC機(jī)發(fā)送的和單片機(jī)會(huì)送的數(shù)據(jù);當(dāng)PC機(jī)鍵盤輸入接收指令時(shí),PC機(jī)將接收單片機(jī)發(fā)送過來的數(shù)據(jù),并將其數(shù)據(jù)顯示。

在編程中,必須要注意設(shè)置PC 機(jī)與PIC16F877單片機(jī)在進(jìn)行數(shù)據(jù)時(shí)的數(shù)據(jù)傳輸格式相同。通常采用的通訊協(xié)議如下:波特率為9 600 bps,8位數(shù)據(jù)位,1位停止位,無奇偶效驗(yàn)位。PC機(jī)發(fā)送命令給單片機(jī),鍵盤輸入發(fā)送命令時(shí),控制單片機(jī)接收數(shù)據(jù),當(dāng)PC機(jī)鍵盤輸入接收命令時(shí),控制單片機(jī)發(fā)送數(shù)據(jù)給PC機(jī)。PC機(jī)與PIC16F877單片機(jī)進(jìn)行數(shù)據(jù)的程序編制流程如圖2所示。

30.gif



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉