標題: [原創]這個問題怎么解決 [打印本頁]
作者: jhb456 時間: 2009-5-14 15:06
標題: [原創]這個問題怎么解決
我現在正在設計家庭紅外報警系統,硬件電路已經完成了,現在就剩下程序編譯了。我的電路圖是這樣的:AT89C2051單片機,P1口接了6個紅外線發射管,P3口接了6個紅外線接收管。工作原理是:當紅外線接收管接到紅外線時為正常,否則就啟動報警。問題出現了:如果有人用紅外線發射器照著接收管,這個報警系統也是正常工作的,小偷就可以隨意行走了。這個問題如何解決呢?請大蝦們都來幫幫我吧!這個問題我想了很久也沒想出辦法來
未命名.jpg (115.29 KB, 下載次數: 180)
下載附件
2009-5-15 09:35 上傳
[此貼子已經被作者于2009-5-15 9:35:53編輯過]
作者: youxingzichan 時間: 2009-5-14 16:19
不要這樣用,可以直接用光耦,控制端接P1,輸出端接P3
作者: jhb456 時間: 2009-5-15 10:05
方法很好,但我想用程序解決這個問題。電路圖我弄上了,哪位大蝦在幫幫我
作者: zqjydq 時間: 2009-5-18 10:11
首先要說的是,我不是大蝦,單片機我剛學,算還沒入門吧。我說的建議可以采用就采用,不能采用請別拍磚。
首先要對P1口的輸出信號進行調制或者加密。然后對P3口的信號進行解調。(簡單一點可以對P3口的脈沖進行計數,一定的時間內多少個脈沖為正常,否則報警。)這樣破解的難度就大多了。
作者: jhb456 時間: 2009-5-22 14:55
你說的這個方法正好就是我想用的,不過本人是個大菜鳥,程序代碼我不會寫,希望大蝦們花一些時間幫我寫下這個方法的程序代碼(匯編語言)我非常感激。每天我在線等同時我也會自己試著編寫。謝謝你們的幫忙!!
作者: kakas 時間: 2010-7-25 00:41
應該可以用變頻實現,既先把p1口置1,接著檢查p3口,如果不一致,報警,如果一致,接著熄滅p1口,再檢查p3口,如果不一致報警,如果一致再把p3口置1,如此循環。我還是學生,所以對硬件還不太了解,如果你把它們對應關系告訴我,既p1口置1時,p3口應該檢測到高電平還是低電平時應該報警。我應該能用匯編寫出來。希望能幫到你
作者: aphar 時間: 2010-8-29 20:11
很好,ls們的想法也很好,可行,頂一個
作者: hfbjjs 時間: 2011-1-12 21:26
上面已經有朋友說到點子上了!----使用自己特定的編碼,而不僅僅是發射紅外線!
接收方只有接到自己的特定編碼才有效-------否則就是有"情況"了!
最簡單的就是隔多少時間發射多少時間--停止多少時間,嚴格把關接收到的這個發射時間和間隔時間.相符的就是平安!
提示:自然界中有許多包含紅外線的光源,例如太陽,節能燈,白熾燈.....如果你僅僅認為接到紅外線....那就不行了.隨隨便便就會接收到紅外線的-------但是不是受你控制的紅外線!你沒有用處!
不要依賴別人幫助你寫程序,自己可以邊學習邊請教他人.----論壇那么多熱心人,還有那么好的學習板供應,為什么不自己動手呢?只有你動手了,知識才會牢牢記憶住啊!
僅供參考!
歡迎光臨 (http://www.raoushi.com/bbs/) |
Powered by Discuz! X3.1 |