<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > MSP430單片機(jī)在微型低功耗數(shù)據(jù)廣播接收機(jī)中的應(yīng)用

          MSP430單片機(jī)在微型低功耗數(shù)據(jù)廣播接收機(jī)中的應(yīng)用

          作者: 時(shí)間:2009-11-26 來源:網(wǎng)絡(luò) 收藏
          定時(shí)器時(shí)鐘源使用ACLK,即外部晶振,f = 4.194MHz,所需同步時(shí)鐘的頻率f = 4.8KHz,
          計(jì)數(shù)器計(jì)數(shù)值CCR0 = 4.194MHZ/4.8KHZ = 873
          如圖可見,當(dāng)同步時(shí)鐘與碼元完全同步時(shí),捕獲中斷后所讀到值CCR1,應(yīng)等于CCR0的二分之一,即;當(dāng) 時(shí),說明同步時(shí)鐘超前,需要增大計(jì)數(shù)值CCR0,即 , 使下一bit的采樣點(diǎn)錯(cuò)后;當(dāng)時(shí),說明同步時(shí)鐘滯后,需要減小計(jì)數(shù)值CCR0,即,使下一bit的采樣點(diǎn)提前。
          在上式中的 △ 稱為速率的誤差容限值(datarate tolerance),如果設(shè)置的這個(gè)容限值太高(即:時(shí)鐘調(diào)整的步進(jìn)值過大),就會(huì)導(dǎo)致同步時(shí)鐘的頻率不能穩(wěn)定;反之這個(gè)容限值太?。矗簳r(shí)鐘調(diào)整的步進(jìn)值過小),同步時(shí)鐘就不能跟蹤上碼元的變化;只有這個(gè)容限值合適,同步時(shí)鐘產(chǎn)生的采樣點(diǎn)就會(huì)逐漸收斂到接收碼元的中心位置,實(shí)現(xiàn)同步跟蹤。根據(jù)對(duì)噪聲和頻偏的估計(jì), ,根據(jù)這個(gè)標(biāo)準(zhǔn)計(jì)算 △ 的值。
          在本中的時(shí)鐘調(diào)整并不是捕獲到每一次跳變沿都要進(jìn)行時(shí)鐘調(diào)整,根據(jù)接收信號(hào)頻偏大小,每8 bit 調(diào)整一次時(shí)鐘,即可實(shí)現(xiàn)同步時(shí)鐘的跟蹤。下表給出實(shí)驗(yàn)中捕獲中斷讀出的CCR1的值。
          時(shí)采樣點(diǎn)基本位于碼元中心
          375385407421440426445438
          440433446436439448432430
          421434447437420405412419
          426429433438439420431435
          439429439422436439426435

          本文引用地址:http://www.ex-cimer.com/article/173554.htm

          從表中看出同步時(shí)鐘的采樣點(diǎn)逐漸收斂在碼元中心位置,并且-在以后的接收過程中,實(shí)現(xiàn)跟蹤。
          (三)、小結(jié)
          由于采樣時(shí)鐘恢復(fù)和同步捕捉跟蹤都需要響應(yīng)中斷服務(wù)程序,占用CPU開銷。而CPU 的主要工作是進(jìn)行每幀的解碼和發(fā)送。如果使用第一種同步方法,時(shí)鐘頻率4.8K*5,CPU時(shí)鐘為4.3MHz,即程序每運(yùn)行41.6us、約20條程序語句就要響應(yīng)一次定時(shí)器中斷服務(wù)程序,增大了運(yùn)算量。如果提高CPU的工作頻率,會(huì)增大電流的消耗。所以在達(dá)到相同的采樣效果時(shí),使用第二種同步方法。同理,為節(jié)約CPU開銷,并不需要捕捉每個(gè)跳變沿進(jìn)行同步跟蹤,實(shí)驗(yàn)證明每8比特?cái)?shù)據(jù)捕捉一次跳變沿調(diào)整采樣時(shí)鐘,即可實(shí)現(xiàn)良好的同步跟蹤。

          五、幀同步
          在數(shù)字信息傳輸中,幀同步信號(hào)是一些特定的碼組,這種幀同步碼組通常是在某段時(shí)間集中插入信息碼流??紤]到時(shí)間位置的確定,要在建立了各碼元的正確時(shí)間關(guān)系后才有能實(shí)現(xiàn),所以幀同步一般是在位同步的基礎(chǔ)上實(shí)現(xiàn)。
          (一)、對(duì)幀同步系統(tǒng)的要求
          1、 幀同步的捕捉(同步建立)時(shí)間要短,
          2、 在一定的同步引入時(shí)間要求下,幀同步信號(hào)占用的碼組長度應(yīng)越短越好。
          3、 同步系統(tǒng)的工作要穩(wěn)定可靠,一旦建立同步狀態(tài)后,系統(tǒng)不應(yīng)因信道的正常誤碼而失步,即幀同步系統(tǒng)應(yīng)具有一定的抗干擾能力,能識(shí)別假失步和避免偽同步。
          數(shù)字信號(hào)在傳輸過程中總會(huì)出現(xiàn)誤碼而影響同步。一種是由信道噪聲等原因引起的隨機(jī)誤碼。此類誤碼造成幀同步碼的丟失往往是一種假失步現(xiàn)象。因此,一般規(guī)定幀同步信號(hào)丟失的時(shí)間超過一定限度時(shí),才宣布幀同步態(tài)丟失,然后開始新的同步搜索(捕捉態(tài))。這段時(shí)間稱作前方保護(hù)時(shí)間。然而,無論選用何種幀同步碼型,信息碼流中都有可能出現(xiàn)與幀同步碼圖案相同的碼組,即偽同步碼。所以也不能一經(jīng)發(fā)現(xiàn)符合幀同步碼組的信號(hào)就進(jìn)入同步態(tài)。只有當(dāng)幀同步信號(hào)連續(xù)來了幾幀或一段時(shí)間后,同步系統(tǒng)才可發(fā)出指令進(jìn)入同步態(tài),這段時(shí)間成為后方保護(hù)時(shí)間。 (二)、幀同步的實(shí)現(xiàn)
          使用集中插入特殊碼元的幀同步方法,集中插入就是把特殊的幀同步碼組集中插在一幀的特定位置(一般是一幀的開始)。一旦檢測(cè)到這個(gè)特定碼組就確定了幀的起始位置,從而獲得幀同步。此種方法可以迅速糾正幀失步,即一旦幀失步,只要在下一幀同步碼就能恢復(fù)幀同步。
          本接收機(jī)收到的數(shù)據(jù)幀格式為:
          每192個(gè)信息字節(jié)加上2字節(jié)的幀同步碼組成一幀數(shù)據(jù)(如圖)。選用的幀同步碼為0x19D7。

          接收端采用幀同步碼的滑動(dòng)法來恢復(fù)幀同步信號(hào)。其實(shí)現(xiàn)方法為:在里設(shè)置16bit移位寄存器、前后方保護(hù)計(jì)數(shù)器來完成前方保護(hù)時(shí)間和后方保護(hù)時(shí)間的計(jì)數(shù),和幀同步狀態(tài)位SFLAG,標(biāo)志系統(tǒng)的同步狀態(tài)。
          當(dāng)數(shù)據(jù)流進(jìn)入移位寄存器,與幀同步碼(0x19d7)相比較,如果不同則移位寄存器高位移出低位移入下一比特再進(jìn)行比較,同步系統(tǒng)從不斷接收輸入的數(shù)據(jù)流中捕獲到0x19d7碼組,相當(dāng)于第N幀有同步碼,置SFLAG=1,后方保護(hù)時(shí)間計(jì)數(shù)器開始,如果經(jīng)過192byte信息碼在第N+1幀處檢出同步碼,后方保護(hù)時(shí)間計(jì)數(shù)器加1,應(yīng)在第N+2幀再一次檢出同步碼,后方保護(hù)時(shí)間計(jì)數(shù)器加1,系統(tǒng)進(jìn)入幀同步狀態(tài),進(jìn)行數(shù)據(jù)定時(shí)接收。如果在第N+1幀處不能檢出同步碼或在第N+1幀處檢出同步碼而在第N+2幀處不能檢出同步碼,同步系統(tǒng)都要重新進(jìn)入捕獲狀態(tài)。當(dāng)系統(tǒng)處于同步狀態(tài)即SFLAG=1時(shí),檢測(cè)出錯(cuò)誤的幀同步碼,則打開前方保護(hù)時(shí)間計(jì)數(shù)器,如果連續(xù)丟失4(或5)個(gè)幀同步碼,計(jì)數(shù)器計(jì)滿,清SFLAG=0,標(biāo)志系統(tǒng)進(jìn)入捕捉狀態(tài)并停止數(shù)據(jù)定時(shí)接收。
          在本接收機(jī)的程序中將前方保護(hù)時(shí)間計(jì)數(shù)器和后方保護(hù)時(shí)間計(jì)數(shù)器簡(jiǎn)化為一個(gè)時(shí)間計(jì)數(shù)器,即SCOUNT。SCOUNT的初始值為0,每接收到一個(gè)正確的幀同步碼,SCOUNT加1,當(dāng)連續(xù)接收到三個(gè)正確的幀同步碼時(shí)(SCOUNT=3)進(jìn)入同步狀態(tài)SFLAG=1,如果在同步狀態(tài)中SCOUNT=4時(shí),再檢測(cè)到正確的幀同步碼SCOUNT不再加1,也就是說SCOUNT的最大值為4;當(dāng)檢測(cè)到一個(gè)錯(cuò)誤的幀同步碼,SCOUNT減1,如果出現(xiàn)連續(xù)4個(gè)錯(cuò)誤的幀同步碼,SCOUNT減為0,則從同步狀態(tài)進(jìn)入捕獲狀態(tài)。

          六、數(shù)據(jù)鏈路層
          進(jìn)行位同步、幀同步后,將定時(shí)接收的數(shù)據(jù)經(jīng)過以下處理經(jīng)串口輸出。
          1、去擾
          偽隨機(jī)序列發(fā)生器的生成多項(xiàng)式為,每幀同步字后進(jìn)行一次初始化, 加擾不包括幀同步字,數(shù)據(jù)由偽隨機(jī)序列加擾,可破壞數(shù)據(jù)中的連零,有利于解碼器位同步的鎖定,并分散數(shù)據(jù)信號(hào)的能量分布,使對(duì)主信號(hào)的干擾呈類似白噪音的背景噪音,提高多工數(shù)據(jù)對(duì)主信道干擾的主觀評(píng)價(jià)得分。
          2、去交織和糾錯(cuò)碼
          每一子幀用縮短R-S(48,32)編碼,可糾8個(gè)符號(hào)(64Bit)的隨機(jī)錯(cuò)誤。再進(jìn)行卷積交織,這樣數(shù)據(jù)系統(tǒng)能糾正長達(dá)384Bit突發(fā)性誤碼。這樣對(duì)4.8Kbps 的抗突發(fā)性干擾時(shí)間分別為80ms 。
          3、校驗(yàn)
          采用CCITT-16校驗(yàn)碼,可檢出超出糾錯(cuò)范圍而造成的誤碼,在每一子幀內(nèi)驗(yàn)出所有Q16位的錯(cuò)誤,可檢出99.998%的17位突發(fā)性錯(cuò)誤,99.997%的18位和大于18位的突發(fā)性錯(cuò)誤,可以滿足大多數(shù)信息及計(jì)算機(jī)通信的要求。涉及金融數(shù)據(jù)及對(duì)數(shù)據(jù)有嚴(yán)格要求的信息,用戶可另加其它校驗(yàn)。
          4、 輸出數(shù)據(jù)幀形成
          接收機(jī)根據(jù)自身的權(quán)限對(duì)于不同的業(yè)務(wù)數(shù)據(jù),形成不同的輸出幀格式進(jìn)行數(shù)據(jù)輸出。

          七、測(cè)試結(jié)果
          通過實(shí)際播出測(cè)試驗(yàn)證,CPFSK數(shù)據(jù)接收機(jī)的總體設(shè)計(jì)是成功的,實(shí)現(xiàn)了預(yù)期的設(shè)計(jì)目標(biāo),特別是較強(qiáng)的信道糾錯(cuò)編碼極大地改善了接收能力。
          2002年8月在北京月壇發(fā)射塔,發(fā)射頻率為91.5MHz調(diào)頻發(fā)射機(jī)上進(jìn)行播出測(cè)試,分別使用信息0-信息7傳輸電子文本數(shù)據(jù),實(shí)現(xiàn)用戶的有條件接收;2002年9月使用透明頁格式來傳輸差分GPS的改正數(shù)據(jù),鏈路測(cè)試成功;該系統(tǒng)即將用在電子車站牌、路燈控制系統(tǒng)中。


          上一頁 1 2 3 下一頁

          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();