您的位置:首頁>數碼>正文

案例分享:單片機紅外控制發射器設計

功能簡介

遙控操作的不同, 遙控發射器通過對紅外光發射頻率的控制來區別不同的操作。 遙控接收器通過對紅外光接收頻率的識別, 判斷出控制操作, 來完成整個紅外遙控發射、接收過程。

單片機紅外遙控發射器設計原理

單片機紅外遙控發射器主要有單片機、行列式鍵盤、低功耗空閒方式控制電路、紅外管發射電路以及單片機的一些電源、重定、震盪子電路組成。 單片機不工作時一直處於低功耗狀態, 採用了空閒節電工作方式。 當遙控器的某一按鍵被按下以後, 外部中斷1產生中斷, 喚醒單片機進入工作狀態,

查詢鍵盤按下的是哪一個按鍵, 當確認按鍵後, 控制軟體啟動計時器T0、T1, T1作為發射時間控制器, T0作為紅外線發射頻率控制器, T0定時溢出時中斷程式使紅外管介面電平反轉一次, 寫入計時器的初值不同, 在輸出埠就得到不同的發射頻率。 T1定時溢出時中斷程式關閉關閉T0計時器, 停止紅外線發射

單片機紅外遙控接收器設計原理

單片機紅外遙控接收器主要有單片機、紅外遙控接收電路、狀態指示電路、控制電路以及單片機的一些週邊電路組成。 利用單片機中的T0作為紅外脈衝計數器, T1作為計數時間控制器。 當電路中紅外接收管接收到第一個紅外脈衝時, 外部中斷1被觸發, 啟動計數器T0和計時器T1。 定時溢出,

中斷程式關閉計數器T0, 讀入計數值並進行判斷, 確定操作物件(遙控按鍵)對其進行反轉操作, 控制電路對所控制的負載進行開或關[11]。 還可對接收電路實行上鎖功能, 對控制電路上鎖後, 遙控器不能對控制電路實施遙控功能。

電路圖

紅外發射電路圖:


紅外接收電路圖:

程式(組合語言)

紅外遙控發射來源程式清單:

K0 BIT P1.0

K1 BIT P1.1

K2 BIT P1.2

K3 BIT P1.3

K4 BIT P1.4

K5 BIT P1.5

K6 BIT P1.6

K7 BIT P1.7

BZ BIT 07H

K0H EQU #0FEH

K1H EQU #0F9H

K1L EQU #7AH

K2H EQU #0FBH

K2L EQU #0AAH

K3H EQU #0FCH

K3L EQU #0BFH

K4H EQU #0FDH

K4L EQU #65H

K5H EQU #0FDH

K5L EQU #0D4L

K6H EQU #0FEH

K6L EQU #24H

K7H EQU #0FEH

K7L EQU #5FH

ORG 0000H

AJMP START

ORG 000BH

AJMP INTT0

ORG 0013H

AJMP INT1

ORG 001BH

AJMP INTT1

ORG 0030H

START:MOV P1, #0FFH

MOV P3, #0FFH

MOV TMOD, #11H

SETB EX1

CLR IT1

SETB EA

XH: ORL PCON, #01H

JB K0, D01

ACALL DL1

JB K0, D01

JNB K0, $

ACALL SETT1

MOV R1, K0H

MOV R2, K0L

ACALL SETT0

JNB BZ, $

D01:JB K1, D02

ACALL DL1

JB K1, D02

JNB K1, $

ACALL SETT1

MOV R1, K1H

MOV R2, K1L

ACALL SETT0

JNB BZ, $

D02:JB K2, D03

ACALL DL1

JB K2, D03

JNB K2, $

ACALL SETT1

MOV R1, K2H

MOV R2, K2L

ACALL SETT0

JNB BZ, $

D03:JB K3, D04

ACALL DL1

JB K3, D04

JNB K3, $

ACALL SETT1

MOV R1, K3H

MOV R2, K3L

ACALL SETT0

JNB BZ, $

D04:JB K4, D05

ACALL DL1

JB K4, D05

