N即為接收方接收的各段高電平/低電平對(duì)應(yīng)發(fā)送方在相應(yīng)時(shí)間發(fā)送的各 高電平/低電平的比特?cái)?shù)。例如X選為16,接收方接收到的某段高電平比特?cái)?shù)為17,則通過 "四舍五入"方法后得到的N為1,因此接收方接收到的某段17比特的高電平對(duì)應(yīng)在發(fā)送方發(fā) 送的數(shù)據(jù)中為1比特的高電平。其中"四舍五入"的方法在二進(jìn)制時(shí),體現(xiàn)為對(duì)各段高電平/ 低電平的十進(jìn)制比特?cái)?shù)加8后轉(zhuǎn)換二進(jìn)制,然后該二進(jìn)制數(shù)中取前4位二進(jìn)制,所取的前4位 二進(jìn)制數(shù)轉(zhuǎn)換成的十進(jìn)制即為商N(yùn)。當(dāng)X為16時(shí),對(duì)應(yīng)不同比特?cái)?shù)四舍五入后得到的商N(yùn)如表 1所示:
[0089] 表1
[0094] 通過上表可見,采用"四舍五入"方法后,當(dāng)誤差在一定范圍內(nèi)時(shí),都可以恢復(fù)為原 來波形,不會(huì)產(chǎn)生非正常波形,即通過這一步得到的電平,只要誤差在允許范圍內(nèi),都可以 還原成正確比特?cái)?shù)。
[0095] 上述實(shí)施例為本發(fā)明較佳的實(shí)施方式,但本發(fā)明的實(shí)施方式并不受上述實(shí)施例的 限制,其他的任何未背離本發(fā)明的精神實(shí)質(zhì)與原理下所作的改變、修飾、替代、組合、簡(jiǎn)化, 均應(yīng)為等效的置換方式,都包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1. 一種可濾除毛刺的串行數(shù)據(jù)接收方法,其特征在于,步驟如下: 51、 設(shè)定接收方采樣接收信號(hào)線上信號(hào)時(shí)所采用的波特因子X;確定發(fā)送方所采用的數(shù) 據(jù)幀格式及接收方接收信號(hào)線在空閑狀態(tài)下和傳輸數(shù)據(jù)幀停止位時(shí)的電平狀態(tài),其中〇代 表低電平,1代表高電平; 52、 接收方按照步驟S1設(shè)定的波特因子開始對(duì)接收信號(hào)線上的信號(hào)進(jìn)行采樣接收,并 且將采樣接收的數(shù)據(jù)先后存入一個(gè)3比特位的先入先出隊(duì)列中; 53、 若接收方接收信號(hào)線在空閑狀態(tài)下和傳輸數(shù)據(jù)幀停止位時(shí)的電平狀態(tài)為高電平, 則進(jìn)入步驟S31;若接收方接收信號(hào)線在空閑狀態(tài)下和傳輸數(shù)據(jù)幀停止位時(shí)的電平狀態(tài)為 低電平,則進(jìn)入步驟S32; 531、 在當(dāng)前采樣時(shí)刻檢測(cè)先入先出隊(duì)列中從入到出方向上的比特位數(shù)據(jù),判斷是否為 001; 若否,則判定未發(fā)生電平跳變情況,進(jìn)入步驟S311; 若是,則判定發(fā)生電平跳變情況,從高電平跳變?yōu)榈碗娖?,進(jìn)入步驟S312; 5311、 在下一采樣時(shí)刻到來時(shí)繼續(xù)執(zhí)行步驟S31; 5312、 接收方開始采樣接收發(fā)送方發(fā)送的數(shù)據(jù)幀,在先入先出隊(duì)列中從入到出方向上 的比特位數(shù)據(jù)出現(xiàn)001的采樣時(shí)刻,將計(jì)數(shù)器置為1,然后在下一采樣時(shí)刻到來時(shí)進(jìn)入步驟 S4; 532、 在當(dāng)前采樣時(shí)刻檢測(cè)先入先出隊(duì)列中從入到出方向上的比特位數(shù)據(jù),判斷是否為 110; 若否,則判定未發(fā)生電平跳變情況,進(jìn)入步驟S321; 若是,則判定發(fā)生電平跳變情況,從低電平跳變?yōu)楦唠娖剑M(jìn)入步驟S322; 5321、 在下一采樣時(shí)刻到來時(shí)繼續(xù)執(zhí)行步驟S32; 5322、 接收方開始采樣接收發(fā)送方發(fā)送的數(shù)據(jù)幀,在先入先出隊(duì)列中從入到出方向上 的比特位數(shù)據(jù)出現(xiàn)110的采樣時(shí)刻,將計(jì)數(shù)器置為1,然后在下一采樣時(shí)刻到來時(shí)進(jìn)入步驟 S7; 54、 檢測(cè)當(dāng)前采樣時(shí)刻先入先出隊(duì)列中從入到出方向上的比特位數(shù)據(jù),判斷是否為 110; 若否,則判定未發(fā)生電平跳變情況,進(jìn)入步驟S5; 若是,則判定發(fā)生電平跳變情況,從低電平跳變?yōu)楦唠娖?,進(jìn)入步驟S6; 55、 判斷接收方接收的數(shù)據(jù)幀長(zhǎng)度是否達(dá)到完整數(shù)據(jù)幀長(zhǎng)度; 若否,則計(jì)數(shù)器加1,即將當(dāng)前低電平的比特?cái)?shù)加1,在下一采樣時(shí)刻到來時(shí)回到步驟 S4; 若是,則計(jì)數(shù)器停止計(jì)數(shù),即停止當(dāng)前低電平比特?cái)?shù)的計(jì)數(shù),計(jì)數(shù)器輸出低電平比特?cái)?shù) 計(jì)數(shù)結(jié)果,然后進(jìn)入下一幀數(shù)據(jù)的接收,在下一采樣時(shí)刻到來時(shí),回到步驟S3; 56、 計(jì)數(shù)器停止計(jì)數(shù),即停止當(dāng)前低電平比特?cái)?shù)的計(jì)數(shù),計(jì)數(shù)器輸出低電平比特?cái)?shù)計(jì)數(shù) 結(jié)果,然后將計(jì)數(shù)器置為1,下一采樣時(shí)刻到來時(shí)進(jìn)入步驟S7; 57、 檢測(cè)當(dāng)前采樣時(shí)刻先入先出隊(duì)列中從入到出方向上的比特位數(shù)據(jù),判斷是否為 若否,則判定未發(fā)生電平跳變情況,進(jìn)入步驟S8; 001; 若是,則判定發(fā)生電平跳變情況,從高電平跳變?yōu)榈碗娖剑M(jìn)入步驟S9; 58、 判斷接收方接收的數(shù)據(jù)幀長(zhǎng)度是否到達(dá)完整數(shù)據(jù)幀長(zhǎng)度; 若否,則計(jì)數(shù)器加1,即將當(dāng)前高電平的比特?cái)?shù)加1,在下一采樣時(shí)刻到來時(shí)回到步驟 S7; 若是,則計(jì)數(shù)器停止計(jì)數(shù),即停止當(dāng)前高電平比特?cái)?shù)的計(jì)數(shù),計(jì)數(shù)器輸出高電平比特?cái)?shù) 計(jì)數(shù)結(jié)果,然后進(jìn)入下一幀數(shù)據(jù)的接收,在下一采樣時(shí)刻到來時(shí),回到步驟S3; 59、 計(jì)數(shù)器停止計(jì)數(shù),即停止當(dāng)前高電平比特?cái)?shù)的計(jì)數(shù),計(jì)數(shù)器輸出高電平比特?cái)?shù)計(jì)數(shù) 結(jié)果,然后將計(jì)數(shù)器置為1,下一采樣時(shí)刻到來時(shí)進(jìn)入步驟S4; S10、通過步驟S5、步驟S6、步驟S8和步驟S9,接收方依次獲取到每幀數(shù)據(jù)中對(duì)應(yīng)各段高 電平/低電平比特?cái)?shù),然后根據(jù)設(shè)定的接收方采樣接收信號(hào)線上信號(hào)時(shí)所采用的波特因子X 和每幀數(shù)據(jù)中對(duì)應(yīng)各段高電平/低電平的比特?cái)?shù),還原出發(fā)送方發(fā)送的原始數(shù)據(jù)幀;具體還 原過程如下:將接收方獲取的每幀數(shù)據(jù)中對(duì)應(yīng)各段高電平/低電平的比特?cái)?shù)加 X/2,然后除 以對(duì)導(dǎo)到商N(yùn),則還原出的發(fā)送方在相應(yīng)時(shí)間發(fā)送的原始數(shù)據(jù)即為N比特的高電平/低電平。2. 根據(jù)權(quán)利要求1所述的可濾除毛刺的串行數(shù)據(jù)接收方法,其特征在于,發(fā)送方發(fā)送的 每一數(shù)據(jù)幀包括1比特起始位、8比特?cái)?shù)據(jù)位DO至D7、1比特奇偶校驗(yàn)位和1比特停止位,其中 起始位為低電平,停止位為高電平。3. 根據(jù)權(quán)利要求1所述的可濾除毛刺的串行數(shù)據(jù)接收方法,其特征在于,所述設(shè)定的接 收方采樣接收信號(hào)線上信號(hào)時(shí)所采用的波特因子X為16、32、48、64、80、96、112、128或144。4. 根據(jù)權(quán)利要求1所述的可濾除毛刺的串行數(shù)據(jù)接收方法,其特征在于,接收方接收的 完整數(shù)據(jù)幀長(zhǎng)度為L(zhǎng)為: L = Ll*X+X/2; 其中L1為發(fā)送方發(fā)送的數(shù)據(jù)幀長(zhǎng)度,X為接收方采樣接收信號(hào)線上信號(hào)時(shí)所采用的波 特因子。5. 根據(jù)權(quán)利要求1所述的可濾除毛刺的串行數(shù)據(jù)接收方法,其特征在于,發(fā)送方通過串 口通信協(xié)議傳輸數(shù)據(jù)到接收方。6. 根據(jù)權(quán)利要求1所述的可濾除毛刺的串行數(shù)據(jù)接收方法,其特征在于,所述先入先出 隊(duì)列為移位寄存器,數(shù)據(jù)從移位寄存器的左端進(jìn)入,每進(jìn)來一位數(shù)據(jù)同時(shí)移位寄存器內(nèi)數(shù) 據(jù)右移一位。7. 根據(jù)權(quán)利要求1所述的可濾除毛刺的串行數(shù)據(jù)接收方法,其特征在于,先入先出隊(duì)列 各位初始化電平為接收方接收信號(hào)線在空閑狀態(tài)下電平。
【專利摘要】本發(fā)明公開了一種可濾除毛刺的串行數(shù)據(jù)接收方法,接收方對(duì)信號(hào)采樣接收時(shí),將數(shù)據(jù)存入到3比特位的先入先出隊(duì)列中,在接收方接收高電平情況下,通過檢測(cè)001來判斷高電平是否跳變?yōu)榈碗娖?,在檢測(cè)到001之前對(duì)高電平比特?cái)?shù)進(jìn)行計(jì)數(shù),當(dāng)某采樣時(shí)刻檢測(cè)到001時(shí),則判定高電平跳變?yōu)榈碗娖?,輸出高電平?jì)數(shù)結(jié)果;在接收方接收低電平情況下,通過檢測(cè)110來判斷低電平是否跳變?yōu)楦唠娖剑跈z測(cè)到110之前對(duì)低電平比特?cái)?shù)進(jìn)行計(jì)數(shù),當(dāng)某采樣時(shí)刻檢測(cè)到110時(shí),則判定低電平跳變?yōu)楦唠娖?,輸出低電平?jì)數(shù)結(jié)果。最后根據(jù)接收方接收到的各段高電平/低電平比特?cái)?shù)還原出原始數(shù)據(jù)。本發(fā)明在濾除毛刺的同時(shí)完成數(shù)據(jù)接收,提高了傳輸?shù)恼_性。
【IPC分類】H04B10/50, H04B10/2507
【公開號(hào)】CN105680947
【申請(qǐng)?zhí)枴緾N201511024487
【發(fā)明人】易清明, 李森源, 石敏
【申請(qǐng)人】暨南大學(xué)
【公開日】2016年6月15日
【申請(qǐng)日】2015年12月29日