關(guān) 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設(shè)計應(yīng)用 > 用高效型振蕩器為8051單片機實現(xiàn)高速串行通信的時鐘配置(04-100)

        用高效型振蕩器為8051單片機實現(xiàn)高速串行通信的時鐘配置(04-100)

        —— 用高效型振蕩器為8051單片機實現(xiàn)高速串行通信的時鐘配置
        作者:桃塢通信工程有限公司 魯思慧 時間:2008-03-28 來源:電子產(chǎn)品世界 收藏

          引言

        本文引用地址:http://www.104case.com/article/80876.htm

          當(dāng)今許多實時監(jiān)測系統(tǒng)與通信設(shè)備領(lǐng)域中,經(jīng)常需要進行遠(yuǎn)距離的數(shù)據(jù)傳送。為此,如何實現(xiàn)高速、可靠及低成本的數(shù)據(jù)傳輸是作為前級機或發(fā)送級的迫切需要解決的新技術(shù)。據(jù)此,我們采用由Dallas Semiconductor公司的芯片DSl075--Econ oscillator(高效型)為8051系列的DS87C520高速型單片機提供時鐘的配置設(shè)計方案,實現(xiàn)單片機串行通信的高速波特率。

          Econ oscillator(高效型)含有一個內(nèi)部,用以產(chǎn)生一個基本頻率;還內(nèi)置了一個分頻鏈,可以將基本頻率降低到需要的速度。Econ oscillator 的每種型號提供四種基本頻率(60MHz、66.67MHz、80MHz、100MHz),可調(diào)節(jié)的分頻系數(shù)最高可達2052。Econ oscillator能根據(jù)系統(tǒng)需要配置為任何類型的鐘控邏輯,包括單片機(微處理器)、FPGA、CPLD電路等。
           
          以及RS-232串行通信

          選用時鐘時,應(yīng)認(rèn)真考慮兩個因素,即時鐘頻率和工作期限內(nèi)的時鐘精度。在系統(tǒng)中,時鐘頻率取決于所采用的串行通信RS-232。例如,考慮一個采用12MHz時鐘(早期8051的最高時鐘頻率)的異步模式1串行通信。表l列出了建立標(biāo)準(zhǔn)波特率所需的定時器1自動重新裝載值。

          表l中實際波特率是按照以下計算公式得出的:波特率所需的定時器I自動重新裝載值。

          其中:BaudRate為波特率;SMOD為波特率倍增位;fosc為振蕩頻率;THl為定時器l自動重新裝載值。

             表1中數(shù)值基于以下定時器 1狀態(tài):

             ·每12個時鐘周期定時器增l(單片機DS87C520的定時器可以每4個或12個時鐘周期增1)。

             ·自動重裝載模式。

             ·禁止波特率倍增(SMOD=0)。

             表l為早期的單片機采用晶體時的波特率和波特率誤差。

             一般情況下的RS-232串行通信.一旦波特率誤差超出3%,盡管數(shù)據(jù)傳送中有起始位或停止位進行同步,就有可能造成通信錯誤。3%的容許誤差使12MHz晶振時的最高通信速率限制在2400波特,這在90年代初還不算壞,但對今天的標(biāo)準(zhǔn)來講是一個不能忽略的大問題丁。
        而現(xiàn)在適應(yīng)于8051單片機串行通信的晶體:11.059MHz或22.118MHz,已開發(fā)出。單片機采用這種晶體后波特率有很大改善,見表2所示。數(shù)據(jù)傳送率可達57.6kps(使DS87C520單片機波特率倍增,當(dāng)SMOD=1后可達115.2kps),這樣高的通信速率—波特率對于當(dāng)前大多數(shù)單片機(或微處理器)系統(tǒng)已是很可觀了。隨著晶體11.059MHz或22.118MHz產(chǎn)品逐步市場化,使單片機應(yīng)用糸統(tǒng)大為拓寬。


        上一頁 1 2 3 下一頁

        評論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 前郭尔| 昌吉市| 西和县| 琼中| 东城区| 和政县| 九龙县| 永安市| 博湖县| 望都县| 五指山市| 阳城县| 林口县| 郓城县| 雅安市| 綦江县| 百色市| 兰考县| 深圳市| 沈丘县| 章丘市| 佳木斯市| 奉化市| 武清区| 靖西县| 南阳市| 固安县| 且末县| 恩平市| 鄂尔多斯市| 滁州市| 长武县| 舒兰市| 秦安县| 北宁市| 濮阳市| 淳化县| 泽州县| 于都县| 泗水县| 边坝县|