JNB K4, $

ACALL SETT1

MOV R1, K4H

MOV R2, K4L

ACALL SETT0

JNB BZ, $

D05:JB K5, D06

ACALL DL1

JB K5, D06

JNB K5, $

ACALL SETT1

MOV R1, K5H

MOV R2, K5L

ACALL SETT0

JNB BZ, $

D06:JB K6, D07

ACALL DL1

JB K6, D07

JNB K6, $

ACALL SETT1

MOV R1, K6H

MOV R2, K6L

ACALL SETT0

JNB BZ, $

D07:JB K7, D08

ACALL DL1

JB K7, D08

JNB K7, $

ACALL SETT1

MOV R1, K7H

MOV R2, K7L

ACALL SETT0

JNB BZ, $

D08:AJMP XH

DL1:MOV R4, #0CH

DL2:MOV R5, #0FFH

DL3:DJNZ R5, DL3

DJNZ R4, DL2

RET

INTT0:CPL P3.4

MOV A, R1

MOV TH0, A

MOV A, R2

MOV TL0, A

RETI

INTT1:CLR TR0

CLR ET0

CLR TR0

CLR TR1

CLR ET1

SETB BZ

SETB P3.4

RETI

SETT1:MOV TH1, #3CH

MOV TL1, #0B0H

SETB TR1

SETB ET1

CLR BZ

RET

SETT0:MOV A, R1

MOV TH0, A

MOV A, R2

MOV TL0, A

SETB TR0

SETB ET0

RET

END

紅外遙控接收來源程式:

X0 EQU #15D

X1 EQU #30D

X2 EQU #45D

X3 EQU #60D

X4 EQU #75D

X5 EQU #90D

X6 EQU #105D

X7 EQU #120D

FZ EQU #5D

SW BIT P3.2

BZ BIT 07H

ORG 0000H

AJMP START

ORG 0013H

AJMP INT1

ORG 001BH

AJMP INTT1

ORG 0030H

START:MOV P1, #0FFH

MOV P3, #0FFH

MOV SP, #60H

CLR IT1

SETB EX1

MOV TMOD, #15H

SETB EA

XH: NOP

AJMP XH

INT1:CLR EX1

MOV TH1, #3CH

MOV TL1, #0B0H

SETB TR1

SETB ET1

MOV TH0, #0H

MOV TL0, #0H

SETB TR0

RETI

INTT1:CLR TR0

MOV A, TL0

MOV B, X0

JNB SW, D09

ACALL JSPD

JB BZ, D01

CPL P1.0

D01:MOV B, X1

ACALL JSPD

JB BZ, D02

CPL P1.1

D02:MOV B, X2

ACALL JSPD

JB BZ, D03

CPL P1.2

D03:MOV B, X3

ACALL JSPD

JB BZ, D04

CPL P1.3

D04:MOV B, X4

ACALL JSPD

JB BZ, D05

CPL P1.4

D05:MOV B, X5

ACALL JSPD

JB BZ, D06

CPL P1.5

D06:MOV B, X6

ACALL JSPD

JB BZ, D07

CPL P1.6

D07:MOV B, X7

ACALL JSPD

JB BZ, D09

CPL P1.7

D08:SETB EX1

RETI

JSPD:PUSH ACC

CLR BZ

CJNE A, B, JSPD1

AJMP JSPD5

JSPD1:JC JSPD2

SUBB A, R2

AJMP JSPD3

JSPD2:MOV R1, B

MOV B, A

MOV A, R1

CLR C

SUBB A, B

JSPD3:CJNE A, FZ, JSPD4

AJMP JSPD5

JSPD4:JC, JSPD5

SETB BZ

POP ACC

RET

JSPD5:CLR BZ

POP ACC

RET

END

本文素材來自電子發燒友論壇

單片機應用設計200例(上冊) ¥53.6 購買

精選單片機設計與製作30例 《無線電》編輯部 人民郵電出版社 9787115323118 ¥39.6 購買

Next Article
喜欢就按个赞吧!!!
点击关闭提示