MSCBSC 移動通信論壇
搜索
登錄注冊
網(wǎng)絡優(yōu)化工程師招聘專欄 4G/LTE通信工程師最新職位列表 通信實習生/應屆生招聘職位

  • 閱讀:1972
  • 回復:0
CC2430問題日記
gadflycq
初級會員



 發(fā)短消息    關(guān)注Ta 

積分 65
帖子 13
威望 2408 個
禮品券 0 個
專家指數(shù) 0
注冊 2007-8-29
專業(yè)方向 
回答問題數(shù) 0
回答被采納數(shù) 0
回答采納率 0%
 
發(fā)表于 2010-11-21 21:14:35  只看樓主 
1:無法打開下載文件進行程序下載。
這是早些時候剛拿到開發(fā)板遇到的第一個問題。當時還一頭霧水,撓破頭皮時才發(fā)現(xiàn)有個選項沒選對,link選項里面應該選output輸出文件而不是debug調(diào)試文件。
2:串口接收相鄰字節(jié)間的時間間隔
由于采用的輪詢串口接收中斷標志的方式來接收存儲串口數(shù)據(jù),所以需要判斷一個連續(xù)的數(shù)據(jù)流什么時候結(jié)束。經(jīng)反復實驗,得出一個經(jīng)驗數(shù)值:以9600bps為例,連續(xù)發(fā)送的字節(jié)間間隔時間小于2.8ms,即在判斷一個數(shù)據(jù)是否結(jié)束時,應至少等待2.8ms看是否接收到新的一個字節(jié),若接收到則此數(shù)據(jù)流是連續(xù)的,還沒結(jié)束;若等待2.8ms仍沒數(shù)據(jù)接收到,則可以判斷此數(shù)據(jù)流已經(jīng)結(jié)束。用C寫的代碼,對中斷標志的查詢大約循環(huán)400次≈2.8ms
3:串口有可能接收到假數(shù)據(jù)
當對方?jīng)]有數(shù)據(jù)向2430的串口發(fā)送時,串口不能對中斷標志進行無限循環(huán)的等待,必須設置一個最大等待次數(shù),超過門限就退出循環(huán)。但是實際實驗時發(fā)現(xiàn)往往設置了門限卻退不出循環(huán),串口輪詢接收函數(shù)死在那了,這個問題困擾了好久,最后才偶然的發(fā)現(xiàn)即使串口懸空,對方?jīng)]有任何數(shù)據(jù)發(fā)向2430的串口,但串口仍然有可能收到一些全是0x00或是全0xFF或著雜亂無章的數(shù)據(jù)。于是前面的問題有答案了:串口接收函數(shù)即使設置了最大循環(huán)等待次數(shù),但接收函數(shù)無法退出的原因并不在此,而是接收到了連續(xù)不斷的假數(shù)據(jù)!!由于一直處于接收狀態(tài),而且數(shù)據(jù)流又沒斷,所以串口一直在接收直到內(nèi)存溢出,直到程序跑飛,也不可能超過等待次數(shù)返回。所以解決辦法:寫串口中斷輪詢接收函數(shù)必須再加上一個輸入?yún)?shù),即最大允許接收字節(jié)數(shù)。
4:PC上位機的串口接收程序和cc2430下位機的串口發(fā)送配合問題
底下的2430源源不斷在向PC的RS232口發(fā)數(shù)據(jù),PC上用VC寫的定時器觸發(fā)不停的查詢串口接收緩沖區(qū)數(shù)據(jù),但明顯的PC上收到數(shù)據(jù)沒2430發(fā)的那么多。顯然PC在接收串口的過程中隨機地丟掉了幾個數(shù)據(jù)包,使得數(shù)據(jù)更新速度很慢。經(jīng)過仔細分析,原因是PC上定時器觸發(fā)的時間間隔和串口接收耗時的配合出現(xiàn)了問題,以9600bps的速率為例,發(fā)送100字節(jié),需時至少93ms,也就是說PC從收到第一個字節(jié)到收到最后一個字節(jié)中間持續(xù)時間至少得93ms,如果這中間發(fā)生了定時器觸發(fā)讀出緩沖區(qū)數(shù)據(jù),則肯定數(shù)據(jù)是不完整的,會發(fā)生數(shù)據(jù)錯誤產(chǎn)生丟包現(xiàn)象。解決辦法:盡量提高串口傳輸速率,盡量延長PC定時器觸發(fā)間隔。例如:采用57.6kbps的速率,傳送100字節(jié)需時約16ms,而定時器觸發(fā)間隔設置為100ms,這樣在數(shù)據(jù)接收期間發(fā)生定時器觸發(fā)的幾率就大大下降了,丟包率也就小多了。
5:RF的單次發(fā)送最大字節(jié)數(shù)
一開始沒認真閱讀手冊,一上來就傳幾百個字節(jié),結(jié)果往往只有前面的字節(jié)收到了,后面的數(shù)據(jù)全丟了。仔細研究手冊過后才知道,CC2430的RF緩沖FIFO只有128字節(jié),除開最后兩個字節(jié)的RSSI和LQI,實際最長載荷只有126字節(jié),如果采用spp簡單傳輸協(xié)議,再除開前面4個字節(jié)的開銷(包長、目的地址、源地址、標志),實際凈載荷只有122字節(jié)。超過122字節(jié)的數(shù)據(jù)只有自己拆開分多次傳輸。
6:radioSend()函數(shù)的DO_ACK選項
Chipcom提供的CUL庫里面的這個radioSend()函數(shù)是spp協(xié)議的簡單發(fā)送函數(shù),里面有DO_ACK選項,以提供對方收到后進行一次簡短應答來確認是否發(fā)送成功。但是經(jīng)過多次實驗,若使用DO_ACK選項,則函數(shù)無法返回,會死在里面。所以最好的調(diào)用方法就是使用DO_NOT_ACK
掃碼關(guān)注5G通信官方公眾號,免費領(lǐng)取以下5G精品資料
  • 1、回復“YD5GAI”免費領(lǐng)取《中國移動:5G網(wǎng)絡AI應用典型場景技術(shù)解決方案白皮書
  • 2、回復“5G6G”免費領(lǐng)取《5G_6G毫米波測試技術(shù)白皮書-2022_03-21
  • 3、回復“YD6G”免費領(lǐng)取《中國移動:6G至簡無線接入網(wǎng)白皮書
  • 4、回復“LTBPS”免費領(lǐng)取《《中國聯(lián)通5G終端白皮書》
  • 5、回復“ZGDX”免費領(lǐng)取《中國電信5G NTN技術(shù)白皮書
  • 6、回復“TXSB”免費領(lǐng)取《通信設備安裝工程施工工藝圖解
  • 7、回復“YDSL”免費領(lǐng)取《中國移動算力并網(wǎng)白皮書
  • 8、回復“5GX3”免費領(lǐng)取《 R16 23501-g60 5G的系統(tǒng)架構(gòu)1
  • 共獲得 1 次點評 我要點評

    • bestlcf 威望 +15 個
      · 原創(chuàng)內(nèi)容,鼓勵 詳細.. 發(fā)表與:2010-11-22 15:20:53
     
    [充值威望,立即自動到帳] [VIP貴賓權(quán)限+威望套餐] 另有大量優(yōu)惠贈送活動,請光臨充值中心
    充值擁有大量的威望和最高的下載權(quán)限,下載站內(nèi)資料無憂

    快速回復主題    
    標題
    內(nèi)容
     上傳資料請點左側(cè)【添加附件】

    當前時區(qū) GMT+8, 現(xiàn)在時間是 2025-05-15 06:07:54
    渝ICP備11001752號  Copyright @ 2006-2016 mscbsc.com  本站統(tǒng)一服務郵箱:mscbsc@163.com

    Processed in 0.569345 second(s), 13 queries , Gzip enabled
    TOP
    清除 Cookies - 聯(lián)系我們 - 移動通信網(wǎng) - 移動通信論壇 - 通信招聘網(wǎng) - Archiver