<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

SP2338串口擴展芯片在汽車行駛記錄儀中的應用

lcdz66 ? 來源:雨飛工作室 ? 2023-06-19 16:37 ? 次閱讀

在由單片機組成的汽車行駛記錄儀中,為了適應不同用戶的需要,該記錄儀需要配置串口打印、與上位機通信串口以及與GPS通信接口等三個以上(含三個)串口,直接利用單片機的功能無法滿足這一需要。利用一片SP2338則可以很好地解決這個問題。

1、SP2338簡介

SP2338串口擴展芯片能將普通的51系列單片機的一個串口擴展為三個獨立的全雙工串口,并且三個串口的波特率達到了9600bps。SP2338采用通用的協議1個起始位,8個數據位,1個停止位),同時,該芯片在與單片機相連時接口也非常簡單。

SP2338共有四個串口,一個母串口,三個子串口,它們都是全雙工的串行通信口,允許同時接收和發送數據。母串口與需要擴展的51單片機的串口相連,子串口與其他串口設備相連,這樣就實現了只有一個串口的單片機可與三個串口設備相連。SP2338有兩根發送地址線,兩根接收地址線,用以選擇發送串口和接收串口,見圖1。

67209042-0e7a-11ee-962d-dac502259ad0.jpg

當單片機要向串口設備發送數據時,其工作過程是:

1)先向SP2338的串口地址線ADRI0、ADRI1送地址信號(ADRI0、ADRI1=00子串口0,ADRI0、ADRI1=01子串口1,ADRO0、ADRO1=10子串口2);再向與自己相連的母串口的通信線上送數據;

2)SP2338的母串口收到單片機串口送來的數據后就根據ADRI0和ADRI1的狀態,把數據送往相應的子串口;

3)該子串口再把數據送往相連的串口設備。

當串口設備向單片機發送數據時,其工作過程是:

1)SP2338的某個子串口從串口設備接收到數據時,送給母串口;

2)SP2338的母串口把該數據再送給單片機串口,同時在ADRO0和ADRO1線上送出子串口的地址;

3)單片機根據SP2338接收地址線ADRO0、ADRO1上的信號判定出由哪個串口設備發出的。

由于SP2338的每個串口都有自己的發送緩沖區和接收緩沖區,因此擴展后的三個串口就可以完全獨立地同時通信,就好像單片機同時擁有三個串口似的,若一個單片機有兩個串口,那么配上兩片SP2338就可以擴展到6個串口。

SP2338每個子串口的波特率都可以達到9600bps,SP2338工作時需要配一個晶振,該晶振FOSC的頻率與母串口的波特率有如下關系:K母=1920*Fosc,

與子串口波特率的關系如下:K子=480*Fosc,

因此,如果子串口采用9600波特率,根據以上公式,Fosc=20MHz。而母串口的波特率必須達到388400bps。這樣與SP2338的母串口相連的單片機串口的波特率達到388400bps,若單片機采用非11.0592M的工作晶振,則波特率會有偏差,不過,SP2338允許波特率誤差為2.5%。在我研制的汽車行駛記錄儀中,系統采用的是24MHz的工作晶振,用定時器2作波特率發生器,并設:RCAP2H=0xFF,RCAP2L=0xEC,可以正常通信。

由于某些單片機采用其他規格的晶振工作,達不到這么高的波特率,想把母串口的波特率降下來,則不僅僅是把單片機的波特率降下來,還要根據上面的公式,重新計算Fosc,把SP2338的工作晶振也換成合適的才行。

2、SP2338在汽車行駛記錄儀中應用

1)圖2是硬件連接邏輯圖

由于SP2338是單片機串口與其他串口設備的轉接者,因此相對于單片機來說,SP2338是Tx3與單片機的RXDM相連,SP2338的Rx3要與單片機的TXDM相連。

672e1906-0e7a-11ee-962d-dac502259ad0.jpg

2)軟件實現

由于SP2338一上電就能正常工作,不需要任何初始化操作,因此不需要在軟件中初始化。而SP2338的母串口與三個子串口是循回連續交換數據的,因此:

①當SP2338從串口設備接收到數據通過母串口送到單片機的串口線上時,單片機應及時把數據讀走,并且判定ADRO0和ADRO1的狀態,否則容易造成數據的錯誤。因此在單片機上要用串口中斷。

②當單片機向外部串口設備發送數據時,一定要按照先向子串口0發送一個字節的數據,再向子串口1發送一個字節的數據,再向子串口2發送一個字節的數據,再執行一條NOP命令的時序發送數據,依此循環。若外部的串口設備沒有三個,則分別如下處理:

A.若上位機只需向一個子串口發送數據,先向該串口發送一個字節數據,再執行4條‘NOP’命令,其后再向該子串口發送第二個數據。

B.若上位機只需向兩個子串口發送數據,則可以分別向兩個串口發送一個字節的數據,再執行3條NOP命令,再分別向這兩個串口發送下一字節的數據。

串口中斷流程圖3所示。

