紅外收發器設計 課程設計_第1頁
紅外收發器設計 課程設計_第2頁
紅外收發器設計 課程設計_第3頁
紅外收發器設計 課程設計_第4頁
紅外收發器設計 課程設計_第5頁
已閱讀5頁,還剩13頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、湖南文理學院課程設計報告課程名稱: 通信系統課程設計 專業班級: 通信工程12101班 學號18 學生姓名: 陸穎 指導教師: 王立 完成時間: 2015年 12 月4 日 報告成績: 評閱意見: 評閱教師 日期 湖南文理學院制目錄一、 概述 3二、設計目的及設計要求 32.1 設計目的:32.2 設計要求:3三、 紅外收發器硬件設計電路及描述 43.1 輸入信號 43.2 單片機簡介53.2.1 芯片內部結構53.2.2 芯片功能53.2.3 芯片復位 

2、63.3  紅外收發模塊 63.3.1 紅外接收硬件設計63.3.2 紅外發射硬件設計73.4 輸出顯示8四、紅外收發器軟件設計流程及描述 94.1 紅外發射電路主程序流程圖94.2 紅外接收電路主程序流程圖9五、源程序代碼105.1 發射模塊程序105.2 輸入信號的掃描程序125.3 紅外接收模塊程序135.4 輸出顯示程序14六、 紅外收發器的設計原理圖 156.1 紅外接收模塊電路圖156.2 紅外發射模塊電路圖16七

3、、課程設計體會 16參考文獻 18紅外收發器的設計一、 概述 簡單紅外收發器是在紅外遙控的基礎上,利用紅外線進行點對點的數據通信裝置。目前,其相應的軟件和硬件技術都已比較成熟。它是把紅外線作為載體的遙控方式。紅外遙控是一種無線、非接觸控制技術,具有結構簡單、制作方便、成本低廉、抗干擾能力強、信息傳輸可靠、易實現,同時,由于采用紅外線收發器件時,工作電壓低、功耗低、外圍電路簡單等優點,因此,被諸多電子設備,特別是家用電器廣泛采用,并越來越多的應用到計算機系統中。 系統要實現的功能:紅外發射器、紅外接收器,要實現遠距離(10米)的發射與接收。

4、60;紅外收發的特點是不影響周邊環境、不干擾其它電器設備。電路調試簡單,只要按給定電路連接無誤,一般不需任何調試即可投入工作;編解碼容易。 信息可以直接通過紅外光進行調制傳輸,例如,信息直接調制紅外光的強弱進行傳輸,也可以用紅外線產生一定頻率的載波,再用信息對載波進行調制,接收端去掉載波,取到信息。 二、設計目的及設計要求 2.1 設計目的: 訓練學生綜合運用己學課程的基本知識,獨立進行單片機應用技術開發工作,掌握單片機程序設計、調試,應用電路設計、分析及調試檢測。 2.2 設計要求: 1、 應用MCS-

5、51單片機設計簡單紅外收發器; 2、 選用紅外發射、紅外接收器,紅外發射、接收距離大于10M; 3、 硬件設計根據設計的任務選定合適的單片機,根據控制對象設計接口電路。設計的單元電路必須有工作原理,器件的作用,分析和計算過程; 4、 軟件設計根據電路工作過程,畫出軟件流程圖,根據流程圖編寫相應的程序,進行調試并打印程序清單; 5、 原理圖設計根據所確定的設計電路,利用Protel等有關工具軟件繪制電路原理圖、PCB板圖、提供元器件清單。 三、 紅外收發器硬件設計電路及描述 按照系統設計

6、的功能的要求,確定設計系統主要由發射模塊與接收模塊兩部分組成。 發送模塊先由輸入信號,以二進制信號的形式,傳送給單片機,然后單片機將待發送的二進制信號編碼調制為一系列的脈沖串信號,通過紅外發射管發射紅外信號。紅外接收模塊普遍采用價格便宜,性能可靠的一體化紅外接收頭接收紅外信號,它同時對信號進行放大、檢波、整形,得到TTL電平的編碼信號,再傳送給單片機,經單片機解碼并由數碼管顯示接收到的數據。  圖1:總體設計框圖 3.1 輸入信號 輸入信號要以二進制信號輸入,送給單片機,讓單片機進行識別。若輸入信號不是二進制的,需要進行信號的編碼解碼

