音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

[求助]設(shè)計程序求助,高手請進

作者:lsvrky 欄目:ARM技術(shù)
[求助]設(shè)計程序求助,高手請進
[求助]設(shè)計程序求助,高手請進

現(xiàn)在準備完成一項數(shù)據(jù)通信試驗。



我自己做的板子上(s256)發(fā)送在一定時間內(nèi)(幾十毫秒)發(fā)送



8個字節(jié)的數(shù)據(jù)。用485通信,每發(fā)送一個字節(jié)的數(shù)據(jù),然后等待另外



相連的設(shè)備收到后給我送回該字節(jié),如果收到數(shù)據(jù)正確,就繼續(xù)發(fā)送下



一個字節(jié),一直到8個自己發(fā)送完。如其中不能出現(xiàn)超時等錯誤,則



發(fā)送失敗。且如果發(fā)送的完這8個數(shù)據(jù)的時間如果超過一定時間(幾十毫秒)



。則發(fā)送失敗



         我想來想去,覺得這程序不太好寫,哪個大俠能給我指點一下


2樓: >>參與討論
densy
主要是等待超時
如:while((u0lsr&0x01)!=1)//接收寄存器空
{
    i++;if(i>????){i=0;return fault;}//計時;返回或跳到重發(fā)。
}
if(u0rbr!=ack)return fault;//
大概這樣吧。

3樓: >>參與討論
龍一
實際上很容易,主要看你如何分離各個子模塊
比如,你先設(shè)計一個函數(shù)完成一個字節(jié)的發(fā)送與等待,這個函數(shù)返回兩個值,如果在指定時間內(nèi)等到數(shù)據(jù)正確回送則返回真值,否則返回假值。然后再設(shè)計一個函數(shù)來循環(huán)調(diào)用前一個函數(shù)來完成所有八個字節(jié)的發(fā)送,每發(fā)送一個字節(jié)數(shù)據(jù)判斷一次前一個函數(shù)的返回值,成功則繼續(xù)發(fā)送下一個,不成功則重復(fù)發(fā)送一定次數(shù),如果指定次數(shù)內(nèi)仍然不成功則放棄本次發(fā)送,這表明當前8個字節(jié)的數(shù)據(jù)發(fā)送失敗。一般條件下不會出現(xiàn)這種情況,8個字節(jié)的發(fā)送應(yīng)該比較順利,只是會偶爾重試一次。明白了么,大致過程就是這樣。

4樓: >>參與討論
lsvrky
謝謝
謝謝兩位大俠的指點

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
求助AT91SAM7S的SYS中斷問題
龍芯和人家開源的cpu差不多,就不說啥了。
向大家請教芯片選型問題
請推薦一款高性能ARM芯片
優(yōu)龍的ARM9開發(fā)學(xué)習(xí)板怎么樣啊?
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號