[發(fā)明專利]一種單片機串口接收數(shù)據(jù)的處理方法無效
| 申請?zhí)枺?/td> | 201410223379.2 | 申請日: | 2014-05-23 |
| 公開(公告)號: | CN104021100A | 公開(公告)日: | 2014-09-03 |
| 發(fā)明(設(shè)計)人: | 葉強;陳偉新;肖運根 | 申請(專利權(quán))人: | 無錫市崇安區(qū)科技創(chuàng)業(yè)服務(wù)中心 |
| 主分類號: | G06F13/38 | 分類號: | G06F13/38;G06F13/16 |
| 代理公司: | 南京經(jīng)緯專利商標(biāo)代理有限公司 32200 | 代理人: | 許方 |
| 地址: | 214000 江蘇*** | 國省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 單片機 串口 接收 數(shù)據(jù) 處理 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及一種單片機串口接收數(shù)據(jù)的處理方法,屬于串口數(shù)據(jù)處理領(lǐng)域。
背景技術(shù)
在物聯(lián)網(wǎng)領(lǐng)域中離不開數(shù)據(jù)的接收與處理,串口作為一種常用的通訊方式,其在物聯(lián)網(wǎng)中有著廣泛的運用。
目前,單片機串口接收數(shù)據(jù)的處理方式通常是接收完一組數(shù)據(jù)后,立刻對該組數(shù)據(jù)進行處理,并且只有把前一組數(shù)據(jù)處理完后才能接收下一組數(shù)據(jù),這樣當(dāng)有多組數(shù)據(jù)連續(xù)傳入單片機時,會導(dǎo)致單片機出現(xiàn)丟包現(xiàn)象。
發(fā)明內(nèi)容
本發(fā)明針對背景技術(shù)中的問題,而提出一種單片機串口接收數(shù)據(jù)的處理方法,以降低丟包概率。
本發(fā)明為解決以上技術(shù)問題,采用如下技術(shù)方案:
一種單片機串口接收數(shù)據(jù)的處理方法,該方法包括以下步驟:
步驟一:建立數(shù)據(jù)緩存數(shù)組,并定義用于指向數(shù)據(jù)緩存數(shù)組中元素的數(shù)據(jù)寫入指針和數(shù)據(jù)讀出指針;
步驟二:打開串口中斷,單片機每接收到一個數(shù)據(jù)后,自動進入串口中斷服務(wù)程序;
步驟三:在串口中斷服務(wù)程序中,單片機用接收到的數(shù)據(jù)覆蓋數(shù)據(jù)寫入指針指向的元素,并將數(shù)據(jù)寫入指針加一;
步驟四:當(dāng)所有數(shù)據(jù)接收完后,單片機對數(shù)據(jù)讀出指針指向的元素進行處理,并將數(shù)據(jù)讀出指針加一,直至所有數(shù)據(jù)處理完為止。
進一步地,所述步驟四中所有數(shù)據(jù)處理完是表示數(shù)據(jù)讀出指針指向的位置與數(shù)據(jù)寫入指針指向的位置相同。
進一步地,所述數(shù)據(jù)緩存數(shù)組中的元素定義為無符號字符型。
技術(shù)效果:
1、改變了傳統(tǒng)串口數(shù)據(jù)處理方式,將接收到的數(shù)據(jù)先暫存在數(shù)據(jù)緩存數(shù)組中,然后再按順序依次處理,有效降低了丟包現(xiàn)象的發(fā)生率。
2、方法簡單易行,可靠性高,具有良好的應(yīng)用價值。
具體實施方式
下面對本發(fā)明的技術(shù)方案做進一步介紹:
本發(fā)明單片機串口接收數(shù)據(jù)的處理方法主要包括以下步驟:
步驟一:建立數(shù)據(jù)緩存數(shù)組,并定義用于指向數(shù)據(jù)緩存數(shù)組中元素的數(shù)據(jù)寫入指針和數(shù)據(jù)讀出指針,數(shù)據(jù)緩存數(shù)組中的元素定義為無符號字符型;
步驟二:打開串口中斷,單片機每接收到一個數(shù)據(jù)后,自動進入串口中斷服務(wù)程序;
步驟三:在串口中斷服務(wù)程序中,單片機用接收到的數(shù)據(jù)覆蓋數(shù)據(jù)寫入指針指向的元素,并將數(shù)據(jù)寫入指針加一,使寫入指針指向下一個元素;
步驟四:當(dāng)所有數(shù)據(jù)接收完后(此階段不再進入串口中斷服務(wù)程序),單片機對數(shù)據(jù)讀出指針指向的元素進行處理,并將數(shù)據(jù)讀出指針加一,使讀出指針指向下一個元素,如此依次處理數(shù)據(jù),直至所有數(shù)據(jù)處理完為止。
在串口接收數(shù)據(jù)前,數(shù)據(jù)寫入指針與數(shù)據(jù)讀出指針均指向緩存數(shù)組中的首個元素,接收數(shù)據(jù)時,隨著數(shù)據(jù)進入緩存數(shù)組,寫入指針依次后移,在數(shù)據(jù)接收完后,寫入指針指向末個數(shù)據(jù)下一位元素。隨著數(shù)據(jù)開始處理,讀出指針依次后移,在所有數(shù)據(jù)處理完后,讀出指針也指向末個數(shù)據(jù)下一位元素。所以,在數(shù)據(jù)進行處理后,當(dāng)數(shù)據(jù)讀出指針指向的位置與數(shù)據(jù)寫入指針指向的位置相同時,即表示所有數(shù)據(jù)處理完畢,單片機等待下一階段數(shù)據(jù)接收,指針復(fù)位。
單片機將收到的數(shù)據(jù)按先后順序依次放入數(shù)據(jù)緩存數(shù)組,在接收完后再依次處理,避免了連續(xù)傳入數(shù)據(jù)而使單片機發(fā)生丟包現(xiàn)象。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于無錫市崇安區(qū)科技創(chuàng)業(yè)服務(wù)中心,未經(jīng)無錫市崇安區(qū)科技創(chuàng)業(yè)服務(wù)中心許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410223379.2/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:隱形矯正拖鞋
- 下一篇:一種專用于生產(chǎn)汽車前剎車盤的沖壓模具
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