7、轉換。 3.2 單片機簡介 單片機就是在一塊半導體硅片上集成了未處理器(CPU),存儲器(RAM,ROM,EPROM)和各種輸入、輸出接口(定時器/計數器,并行I/O口,串行口,A/D轉換器以及脈寬調制器PWM等),這樣一塊集成電路芯片具有一臺計算機的屬性。 MCS-51單片機的類型包含:基本型、增強型、低功耗型、專用型、超8位型、片內閃爍存儲器型。 MCS-51單片機的硬件結構:微處理器、數據存儲器、程序存儲器、4個8位并行I/O口、1個串行口、2個16位定時器/計數器、中斷系統、特殊功能寄存器。    

8、0;       圖2:AT89C2051 3.2.1 芯片內部結構 AT89C2051是一帶有2K字節閃速可編程可擦除只讀存儲器(EEPROM)的低電壓,高性能8位CMOS微型計算機。它采用ATMEL的高密非易失存儲技術制造并和工業標準MCS51指令集和引腳結構兼容。通過在單塊芯片上組合通用的CPLI和閃速存儲器,ATMEL AT89C2051是一強勁的微型計算機,它對許多嵌入式控制應用提供一定高度靈活和成本低的解決辦法。  3.2.2 芯片功能 AT8

9、9C2051提供以下標準功能:2K字節閃速存儲器,128字節RAM,15根I/O口,兩個16位定時器,一個五向量兩級中斷結構,一個全雙工串行口,一個精密模擬比較器以及兩種可選 的軟件節電工作方式。空閑方停止CPU工作但允許RAM、定時器/計數器、串行工作口和中斷系統繼續工作。掉電方式保存RAM內容但振蕩器停止工作并禁止有其它部件的工作到下一個硬件復位。 3.2.3 芯片復位 復位是使CPU和系統中的其他功能部件都處在一個確定的初始狀態, 并從這個狀態開始工作。無論是在單片機剛開始接上電源時, 還是斷電后或者發生故障后都要復位。89系列

10、單片機的復位信號是從RST引腳輸人到芯片的施密特觸發器中的。當系統處于正常工作狀態時, 且振蕩器穩定后, 如果RST引腳有一個高電平并維持2個機器周期(24個振蕩周期), 則CPU就可響應并且將系統復位。復位分為手動復位和上電復位。本設計系統采用的是手動復位, 當按下按鈕時, 即使人的動作很快, 也會使按鈕保持通達數十毫秒,所以, 手動復位能確保復位時間要求。 3.3  紅外收發模塊 3.3.1 紅外接收硬件設計 紅外接收電路主要由單片機、紅外接收頭和顯示部分組成,

11、發射端發射的紅外信號經過接受處理,傳給單片機。接收電路使用一體化的紅外接裝置,將發送的信號接收,放大、檢波、整形,并且經P1.0傳輸可以讓單片機識別的TTL信號,經單片機解碼由數碼管顯示。 HS0038一體化紅外接收頭,接收頻率為38kHz1kHz管腳依次為:如下圖3。連接時,在VCC與GND之間并入一個0.1uF的電容有助于改進信號質量。其可以用于編碼接收,也可以用于低碼率的數據通訊。其中,它的圓形面為紅外接收面,它與SE304紅外發射管的有效收發直射距離可達35M。不需要任何外接元件,就能完成從紅外線接收到輸出與TTL電平信號兼容的所有工作,而體積和普通的塑封三極管大小一樣,它適

12、合于各種紅外線遙控和紅外線數據傳輸,中心頻率38.0kHz。圖3:HS0038HS0038 信號電平: 38kHz 紅外發射接收到時:OUT低電平輸出 38kHz 紅外發射接收不到時:OUT高電平輸出3.3.2 紅外發射硬件設計 根據系統設計要求,紅外發送、接收距離10M,即要提高紅外線作用距離,那么就應該提高發射管的瞬時發射功率,降低其平均功率。而采用一定的占空比的脈沖發射是解決發射功率與作用距離的有效途徑。同時,加裝聚光透鏡,以改善其發射指向性能,提高作用距離。紅外光束編碼收發系統的有效作用距離是由饋送進發射LED的電流

13、峰值所決定的,電流平均值越小,其功率越高。改變R2的值,可以改變發射的距離。 公式(1)VCC為電路工作電壓,VF為管的工作電壓,IF為發射管的正向電流,PD為發射管的耗損功率。 SE304紅外發射管特性: 耗損功率:DP=100mW;   正向電流:IF=50mA;    反向電壓:VR=5V;圖4:紅外發射二極管電路簡圖3.4 輸出顯示 顯示電路,可以才有數碼管,得出接收到的數據。數碼管按段數分為七段數碼管和八段數碼管,八段數碼管比七段數碼管多一個發光二極管單元;按能顯示多少個“8

