線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1497
推到 Plurk!
推到 Facebook!

PC用485與51的多機通信

缺席
jennming
一般會員


發表:5
回覆:8
積分:2
註冊:2005-05-03

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-08-12 19:23:20 IP:59.104.xxx.xxx 未訂閱
pc-->rs232to485--> 485-->8051 └→485-->8051 └→485-->8051 我想在pc端用vb寫程式,經由485線控制及讀取8051 雖然485線可以連接多台,但同時只能一台發訊號 我是用輪詢方式,由pc發送8051的id,由正確的id回訊號 但是這樣好像太浪費時間,有沒有比較快的方法
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-08-12 20:08:47 IP:211.74.xxx.xxx 未訂閱
引言: 我想在pc端用vb寫程式,經由485線控制及讀取8051 雖然485線可以連接多台,但同時只能一台發訊號 我是用輪詢方式,由pc發送8051的id,由正確的id回訊號 但是這樣好像太浪費時間,有沒有比較快的方法
你對浪費時間的定義是怎樣? 你要的反應速度是多少? 485 的傳輸不夠嗎?
jennming
一般會員


發表:5
回覆:8
積分:2
註冊:2005-05-03

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-08-13 07:13:12 IP:59.104.xxx.xxx 未訂閱
假設與1台8051來回傳送要100mS 論詢完100台 則要浪費10S, 剛好這次資料又LOSS掉,則要等20S 才能知道這台8051的情況 想問看看有沒有比較好的通訊方法 或是這方面的資料要去那找?
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-08-13 08:14:24 IP:211.74.xxx.xxx 未訂閱
引言: 假設與1台8051來回傳送要100mS 論詢完100台 則要浪費10S,
如果以理想狀況去算它。 以9600 的速度 100ms 傳送了 960bit 大約 96Byte 的資料。 如果以 115200 的速度. 傳了 11520bit 大約 1.152KByte 的資料。 485 的速度,我記得可以操到 10M 的。不知道你的資料是不是真的多到 每秒 1.152K. 再者。你又想 100台全串在同一線。規格上可行。 可是實際上串32台的元件較普遍。 所以很多產品都只看到串32台級的元件。 所以再覺得 速度不夠的同時。我們可以把心分成三串。 用你的算法。10秒傳完。我就變成三秒傳完了。 而我再把速度加快十倍。就成了 300ms 傳完了。 9600->115200不止十倍。 所以。。。。。。。。。。。。。
jennming
一般會員


發表:5
回覆:8
積分:2
註冊:2005-05-03

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-08-13 17:32:26 IP:59.104.xxx.xxx 未訂閱
我用9600,傳10byte 回10byte 最快只能110ms 調100ms就接收到亂碼了 我是想問有沒有更好的通訊方法, 可以傳最小的量,獲得更好的結果
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-08-13 20:30:49 IP:211.74.xxx.xxx 未訂閱
引言: 我用9600,傳10byte 回10byte 最快只能110ms 調100ms就接收到亂碼了 我是想問有沒有更好的通訊方法, 可以傳最小的量,獲得更好的結果
1.什麼叫調 100ms????? 2.不是跟你說可以調高傳輸速度了嗎?
jennming
一般會員


發表:5
回覆:8
積分:2
註冊:2005-05-03

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-08-14 09:11:51 IP:59.104.xxx.xxx 未訂閱
我是想問有沒有更好的通訊方法, 可以傳最小的量,獲得更好的結果 而不是調高傳輸速率, 在同樣的速率下有沒有更好的通訊方法
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-08-14 10:29:27 IP:211.74.xxx.xxx 未訂閱
引言: 我是想問有沒有更好的通訊方法, 可以傳最小的量,獲得更好的結果 而不是調高傳輸速率, 在同樣的速率下有沒有更好的通訊方法
什麼叫 100ms??? 回答我問你的吧。 可能你的做法根本就錯了。才會有這種問題。
jennming
一般會員


發表:5
回覆:8
積分:2
註冊:2005-05-03

發送簡訊給我
#9 引用回覆 回覆 發表時間:2005-08-14 17:06:52 IP:59.104.xxx.xxx 未訂閱
我選定的通訊模式 9600,n,8,1 一端用pc-->rs232to485--> 485-->8051 pc傳10byte,8051收到後再回10byte 如果電腦端以每100ms 送一次10byte資料 那麼由8051收到的回應,就會是亂碼 只能以每110ms 送一次10byte 由8051收到的回應 才正確
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#10 引用回覆 回覆 發表時間:2005-08-14 19:11:38 IP:211.74.xxx.xxx 未訂閱
引言: pc傳10byte,8051收到後再回10byte 如果電腦端以每100ms 送一次10byte資料 那麼由8051收到的回應,就會是亂碼 只能以每110ms 送一次10byte 由8051收到的回應 才正確
在 windows 下。很難確定你的傳送是 100ms 一次或 110ms 一次。 這個請自行探討 timer 這個東西。 至於你說的。如果有示波器。就去量看看 看看 100ms 跟 110ms 兩個是不是都有把資料由 Tx 送出。 而資料有沒有正確。 再來。你可以去檢視你 51 的接收中斷是否正確。 這個部份。我不認為跟 485 會有什麼問題。 問題可能出在你的51寫法。 以及 PC 端的問題。 請詳細描述。 否則把程式丟上來。 請阿正幫你看。我不看超過五行的程式。^_^

版主


發表:261
回覆:2302
積分:1667
註冊:2005-01-04

發送簡訊給我
#11 引用回覆 回覆 發表時間:2005-08-15 01:46:01 IP:220.134.xxx.xxx 未訂閱
這位先生...RS485有搞懂了嗎?...基本上他跟232一樣只是位準不一樣.... so...找書把它弄懂....應該沒有什麼問題才對.
------
-------------------------------------------------------------------------
走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!?
系統時間:2024-07-01 12:04:19
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!