[發(fā)明專利]一種通過軟件模擬實(shí)現(xiàn)多個(gè)UART通信接口的方法有效
| 申請?zhí)枺?/td> | 201210013739.7 | 申請日: | 2012-01-17 |
| 公開(公告)號: | CN102546843B | 公開(公告)日: | 2017-10-24 |
| 發(fā)明(設(shè)計(jì))人: | 葉德焰;賴榮東;陳挺;李基勇;陳余菲 | 申請(專利權(quán))人: | 廈門雅迅網(wǎng)絡(luò)股份有限公司 |
| 主分類號: | H04L29/10 | 分類號: | H04L29/10;G06F13/24 |
| 代理公司: | 泉州市誠得知識產(chǎn)權(quán)代理事務(wù)所(普通合伙)35209 | 代理人: | 方惠春 |
| 地址: | 361000 福建*** | 國省代碼: | 福建;35 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 通過 軟件 模擬 實(shí)現(xiàn) uart 通信 接口 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及一種軟件模擬實(shí)現(xiàn)UART通信的方法,特別是涉及一種嵌入式系統(tǒng)中通過軟件模擬實(shí)現(xiàn)UART通信接口數(shù)據(jù)的發(fā)送和接收的處理方法。
背景技術(shù)
隨著嵌入式技術(shù)發(fā)展和嵌入式設(shè)備的多樣化,由嵌入式設(shè)備構(gòu)成的多機(jī)系統(tǒng)取得了長足的發(fā)展,多個(gè)嵌入式設(shè)備之間以串行口UART(Universal Asynchronous Receiver/Transmitter,通用異步接收和發(fā)送器)進(jìn)行數(shù)據(jù)傳輸,構(gòu)成復(fù)雜的主從式通訊網(wǎng)。
在實(shí)際應(yīng)用中,經(jīng)常遇到一個(gè)主機(jī)設(shè)備需要同時(shí)連接各種不同的從機(jī)設(shè)備,而主機(jī)設(shè)備與從機(jī)設(shè)備之間的通信方式經(jīng)常采用UART通信接口,UART通信接口只能一對一通信,不能多個(gè)通信接口并接在一起通信,以往的實(shí)現(xiàn)方式:1.在設(shè)計(jì)開發(fā)主機(jī)設(shè)備時(shí)選擇具有多路UART通信接口的微處理器,而實(shí)際上具有多路UART通信接口的微處理器的型號比較少,帶來器件選型上的限制,而且比較昂貴,增加產(chǎn)品成本;2.采用串口擴(kuò)展芯片實(shí)現(xiàn),如ST16C550、ST16C554、SP2538、MAX3110等,雖然成本較高,但系統(tǒng)的可靠性得到了保證,適用于數(shù)據(jù)量較大、串口需求較多的系統(tǒng);3.采用分時(shí)切換的方法將一個(gè)串口擴(kuò)展與多個(gè)串口設(shè)備通信,分時(shí)復(fù)用的方法成本低,但只適用于數(shù)據(jù)量不大的場合,并且只能由這個(gè)單片機(jī)主動和多個(gè)設(shè)備通信,實(shí)時(shí)性差;4.用軟件模擬的方法擴(kuò)展串口,其優(yōu)勢是成本低、實(shí)時(shí)性好,但需要占用一些CPU時(shí)間。
例如申請?zhí)枮?00710172965.9的發(fā)明提供了基于無線通信模塊的軟件模擬UART的方法,該方法包括中斷處理方法、位于中斷處理方法流程末端的數(shù)據(jù)發(fā)送方法和數(shù)據(jù)接收方法,該發(fā)明使用2個(gè)普通的I/O和一個(gè)定時(shí)器來實(shí)現(xiàn),且?guī)IFO功能,擴(kuò)展模擬UART的收發(fā)數(shù)據(jù)在中斷服務(wù)中完成。但其實(shí)現(xiàn)方法存在多個(gè)缺點(diǎn),1.判斷數(shù)據(jù)起始位的方法是采用中斷定時(shí)采樣監(jiān)測方式,中斷定時(shí)間隔為波特率定時(shí)間隔的1/3,以3倍的波特率對接收數(shù)據(jù)進(jìn)行采樣監(jiān)測,這樣導(dǎo)致定時(shí)器中斷過于頻繁,而且在無數(shù)據(jù)收發(fā)的情況下也需要定時(shí)采樣監(jiān)測通信總線是否有數(shù)據(jù),耗費(fèi)系統(tǒng)資源;2.每次采樣的位數(shù)據(jù)都是采集位的末尾位置,數(shù)據(jù)接收的容錯(cuò)性差,準(zhǔn)確率低,因?yàn)樵诙〞r(shí)器精度較低或?qū)Ψ桨l(fā)送的位數(shù)據(jù)寬度誤差較大的情況下,會出現(xiàn)采集錯(cuò)位導(dǎo)致接收數(shù)據(jù)出錯(cuò);3.按照該方案描述,在發(fā)送數(shù)據(jù)時(shí),將定時(shí)進(jìn)行3分頻,中斷定時(shí)間隔等于波特率間隔,這樣每一次定時(shí)中斷就發(fā)送一位,從而可以看出,在發(fā)送數(shù)據(jù)過程中無法以3倍的波特率定時(shí)頻率對接收數(shù)據(jù)進(jìn)行采樣監(jiān)測,無法實(shí)現(xiàn)數(shù)據(jù)接收,因此,無法達(dá)到全雙工數(shù)據(jù)收發(fā)通信模式;4.當(dāng)模擬多個(gè)UART通信接口且各通信接口波特率不同時(shí),每一個(gè)通信接口都需要有一個(gè)定時(shí)器,無法實(shí)現(xiàn)多個(gè)UART通信接口共享一個(gè)定時(shí)器,因此可模擬的UART通信接口個(gè)數(shù)受限于微處理器的定時(shí)器個(gè)數(shù),而通常情況下微處理器的定時(shí)器個(gè)數(shù)都是比較少的;5.當(dāng)一個(gè)字節(jié)的數(shù)據(jù)接收完畢后在定時(shí)器中斷服務(wù)程序中將接收數(shù)據(jù)存儲到接收FIFO隊(duì)列,這樣將導(dǎo)致定時(shí)器中斷服務(wù)程序執(zhí)行時(shí)間過長,降低系統(tǒng)的準(zhǔn)確度,降低最高可支持的通信波特率。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是,提供一種通過軟件模擬實(shí)現(xiàn)多個(gè)UART通信接口的方法,在同等系統(tǒng)主頻和硬件資源條件下提高通信波特率、提升通信準(zhǔn)確率,實(shí)現(xiàn)真正全雙工通信,并可擴(kuò)展多個(gè)UART通信接口,滿足各種不同通信波特率的要求,解決UART通信接口不足問題,降低產(chǎn)品成本,提高產(chǎn)品競爭力。
為解決上述技術(shù)問題,本發(fā)明的思路是:在硬件方面,使用1個(gè)定時(shí)器和2個(gè)I/O端口,利用定時(shí)器的定時(shí)中斷功能實(shí)現(xiàn)精確的波特率定時(shí),發(fā)送和接收都在定時(shí)中斷的控制之下進(jìn)行。數(shù)據(jù)發(fā)送的思想是:當(dāng)啟動字節(jié)發(fā)送時(shí),通過發(fā)送管腳TXD先發(fā)起始位,然后發(fā)數(shù)據(jù)位和奇偶效驗(yàn)位,最后再發(fā)停止位,發(fā)送過程由發(fā)送狀態(tài)機(jī)控制,每次中斷根據(jù)計(jì)算延時(shí)計(jì)數(shù)器到期只發(fā)送1個(gè)位,經(jīng)過若干個(gè)定時(shí)中斷完成1個(gè)字節(jié)數(shù)據(jù)的發(fā)送。數(shù)據(jù)接收的思想是,當(dāng)不在字節(jié)數(shù)據(jù)接收過程時(shí),將接收管腳RXD配置成I/O低電平中斷方式,監(jiān)測起始位,當(dāng)檢測到起始位,則開始啟動一次字節(jié)數(shù)據(jù)接收,字節(jié)數(shù)據(jù)接收過程由接收狀態(tài)機(jī)控制,每次中斷根據(jù)計(jì)算延時(shí)計(jì)數(shù)器到期接收1個(gè)位,經(jīng)過若干個(gè)定時(shí)中斷完成1個(gè)字節(jié)數(shù)據(jù)的接收。為了提高串口的性能,在發(fā)送和接收上都實(shí)現(xiàn)了FIFO功能,提高通信的實(shí)時(shí)性。
具體的,本發(fā)明所采用的技術(shù)方案是:一種通過軟件模擬實(shí)現(xiàn)多個(gè)UART通信接口的方法,包括數(shù)據(jù)接收方法和數(shù)據(jù)發(fā)送方法,其中數(shù)據(jù)接收方法包括以下步驟:
配置芯片一I/O管腳為接收管腳RXD的步驟:將接收管腳RXD配置為低電平中斷模式并打開I/O中斷使能;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于廈門雅迅網(wǎng)絡(luò)股份有限公司,未經(jīng)廈門雅迅網(wǎng)絡(luò)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210013739.7/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 一種基于應(yīng)用軟件散布的軟件授權(quán)與保護(hù)方法及系統(tǒng)
- 一種用于航空機(jī)載設(shè)備的軟件在線加載系統(tǒng)及方法
- 軟件構(gòu)建方法、軟件構(gòu)建裝置和軟件構(gòu)建系統(tǒng)
- 惡意軟件檢測方法及裝置
- 一種基于軟件基因的軟件同源性分析方法和裝置
- 軟件引入系統(tǒng)、軟件引入方法及存儲介質(zhì)
- 軟件驗(yàn)證裝置、軟件驗(yàn)證方法以及軟件驗(yàn)證程序
- 使用靜態(tài)和動態(tài)惡意軟件分析來擴(kuò)展惡意軟件的動態(tài)檢測
- 一種工業(yè)控制軟件構(gòu)建方法和軟件構(gòu)建系統(tǒng)
- 可替換游戲軟件與測驗(yàn)軟件的裝置與方法
- 互動業(yè)務(wù)終端、實(shí)現(xiàn)系統(tǒng)及實(shí)現(xiàn)方法
- 街景地圖的實(shí)現(xiàn)方法和實(shí)現(xiàn)系統(tǒng)
- 游戲?qū)崿F(xiàn)系統(tǒng)和游戲?qū)崿F(xiàn)方法
- 圖像實(shí)現(xiàn)裝置及其圖像實(shí)現(xiàn)方法
- 增強(qiáng)現(xiàn)實(shí)的實(shí)現(xiàn)方法以及實(shí)現(xiàn)裝置
- 軟件架構(gòu)的實(shí)現(xiàn)方法和實(shí)現(xiàn)平臺
- 數(shù)值預(yù)報(bào)的實(shí)現(xiàn)方法及實(shí)現(xiàn)系統(tǒng)
- 空調(diào)及其冬眠控制模式實(shí)現(xiàn)方法和實(shí)現(xiàn)裝置以及實(shí)現(xiàn)系統(tǒng)
- 空調(diào)及其睡眠控制模式實(shí)現(xiàn)方法和實(shí)現(xiàn)裝置以及實(shí)現(xiàn)系統(tǒng)
- 輸入設(shè)備實(shí)現(xiàn)方法及其實(shí)現(xiàn)裝置