14、”可分為1位、2位、4位等等數碼管;  按發光二極管單元連接方式分為共陽極數碼管和共陰極數碼管。共陽數碼管是指將所有發光二極管的陽極接到一起形成公共陽極(COM)的數碼管。共陽數碼管在應用時應將公共極COM接到+5V,當某一字段發光二極管的陰極為低電平時,相應字段就點亮。當某一字段的陰極為高電平時,相應字段就不亮。共陰數碼管是指將所有發光二極管的陰極接到一起形成公共陰極(COM)的數碼管。共陰數碼管在應用時應將公共極COM接到地線GND上,當某一字段發光二極管的陽極為高電平時,相應字段就點亮。當某一字段的陽極為低電平時,相應字段就不亮。四、紅外收發器軟件設計流程及描述

15、60;4.1 紅外發射電路主程序流程圖 首先是初始化出入信號和紅外發射端口的參數值,然后讓單片機掃描檢測信號,如果有信號輸入就讓紅外發射管發射出去。圖5:發射主程序流程圖4.2 紅外接收電路主程序流程圖    首先初始化紅外接收端口,然后檢測是否接收紅外信號,如果接收到紅外信號就調用接收子程序,然后就通過數碼管顯示當前LED燈熄滅的狀態如此循環。圖6:紅外接收主程序流程圖五、源程序代碼 5.1 發射模塊程序  ORG 0000H AJMP START &#

16、160;         轉主程序                     ORG 001B  AJMP INT1            轉

17、定時器T1                     ORG 0030H START:             LCALL  SCAN       &#

18、160;   按鍵掃描                     JNB  KESY,START     判斷是否有鍵按下              &

19、#160;      CLR  KESY            右鍵按下,則清零                     MOV  B,A  

20、0;          鍵值送給B                     LCALL  RED_SEND      調用紅外子程序      

21、60;              AJMP  START          等待循環 RED_SEND:          MOV   TMOD,#20H    

22、;  定時器T1工作方式2                      MOV   TH1,#0E8H       MOV   TL1,#0E8H      標準38K脈沖

23、頻率                     MOV IE,#88H          允許T1中斷使能              

24、0;      SETB  TR1            啟動T1 SETB  P1.0           紅外發送管控制IO口 RED_END1:        &#

25、160; MOV A,B              從B中取數據                     MOV R4,#8        

26、    發送8位 MOV R5,#20           傳輸開始(同步幀),發送20                            

27、60;              個脈沖 LCALL DELAY1         調用一次子程序DELAY1,產生一個周期26us的脈沖 RED_END2:          RLC A   

28、60;            先發送字節的高位 JC RED_D             判斷是發送0還是1 MOV R5,#20          發送編碼0,先發送20個脈 沖寬度的低電平

29、0;LCALL DELAY2          調用一次子程序DELAY2,產生寬度26us 的低電平 MOV R5,#10           再發送10個脈沖               

30、0;     LCALL DELAY1 LIMP JIESHU           調轉判斷發送結束  RED_D:            MOV R5,#10        &#

31、160;   發送編碼1,先發送10個脈沖寬度的低電平 LCALL DELAY2 MOV R5,#10            在發送10個脈沖的高電平                    LCALL 

32、;DELAY1 JIESHU:             DJNZ R4,RED_SEND        發送8位未完,繼續                    

33、0;MOV R5,#10             8位傳輸結束,再發送10個脈沖寬度的低電平(結束幀) LCALL DELAY2                     RET DELAY1:  &#

34、160;          NOP                     0.5us                 

35、   MOV R6,#11              0.5us                     DJNZ R6,$      &#

36、160;        11x1us=11us                     CLR P1.0                1u

37、s                     MOV R6,#11              0.5us           

38、60;         DJNZ R6,$               11us DJNZ R5,DELAY1          判斷20個脈沖是否結束,1us      

39、;               RET                      1us DELAY2:         

40、0;  CLR P1.0                  0.5us;                    MOV R6,#24    

41、            0.5us                    DJNZ R6,$               

42、;  24us                    RET  5.2 輸入信號的掃描程序 SCAN:                MOV   P0