67463068-0e7a-11ee-962d-dac502259ad0.jpg

3、結語

我在研制汽車行駛記錄儀中使用了一片SP2338,把單片機一個串口擴展成三個全雙工的串口,使汽車行駛記錄儀可以與串行打印機、上位機和GPS等串口設備進行通信,符合國家GBT/19056-2003《汽車行駛記錄儀》標準的相關規定,取得了滿意的效果。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6008

    文章

    44062

    瀏覽量

    622628
  • gps
    gps
    +關注

    關注

    22

    文章

    2762

    瀏覽量

    164569
  • 串口
    +關注

    關注

    14

    文章

    1500

    瀏覽量

    74646
  • 記錄儀
    +關注

    關注

    1

    文章

    416

    瀏覽量

    21512
  • SP2338
    +關注

    關注

    0

    文章

    2

    瀏覽量

    6770

原文標題:SP2338串口擴展芯片在汽車行駛記錄儀中的應用

文章出處:【微信號:雨飛工作室,微信公眾號:雨飛工作室】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    多功能汽車行駛狀態記錄儀的設計

    ;p><font face="Verdana">摘要:介紹了一種多功能汽車行駛狀態記錄儀的主要功能及其硬軟件設計,并針對其工作環
    發表于 11-26 17:13

    多功能汽車行駛狀態記錄儀的設計

    及通過RS232 串行記錄儀進行數據讀??;管理計算機用于對原始記錄數據進行統計、報表、存儲及查詢?! ?b class='flag-5'>記錄儀是整個系統的核心,其主要功能如下:(1)可實時監測并
    發表于 01-21 15:32

    汽車行駛狀態記錄儀單片機與protues仿真實例

    汽車行駛狀態記錄儀單片機與protues仿真實例大家有相關資料嗎。數據存儲,聲光報警,鍵盤,日歷時鐘芯片,液晶顯示,數據采集,
    發表于 04-21 11:47

    行車記錄儀汽車行駛記錄儀有什么區別?是不是一個東西

    行車記錄儀汽車行駛記錄儀有什么區別?是不是一個東西,都是做什么用的
    發表于 06-04 16:18

    汽車行駛記錄儀

    汽車行駛記錄儀
    發表于 10-27 09:21

    汽車行駛記錄儀的數據傳輸設計

    方式,通過RS232串行口記錄儀和管理計算機之間建立通信鏈路,直接進行數據傳輸。這種傳輸方式容易實現,而且可靠性高,是汽車行駛記錄儀國家標準要求的標準配置接口。但每次讀取數據時都要建
    發表于 12-04 10:37

    如何利用嵌入式系統設計汽車行駛記錄儀?

    引言汽車行駛記錄儀是能夠記錄和再現汽車行駛狀態的一種數字式電子記錄裝置,它可以全程記錄
    發表于 07-30 08:16

    SP2338汽車行駛記錄儀中有哪些應用?

    SP2338是什么?SP2338汽車行駛記錄儀中有哪些應用?
    發表于 05-12 06:10

    分享一款不錯的基于LPC2104型CPU的汽車行駛記錄儀

    本文介紹一種價格低,功能較齊全且能擴展汽車行駛記錄儀。
    發表于 05-13 06:22

    如何提高汽車行駛記錄儀的抗干擾能力?

    汽車電器的電磁兼容設計汽車行駛記錄儀的抗干擾設計線路板設計需注意的抗干擾問題
    發表于 05-13 06:43

    關于汽車行駛記錄儀的USB數據傳輸設計

    如何去設計IC卡讀寫器?汽車行駛記錄儀的USB數據傳輸怎樣去設計?
    發表于 05-13 06:12

    怎么實現多功能汽車行駛狀態記錄儀的設計?

    怎么實現多功能汽車行駛狀態記錄儀的設計?
    發表于 05-17 06:26

    汽車行駛記錄儀在客車上的應用

    介紹汽車行駛記錄儀在國內外的應用現狀,針對公路客車的特點提出汽車行駛記錄儀應用建議。關鍵詞:汽車行駛記錄
    發表于 07-25 15:16 ?26次下載

    SP2338串口擴展芯片在汽車行駛記錄儀中的應用

    1.SP2338簡介SP2338串口擴展芯片能將普通的51系列單片機的一個串口
    發表于 05-16 09:19 ?3064次閱讀
    <b class='flag-5'>SP2338</b><b class='flag-5'>串口</b><b class='flag-5'>擴展</b><b class='flag-5'>芯片在</b><b class='flag-5'>汽車行駛</b><b class='flag-5'>記錄儀</b>中的應用

    汽車行駛記錄儀中USB HOST相關模塊的設計

    汽車行駛記錄儀中USB HOST相關模塊的設計 本文介紹了基于單片機和USB HOST接口芯片在汽車行駛記錄儀中實現USB HOST功能的
    發表于 09-26 17:47 ?2032次閱讀
    <b class='flag-5'>汽車行駛</b><b class='flag-5'>記錄儀</b>中USB HOST相關模塊的設計
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>