紅外對管的工作原理就是利用光電管受光照和不受光照的狀態差別來區分是否受遮擋,有光照即無遮擋時,光電管處于導通態,被遮擋則無光照,光電管則處于截止態.要兩組紅外對管,根據哪路先被遮斷來判斷方向即可.長的距離需要給發射管加載波.“一般是40KHz” 接收管端做放大和鎖相環.“鎖40KHz頻率”
當接收到紅外發射管的信號時鎖相環輸出高.人擋住輸出低.或者反過來.
- /*-----------------------------------------------
- 名稱:外部中斷0電平觸發
- 內容:通過中斷接口P3.2連接的紅外對管接收頭
- ------------------------------------------------*/
- #include<reg52.h> //包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義
- /*------------------------------------------------
- 主程序
- ------------------------------------------------*/
- unsigned int count=0;
- main()
- {
-
- EA=1; //全局中斷開
- EX0=1; //外部中斷0開
- IT0=0; //電平觸發
- while(1)
- {
- //在此添加其他程序
- }
- }
- /*------------------------------------------------
- 外部中斷程序
- ------------------------------------------------*/
- void ISR_Key(void) interrupt 0 using 1
- {
- count++; //進入中斷程序執行程序, 紅外對管收到信號一次變量加1
- //此時可以通過 EA=0指令暫時關掉中斷
-
- }
復制代碼 |