43、,#0FH         P0.0 P0.3作行輸入線                      MOV   P2,#00H          P2.0P2.3作列輸出

44、線MOV   A,P0                    CJNE   A,#0FH,SCAN_KEY 行線全為“1”,無輸入信號,                 

45、    STEB C                    RET C SCAN_KEY:       CLR  C           &

46、#160;     行線為非全“1”,有輸入信號,0® CY返回                    RET KEYN:              MOV P0,#0FH

47、0;                   MOV  A,P0                     CJNE A,#0FH,KEYN1   

48、0; 有信號,轉移KEYN1                    SETB  C               無信號,1 ®CY返回      &#

49、160;             RET KENY1:            LCALL DELAY           調用延時10ms,消除抖動      

50、              CJNE A,#0FH,KEYN      確認信號                    ANL A,#0FH   &#

51、160;                MOV B,A               保存P0低位狀態 MOV P0,#00H MOV P2,#0FH        

52、60;  行線、列線翻轉 MOV A,P2              讀輸入列線的的狀態 ANL A,#0FH ORL B,A               信號送B MOV DPTR;#KTAB &#

53、160;      DPTR指向表首地址 MOV R3,#0             計數器R3清零 KEYN2:MOV A,R3 MOVC A,A+DPTR        取輸入信號 CJNE A,B,NEXT   &

54、#160;     不符合繼續 MOV A,R3              信號®A CLR C                 0®CY已得到信號 RET N

55、EXT:              INC R3             信號加1 AJMP KEYN2         循環 KTAB:     D

56、B 0EEH,0EDH,0EBH,0E7H,0DEH,0DDH,0DBH,0D7H           DB 0BEH,0BDH,0BBH,0B7H,07EH,07DH,07BH,077H 5.3 紅外接收模塊程序                   ORG&

57、#160;   0000H                   AJMP   START                   ORG  &#

58、160; 001BH                   AJMP   INT1                   ORG    0030

59、H RECE:        MOV    R5,#8            接收8位                   JB  

60、0;  P1.0,$           等待同步幀,同步幀為低電平                  MOV    R7,#15          

61、 同步幀(低電平)到來后,延時 等待15個脈沖的時間                   LCALL  DELAY0           調用一次子程序DELAY0。產生 一個26 的延時    &#

62、160;              JB     P1.0,RECE        延時15個脈沖后,若P1.0=1,轉RECE重新檢測                &

63、#160; JNB    P1.0,$           延時15個脈沖后,若P1.0還是0,傳輸開始,再等編碼中的高電平 RECE_1:           MOV    R7, #15      

64、0;   編碼中的高電平到來后,延時 15個脈沖的時間                    LCALL  DELAY0JNB    P1.0,RE1         延時15個脈沖后,P1.0=0 轉RE1,

65、P1.0=1順序執行                   CLR    C                P1.0=1時應解碼為0,使標志C清0     

66、60;             RLC    A                把標志C=0移入寄存器A中,經8次移位到A的高位,跳過后續高電平          

67、60;        JB     P1.0, $        再跳過后續低電平                   JNB    P1.0,$&#

68、160;        轉接收下一位 RE1:          SETB   C              P1.0=0時應解碼為1,使標志C置1       

69、0;           RLC    A              把標志C=0移入寄存器A中                  

70、; JNB    P1.0,$ NEXT:             DJNZ   R5,RECE_1      8位未接收完,繼續                

71、;   RET DELAY0:           NOP                   0.5us             

72、;      MOV   R6,#24          0.5us                   DJNZ  R6,$      &

73、#160;     24us                   DJNZ  R7,DELAY0       每次1us            

74、60;      RET START:            JB    P1.0,$        等待接收數據 LCALL RECE           調

75、用發送程序                   MOV   A,R2           接收到的數據存到A中 AJMP  $         

76、60;    循環等待5.4 輸出顯示程序 DISPLAY:       MOV   DPTR,#TAB      DPTR指向顯示值表首地址                  MOV &#

77、160; A,R2           要顯示的低位值送A                  MOVC  A,A+DPTR      從表中取顯示值      

78、                MOV   P0,A           A值送數碼管各位                 

79、60;CLR   P2.6           低位位控制位清0                   SETB  P2.6          

80、0;低位位控制位值1                  MOV   A,R1           要顯示的高位值送A             

81、0;     MOVC  A,A+DPTR      從表中取顯示值                  MOV   P0,A           A值送數碼管各位           &

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論