全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2393
推到 Plurk!
推到 Facebook!

如何讓電腦得知外部所接的彈跳開關被觸發

答題得分者是:ScottWang
shchen
一般會員


發表:12
回覆:26
積分:7
註冊:2003-08-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2010-06-29 00:43:32 IP:202.173.xxx.xxx 訂閱
我熟悉軟體RS232通訊程式設計,現在想要實現一個簡單的問題,有一個彈跳開關,我希望能夠讓電腦得知這個開關被按下及放開,我想要在電腦程式內實現與外部開關觸發時進行計數的計數程式.
請問熟悉電子硬體的先輩們解答一下.
我所想的是能不能使用RS232 轉TTL ,TTL可以編及解碼,但我傳回電腦RS232的不是文字,而是一個開關的0或1的電壓變化.
handystudio
高階會員


發表:1
回覆:81
積分:106
註冊:2005-03-26

發送簡訊給我
#2 引用回覆 回覆 發表時間:2010-06-29 17:28:57 IP:202.39.xxx.xxx 訂閱
RS232 port 的 RI,CD,DSR,CTS 腳位可以當INPUT PIN.
===================引 用 shchen 文 章===================
我熟悉軟體RS232通訊程式設計,現在想要實現一個簡單的問題,有一個彈跳開關,我希望能夠讓電腦得知這個開關被按下及放開,我想要在電腦程式內實現與外部開關觸發時進行計數的計數程式.
請問熟悉電子硬體的先輩們解答一下.
我所想的是能不能使用RS232 轉TTL ,TTL可以編及解碼,但我傳回電腦RS232的不是文字,而是一個開關的0或1的電壓變化.
------
歡迎光臨 輕巧工作室
網站 http://www.handystudio.tw
控制電路板客製設計、製作交貨
8051專題製作/專題客製
shchen
一般會員


發表:12
回覆:26
積分:7
註冊:2003-08-13

發送簡訊給我
#3 引用回覆 回覆 發表時間:2010-06-30 19:53:23 IP:202.173.xxx.xxx 訂閱
我查了DSR是第6腳,CTS是第7腳,請問這兩支腳我要INPUT 什麼信號? 是+5V嗎?
===================引 用 handystudio 文 章===================
RS232 port 的 RI,CD,DSR,CTS 腳位可以當INPUT PIN.

ScottWang
版主


發表:32
回覆:486
積分:688
註冊:2009-04-27

發送簡訊給我
#4 引用回覆 回覆 發表時間:2010-07-06 19:05:36 IP:218.161.xxx.xxx 訂閱

RS232一般沒有這樣用,若你要用的話,要注意外部開關的bounce,
此bounce可以用硬體或軟體來處理.

1. 硬體debounce -- RC延遲約40mS --> 74HC14 --> Rs232由DSR或CTS讀入,再去做判斷.

2. 軟體debounce -- (a) Rs232由DSR或CTS讀入,延遲40mS,再回(a)做讀取動作,再去做判斷,

上面只是一個概述.
shchen
一般會員


發表:12
回覆:26
積分:7
註冊:2003-08-13

發送簡訊給我
#5 引用回覆 回覆 發表時間:2010-07-15 21:32:44 IP:202.173.xxx.xxx 訂閱
感謝回覆,讓此問題有了入門的開端,我再次研究後,還是有個不解的問題,我要目軟體來debounce,而你說的(a),究竟是什麼?
假設我的開關1隻腳接CTS後,開關的另一隻腳該接什麼呢??是接DSR嗎?或是RS232的Ground?
===================引 用 ScottWang 文 章===================

RS232一般沒有這樣用,若你要用的話,要注意外部開關的bounce,
此bounce可以用硬體或軟體來處理.

1. 硬體debounce -- RC延遲約40mS --> 74HC14 --> Rs232由DSR或CTS讀入,再去做判斷.

2. 軟體debounce -- (a) Rs232由DSR或CTS讀入,延遲40mS,再回(a)做讀取動作,再去做判斷,

上面只是一個概述.
ScottWang
版主


發表:32
回覆:486
積分:688
註冊:2009-04-27

發送簡訊給我
#6 引用回覆 回覆 發表時間:2010-07-15 22:47:45 IP:59.115.xxx.xxx 訂閱
硬體debounce:你可以參考以下最後的圖,圖中輸入的部份,Push Sw1就是你要的外部開關要接的地方,而74HC14的輸出,74LS192就是你要接CTS的地方.
http://gcbbs.digitw.com/phpbb2/viewtopic.php?f=1&t=2181&p=10124&hilit=74hc14#p10124

你若要軟體debounce的話,只要接兩個零件,外部開關要接的也是接Push Sw1,電阻R1可以用10K~33K,中間接點則接到Rs232的CTS,軟體要去檢查CTS是否為Hi,delay 40mS,再檢查CTS(其它的電子零件都不要再接).

=================== 引 用 shchen 文 章===================
感謝回覆,讓此問題有了入門的開端,我再次研究後,還是有個不解的問題,我要目軟體來debounce,而你說的(a),究竟是什麼?
假設我的開關 1隻腳接CTS後,開關的另一隻腳該接什麼呢??是接DSR嗎?或是RS232的Ground?
編輯記錄
ScottWang 重新編輯於 2010-07-16 03:15:59, 註解 無‧
系統時間:2018-01-20 16:38:37
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!