新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 通用異步收發(fā)器MAX3100在單片機(jī)系統(tǒng)中的應(yīng)用

        通用異步收發(fā)器MAX3100在單片機(jī)系統(tǒng)中的應(yīng)用

        作者: 時(shí)間:2011-12-09 來源:網(wǎng)絡(luò) 收藏

        四、應(yīng)用實(shí)例
        1.硬件設(shè)計(jì)
          4所示為78E58單片機(jī)采用SPI接口方式,實(shí)現(xiàn)高速串行數(shù)據(jù)收發(fā)的應(yīng)用實(shí)例,在電路中用取代了以往常用的UART8251,以實(shí)現(xiàn)高性能的通信模式。78E58P1.0~P1.3分別接DINDOUTSCLK以及 CS78E58 INTO IRQ相連,SHDN連高電平,使之保持在工作模式,MAX3100TXRX分別和MAX232T1I以及R1O連接,RTSCTS相連,通過MAX232電平轉(zhuǎn)換后與9針串行接口的第八腳相連用以控制計(jì)算機(jī)傳送數(shù)據(jù)。
          78E58單片機(jī)接收時(shí),上位機(jī)傳過來的數(shù)據(jù)通過串行口由RS-232轉(zhuǎn)換TTL電平后,MAX3100串行接收,串行輸入到MCU中。78E58單片機(jī)發(fā)送時(shí),MCU將要發(fā)送的數(shù)據(jù)串行送入MAX3100,通過RS-232轉(zhuǎn)換成232電平后串行輸出。

        RTS的狀態(tài)而不發(fā)送數(shù)據(jù),我們可以通過軟件設(shè)置TE為高電平, RTS為低電平,通過串行口通知計(jì)算機(jī)不要發(fā)送數(shù)據(jù)。在這批數(shù)據(jù)處理完之后,再設(shè)置 RTS為高,允許計(jì)算機(jī)發(fā)送數(shù)據(jù),繼續(xù)接收數(shù)據(jù)。
          同時(shí)我們還要考慮MAX3100在通知計(jì)算機(jī)不要發(fā)送數(shù)據(jù)后還有一批的數(shù)據(jù)在緩沖區(qū)內(nèi),這批數(shù)據(jù)要注意接收,而且這些數(shù)據(jù)應(yīng)留有一個(gè)接收的時(shí)間余地。也就是說在通知計(jì)算機(jī)不要發(fā)送數(shù)據(jù)之后和開始執(zhí)行操作之前要延時(shí)一段時(shí)間,以保證數(shù)據(jù)的全部接收。

        五: 結(jié)論
          采用MAX3100作為擴(kuò)展的UART,具有價(jià)格低廉,功耗小,實(shí)現(xiàn)容易的特點(diǎn),而且比傳統(tǒng)的UART8251占用體積小,傳輸速度快,工作頻率高,具有比8251更優(yōu)越的性能。
          前面所給程序是通過端口發(fā)送與接收數(shù)據(jù)的關(guān)鍵,對(duì)于任何一種基于MCS-51單片機(jī)采用MAX3100實(shí)現(xiàn)串行收發(fā)的應(yīng)用系統(tǒng)來說都是非常有幫助的。經(jīng)過實(shí)踐證明,該系統(tǒng)運(yùn)行效果良好,數(shù)據(jù)傳送安全可靠,傳送快,應(yīng)用廣泛。
          在實(shí)踐中發(fā)現(xiàn)在系統(tǒng)晶振采用40MHZ振蕩器晶振選用1.8432MHZ時(shí),C語言編寫的MAX3100接收程序工作在115200波特率時(shí)有數(shù)據(jù)丟失的情況,最高只能到57600波特率,用匯編語言編寫的程序則可以達(dá)到115200波特率。如果MAX3100晶振選用3.6864MHZ時(shí),用匯編語言編寫的程序可以達(dá)到其最高的波特率。


        上一頁 1 2 下一頁

        關(guān)鍵詞: 異步收發(fā)器 MAX3100

        評(píng)論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 石渠县| 广丰县| 扎赉特旗| 白朗县| 星子县| 博湖县| 怀安县| 普洱| 博客| 江油市| 闻喜县| 绵竹市| 阿克苏市| 阳高县| 太谷县| 安义县| 枣庄市| 巴林右旗| 喀什市| 石阡县| 利津县| 平山县| 新营市| 万宁市| 奉贤区| 黑水县| 南投县| 陆川县| 鸡东县| 治县。| 太原市| 南溪县| 鄂温| 林甸县| 将乐县| 武冈市| 石门县| 沙田区| 临洮县| 阿坝| 中超|