作者Petrucci99 (拉拉拉)
看板ASM
標題Re: [問題] RS232訊號問題
時間Mon Jul 2 12:59:33 2012
Wolf版大
小弟用的是信邦的W78E54C,看了一下spec他說他的
P1~P3的sink current是4mA(min)~12mA(MAX)
而我的狀況的電線長度的話總長有超過5M,不過有刻意網狀連結
所以等校電纜長度最長大概是1.5M
另外Wolf兄你畫的圖也是把Tx跟Rx短路在一起再去連結其他裝置嗎?
我把我的狀況畫的詳細一點好了
主機
Tx┐ 45個子機,一個主機
├──┬───┬───┬....................┐
Rx┘ │ │ │ │
┌┴┐ ┌┴┐ ┌┴┐ ┌┴┐
Tx Rx Tx Rx Tx Rx Tx Rx
子機 子機 子機 子機
這樣的狀況下要怎麼改電路會比較有機會呢?
現在做的東西正常的情況下都是主機送訊號控子機
不過有幾個特殊狀況子機必須回傳值給主機
所以才會這樣接,以達到雙向傳輸
10機測試來回傳送資料動作都正常
但是全組起來就掛了
今天也試了電晶體1815的傳輸測試,想了一個辦法模擬全部子機都加上電晶體的狀況
結果雖然比較好,但是很不穩定(之前是完全沒反應).有時有反應有時沒有
資料本身也會送錯.
另外我不需要很快的傳輸速度,我把速度降為4.8K會不會比較好一點呢?
天啊花了好多時間把程式部分克服,沒想到最後45個串起來結果還是掛點.......好失落
不知道各位前輩評估我這種狀況還有沒有救.....真的是飯都吃不下了.....Orz
感謝感謝
※ 引述《WolfLord (呆呆小狼)》之銘言:
: VCC--^^^^---+---+--------+---------.....---+
: 1K RX--+ | | |
: 主機 | | |
: TX-----]---+----]-----+----....---]---+-^^^^--VCC
: | | | | | | 1K
: 子機 TX RX TX RX TX RX
: 這樣接,ATMEL的CPU或FANOUT SINK有5mA以上的CPU,並且電線不要超過5M,
: 速度9600BPS以下應該可以接超過60組吧。
: (如果是INTEL那種原型8051 FANOUT SINK只有1mA的話電阻要改成5.1K
: 電線總長度不要超過1M,1M內你拼命塞CPU應該也可以超過60個吧。)
: 要再複雜就是類比計算的天下了,怎麼做要看你的線路需求了。
: ※ 引述《Petrucci99 (拉拉拉)》之銘言:
: : 今天做了一下實驗,兩機對傳可以動作
: : 不過要一次把45組全都rework還是有點害怕,怕還是有問題
: : 想請教一下,像8051這樣的RS232訊號最少要多少電流才推得動?
: : 今天google了好久,都找不到一個比較肯定的答案Orz
: : 目前的電路大概是這樣
: : 4.7K
: : GND─^^^^┐
: : ┌┴─Rx子機
: : │
: : 5V----D 4.7K
: : │ ┌^^^^─5V Tx的電流由主機發出分給45個子機
: : └─┴──────────────────────────Tx主機
: : 現在有點怕經過電晶體放大後的電流還是太小無法推動RS232
: : 因為以前也沒去思考過推動RS232要多少電流.所以想請教一
: : 下版上的先進,這樣理論上是否可行?
: : 感謝^^
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 175.181.182.157
1F:推 WolfLord:我的作法是R T 分開兩條現喔~ 您可能會錯意了,你要混合 07/02 18:04
2F:→ WolfLord:的話,要變成起頭端跟末端各自PULL一個1K歐姆電阻。 07/02 18:05
3F:→ WolfLord:如果是網狀分佈,你要把1K分散到各NOD。如果是46個CPU 07/02 18:06
4F:→ WolfLord:每個CPU端就都要PULL33K,不過老實說,超過4.7K抗噪能力 07/02 18:08
5F:→ WolfLord:就不太好了,你可會需要LINE DRIVER做介面了 07/02 18:09
6F:→ WolfLord:修正第二行....1K歐姆正確為2K歐姆 07/02 18:10