最新免费av在线观看,亚洲综合一区成人在线,中文字幕精品无码一区二区三区,中文人妻av高清一区二区,中文字幕乱偷无码av先锋

登錄 免費注冊 首頁 | 行業(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

關(guān)于串口通訊的速度和正確率~~~~

作者:Analog921 欄目:單片機
關(guān)于串口通訊的速度和正確率~~~~
我現(xiàn)在做了一個轉(zhuǎn)換器結(jié)構(gòu)如下:

RS232--單片機4路并行通訊--RS485

現(xiàn)在我用11.0592的晶振,在19200的波特率的情況下,一次通訊在300個字節(jié)以下的數(shù)據(jù)包

我能夠保證絕對不出現(xiàn)錯誤,這個情況是屬于什么情況?是速度正常,還是轉(zhuǎn)換器做得不

好,數(shù)據(jù)包太小了??

謝謝~




2樓: >>參與討論
maychang
我能夠保證絕對不出現(xiàn)錯誤,這個情況是屬于什么情況?
正常情況。

3樓: >>參與討論
HIGHWAY
正常的啊,11.0592沒有波特率誤差的
 
4樓: >>參與討論
computer00
暈……居然還有嫌100%正確不好的…………
 
5樓: >>參與討論
hq_y
樓主的意思可能是大于300個字節(jié)的數(shù)據(jù)包就有可能出錯誤
 
6樓: >>參與討論
Analog921

是呀,我想做到連續(xù)不間斷發(fā)送不出錯呀,但是現(xiàn)在是要把數(shù)據(jù)打包發(fā)送才能不出錯,而且包大于300字節(jié)就有誤碼了~~~

7樓: >>參與討論
iC921
很感興趣
特別是-----

computer00 發(fā)表于 2006-10-20 10:46 侃單片機 ←返回版面    

暈……居然還有嫌100%正確不好的…………


>>如何理解?!

8樓: >>參與討論
hq_y
考慮一下,每個字節(jié)的停止位的設(shè)置,最好停止位是2個bit
減少積累誤差,然后晶振考慮使用11.0592/18.432/22.1184等這樣的頻率

當然合理的包長度是通信效率最高的;畢竟在正常的使用環(huán)境中要求一點干擾沒有也是不現(xiàn)實的;太長的數(shù)據(jù)包一旦傳輸出錯,再傳的代價就高了;不是追求數(shù)據(jù)包長度越長越好;

9樓: >>參與討論
sio4
樓上的很有道理
 
10樓: >>參與討論
Analog921
謝謝
嗯,我采用的是中斷作為握手信號,一個晶振加74F14驅(qū)動五個單片機,一位停止位,~~

呆會把停止位家成2BIT 再試一試~

11樓: >>參與討論
xujunchen
與停止位無關(guān),一次發(fā)送不要超過緩沖區(qū)的大小
 
12樓: >>參與討論
Analog921
xujunchen 不對~~
我的結(jié)構(gòu)是這樣的:

計算機A--232--MCU1--并行通訊--MCU2--485--計算機B

我的緩沖區(qū)為32字節(jié),一次可以發(fā)送的最大數(shù)據(jù)包是300字節(jié)!
只要兩個單片機搬運緩沖區(qū)數(shù)據(jù)的速度大于對方(計算機)發(fā)送的速度,就可以保證不出錯的~~~~~~~~~
現(xiàn)在我肯定我的程序搬運緩沖區(qū)數(shù)據(jù)的速度大于數(shù)據(jù)進入緩沖區(qū)的速度,還設(shè)置了一些標志結(jié)構(gòu)來保證數(shù)據(jù)處理順序的正確理論上是不管發(fā)多少字節(jié)連續(xù)不斷的發(fā)是不會出錯的,但是數(shù)據(jù)還是會出錯~~,我的232通訊距離大約有6M ~~~現(xiàn)在我懷疑是發(fā)送端(計算機)的發(fā)送程序有問題了,我用的是串口調(diào)試助手來發(fā)送數(shù)據(jù)的~~現(xiàn)在我打算自己用VB寫一個發(fā)送和接受程序?

13樓: >>參與討論
wkman
有個計算公式。
 
14樓: >>參與討論
yewuyi
串口助手應(yīng)該沒有問題
很多人都用的,猜測會不會是MCU1《——》MCU2之間有問題。

15樓: >>參與討論
農(nóng)民講習(xí)所
理論上只要MCU的RAM足夠大就可以
串口中斷的數(shù)據(jù)直接進入并口發(fā)送的隊列,該隊列足夠大就可以。300字節(jié)連續(xù)發(fā)送,估計只要500左右就可以。

一定不要用數(shù)組概念,死等300數(shù)據(jù)完再處理,那樣做太傻。

16樓: >>參與討論
西安周公
多余緩沖!MAX202 + 75176
 
17樓: >>參與討論
zhang_lj
MCU1---MCU2通訊
1、是不是用p1口傳送的? 而且 是一對多? 傳送完畢注意p1口拉高。
2、問題應(yīng)該沒有出在晶振上,可以考慮換一個晶振,我懷疑問題出在1對5傳輸?shù)臅r序上了,可以考慮只接一組,測試看看

18樓: >>參與討論
Analog921
謝謝各位的熱心~
回去試一試各位的建議
謝謝~

19樓: >>參與討論
hotpower
當然FIFO好了~~~
 
20樓: >>參與討論
mcuatmel
最好采用中斷方式
問題這樣試試:
1、每兩個字節(jié)間加一點延時試試
  你的單片機按19200的速度通訊的話每傳一個字節(jié)大約用520uS(方式1),那么在標準51內(nèi)核下,約可執(zhí)行192條語句,用這么長的時間/語句是否可以完成MCU1接收到MCU2發(fā)送全過程,中間是否還有別的任務(wù),這得要計算一下才行。
2、最好采用中斷的方式
  MCU1中斷接收,傳給MCU2,MCU2也中斷接收MCU1發(fā)來的數(shù)據(jù),然后再中斷方式發(fā)出,這樣將工作盡可能多的交給硬件來做,可能會給你盈得更多時間。


21樓: >>參與討論
yuands
加校驗
 
22樓: >>參與討論
yuands
加校驗,錯了重發(fā)
 
23樓: >>參與討論
emailli
建議你300一下多發(fā)幾次看看
我倒是覺得程序可能有點小問題

你把你的程序發(fā)送300個字節(jié)一下試試看,反復(fù)發(fā)他幾百次

如果一直不出誤碼,那就有可能是你的停止位需要增加以點點了

還有,你的發(fā)送也許不出問題,但是電腦那邊不一定可以保證百分百的不出錯哦

現(xiàn)在我的電腦就串口偏移了。我的串口1就收數(shù)據(jù)不對,但是他發(fā)出來的數(shù)據(jù)我的單片機可以收到無誤。

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
初學(xué)想請教大家個關(guān)于I2C總線讀寫程序的問題
請問能讀SD/CF/MMC/USB,的讀卡器芯片有哪些.
有沒有有兩個串口的51系列的單片機
at24c256,at24c512分別多少錢?
求個鍵盤掃描程序,能取按鍵按下跟按鍵抬起兩種狀態(tài)
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入


Copyright © 1998-2006 www.udpf.com.cn 浙ICP證030469號