中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁(yè) > 手機(jī)與無(wú)線通信 > 設(shè)計(jì)應(yīng)用 > UART多串口擴(kuò)展器SP2338DP及其應(yīng)用

        UART多串口擴(kuò)展器SP2338DP及其應(yīng)用

        作者: 時(shí)間:2004-12-07 來(lái)源:網(wǎng)絡(luò) 收藏
        摘要:是一種新穎的器,可將一個(gè)高波特率的為3個(gè),解決了普通單片機(jī)太少的問(wèn)題。文中給出該器件的主要特性、引腳說(shuō)明及說(shuō)明,并以AT89C52單片機(jī)為例給出多電路及相應(yīng)軟件。

        關(guān)鍵詞: 串口擴(kuò)展 單片機(jī)

        1 概述

        當(dāng)前,以單片機(jī)為核心構(gòu)成的智能化測(cè)控系統(tǒng)及電子產(chǎn)品不斷涌現(xiàn),為了滿足數(shù)字化及智能化要求,許多外圍電路功能模塊、部件、器件及傳感器也具備了UART串口通信功能。而現(xiàn)階段的8位、16位、32位單片機(jī)卻大部分僅提供一個(gè)UART串口,這樣就很難滿足系統(tǒng)中一方面要與具有UART功能的串口部件通信,另一方面又要與上位機(jī)通信的要求。利用多串口擴(kuò)展器,可很好地解決此問(wèn)題。

        2 工作特性

        是采用低功耗CMOS工藝設(shè)計(jì)的UART多串口擴(kuò)展芯片。該器件可將一個(gè)高波特率的UART串口擴(kuò)展為3個(gè)較高波特率的UART串口,從而為系統(tǒng)需要多個(gè)串口時(shí)提供了很好的解決方案。該器件的主要特性如下:

        *可將1個(gè)UART串口擴(kuò)展為3個(gè)UART串口。

        *全雙工異步工作:4個(gè)UART串口都為全雙工異步工作模式。

        *高工作速度:1200~9600b/s(可由晶振頻率設(shè)定任意非標(biāo)準(zhǔn)波特率)。

        *波特率設(shè)置簡(jiǎn)單:不需軟件設(shè)置,只需更改輸入時(shí)鐘頻率即可。

        *波特率誤差?。好總€(gè)串口的數(shù)據(jù)輸出波特率誤差小于0.25%。

        *接收波特率范圍寬:要求每個(gè)串口數(shù)據(jù)波特率小于2.5%即可。

        *數(shù)據(jù)傳輸誤碼率極低:小于10 -9(接收的數(shù)據(jù)波特率誤差小于2%時(shí))。

        *具有節(jié)電模式:進(jìn)入節(jié)電模式后典型靜態(tài)電流為0.5μA。

        *可自動(dòng)喚醒:任意串口的接收端有數(shù)據(jù)出現(xiàn)時(shí)自動(dòng)喚醒。

        *寬工作電源電壓:2.4~5.5V。

        *低工作電流:典型工作電流為4.4mA。

        3 封裝及引腳說(shuō)明

        該器件具有DIP、SOIC和SSOP多種封裝形式。下面以DIP封裝形式為例,給出元件的封裝及引腳排列,如圖1所示。引腳功能及說(shuō)明見(jiàn)表1。

        表1 SP2338 DIP引腳功能

        名 稱編 號(hào)類 型

        描 述

        ADRI018I串口3接收數(shù)據(jù)地址線0
        ADRI117I串口3接收數(shù)據(jù)地址線1
        ADRO01O串口3發(fā)送數(shù)據(jù)地址線0
        ADRO12O串口3發(fā)送數(shù)據(jù)地址線1
        RX08I串口0數(shù)據(jù)接收
        TX09O串口0數(shù)據(jù)發(fā)送
        RX111I串口1數(shù)據(jù)接收
        TX110O串口1數(shù)據(jù)發(fā)送
        RX213I串口2數(shù)據(jù)接收
        TX212O串口2數(shù)據(jù)發(fā)送
        RX36I串口3數(shù)據(jù)接收
        TX37O串口3數(shù)據(jù)發(fā)送
        OSCI16I時(shí)鐘輸入
        OSCO15O時(shí)鐘輸出
        VCC3,4,14-正電源
        GND5-

        4 說(shuō)明

        SP2338DP在使用時(shí)應(yīng)遵循以下原則:

        ①SP2338DP適用于串行數(shù)據(jù)為8位的應(yīng)用領(lǐng)域(如數(shù)據(jù)位7為位,可選用SP2337DP器件);

        ②串口0~2為較高波特率的串口(子串口)。

        ③串口3為高波特率串口(母串口),它的數(shù)據(jù)傳輸速率是子串口的4倍。如輸入時(shí)鐘頻率foscin為10MHz,則串口3的波特率為19 200bps,串口0~2的波特率為19 200bps/4=4800 bps;如果需要在串口0~2上獲得波特率K,則需按以下公式改變時(shí)鐘頻率即可。

        K=4800foscin/10(bps)

        其中foscin≤20MHz

        ④ADRI1、ADR10為下行地址線,ADRI1、ADRI0=00、01、10時(shí),分別對(duì)應(yīng)子串口0、1、2、ADR1、ADR0=11時(shí),為串口3的地址;同時(shí),它也是SP2338DP的命令/數(shù)據(jù)口地址。

        ⑤ADRO1、ADRO0為上行數(shù)據(jù)的串口地址線,ADRO1、ADRO0=00、01、10時(shí),分別對(duì)應(yīng)子串口0、1、2。當(dāng)上位機(jī)UART接收到由串口3發(fā)送來(lái)的數(shù)據(jù)時(shí),立即讀取地址線ADRO1和ADRO0的狀態(tài)。根據(jù)ADRO1和ADRO0的狀態(tài)即可判斷出數(shù)據(jù)是由哪個(gè)串口發(fā)送來(lái)的。

        ⑥芯片喚醒條件為:向串口0~串口3的任意一個(gè)數(shù)據(jù)接收端口寫(xiě)入1個(gè)字節(jié)數(shù)據(jù)。由于SP2338DP的喚醒時(shí)間為25ms左右,故用于芯片喚醒的數(shù)據(jù)將不能被正確接收,因此應(yīng)采用下面的芯片喚醒流程;先發(fā)送1個(gè)字節(jié)數(shù)據(jù),用于喚醒芯片,延時(shí)25ms后再發(fā)送有效的數(shù)據(jù)。

        ⑦為了快速可靠地傳輸批量數(shù)據(jù),可以采用下面的方法,實(shí)現(xiàn)數(shù)據(jù)快速可靠的接收、發(fā)送。

        如上位機(jī)只需要向一個(gè)串口發(fā)送數(shù)據(jù),則可向該串口發(fā)送完1個(gè)字節(jié)數(shù)據(jù)后再向地址11(串口3的地址)連續(xù)發(fā)送4個(gè)字節(jié)“0X00”。其后向需要發(fā)送數(shù)據(jù)的串口發(fā)送1個(gè)字節(jié)數(shù)據(jù),再向串口3發(fā)送4個(gè)字節(jié)“0X00”,按此方式循環(huán)發(fā)送即可。

        如果此位同需向兩個(gè)串口分別發(fā)送兩個(gè)數(shù)據(jù)塊,則可分別向兩個(gè)相應(yīng)的子串口發(fā)送1個(gè)字節(jié)的數(shù)據(jù)后再向串口3發(fā)送4個(gè)字節(jié)的“0X00”,然后分別將兩個(gè)數(shù)據(jù)塊的下一個(gè)字節(jié)發(fā)送到兩個(gè)子串口上。

        如果上位機(jī)有3個(gè)數(shù)據(jù)塊需要分別向3個(gè)子串口發(fā)送,則可先向3個(gè)子串口分別發(fā)送1個(gè)字節(jié)的有效數(shù)據(jù)后再向串口3發(fā)送2個(gè)字節(jié)的“0X00”,然后循環(huán)向3個(gè)子串口發(fā)送有效的數(shù)據(jù)。

        注意:寫(xiě)入串口3用于延時(shí)的數(shù)據(jù)只能是“0X00”,寫(xiě)入其它數(shù)據(jù)將產(chǎn)生可預(yù)料的結(jié)果。

        ⑧SP233DP數(shù)據(jù)發(fā)送工作過(guò)程如下:如果上位機(jī)需要將數(shù)據(jù)“0X28”由串口2發(fā)送出去,則需先將ADRI1置為“1”,ADRI0置為“0”,再將數(shù)據(jù)“0X28”通過(guò)上位機(jī)的UART口發(fā)送到串口3即可。

        ⑨SP2338DP可執(zhí)行的命令僅有兩種,即復(fù)位和睡眠命令。當(dāng)上位機(jī)通過(guò)串口3(地址為“11”)寫(xiě)入數(shù)據(jù)“0X35”或“0XB5”時(shí),則芯片執(zhí)行軟件復(fù)位,復(fù)位時(shí)間約為21.75ms;當(dāng)寫(xiě)入的數(shù)據(jù)為“0X55”或“0XD5”時(shí),芯片將進(jìn)入睡眠狀態(tài)。

        圖2 利用SP2338DP擴(kuò)展的3串口電路

        5 典型應(yīng)用電路

        利用SP2338DP可將僅具有一個(gè)UART串口的單片機(jī)擴(kuò)展為具有3個(gè)UART串口的單片機(jī)。下面以常用的AT89C52單片機(jī)為例,給出相應(yīng)的串口擴(kuò)展電路,如圖2所示。

        圖2中AT89C52的全雙工串口與SP2338DP的串口3相連。串口3同時(shí)也做為命令/數(shù)據(jù)口。ADRI1和ADRI0與AT89C52的P3.3、P3.2口線相連,用于發(fā)送數(shù)據(jù)時(shí)相應(yīng)串口0~2的選擇。ADRO1和ADRO0與AT89C52的P3.4、P3.5口線相連,用于判斷接收的數(shù)據(jù)來(lái)自串口0~2的哪一個(gè)。SP2338DP的時(shí)鐘頻率選為20MHz,此時(shí)串口3的波特率為19 200bps,串口0~2的波特率為9600bps。網(wǎng)絡(luò)補(bǔ)充版(http://www.dpj.com.cn)中,給出與上述電路配套的通信程序,程序采用C51編制。

        結(jié)語(yǔ)

        SP2338多串口擴(kuò)展器可廣泛應(yīng)用于工業(yè)控制、數(shù)據(jù)采集、儀器儀表、智能家電、計(jì)算機(jī)RS232口擴(kuò)展、有線及無(wú)線數(shù)據(jù)傳輸?shù)阮I(lǐng)域。由該器件構(gòu)成的多串口電路具有硬件成本低、性價(jià)比高、工作速度高、波特率設(shè)置簡(jiǎn)單等特點(diǎn),因而選擇該器件是多串口應(yīng)用系統(tǒng)的良好解決方案。



        評(píng)論


        相關(guān)推薦

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

        關(guān)閉