Tieu Luan VDK Remote Control

12
LỜI NÓI ĐẦU Chuùng chaân thaønh caûm ôn Thaày Nguyeãn Ñöùc Thaønh vaø taäp theå lôùp Töï Ñoäng Hoùa 06 ñaõ giuùp ñôõ chuùng toâi hoaøn thaønh tieåu luaän naøy. 1/ 12

Transcript of Tieu Luan VDK Remote Control

Page 1: Tieu Luan VDK Remote Control

LỜI NÓI ĐẦU

Chuùng chaân thaønh caûm ôn Thaày Nguyeãn Ñöùc Thaønh vaø taäp theå lôùp Töï Ñoäng Hoùa 06 ñaõ giuùp ñôõ chuùng toâi hoaøn thaønh tieåu luaän naøy.

1/ 10

Page 2: Tieu Luan VDK Remote Control

MỤC LỤC

I. Giới thiệu về sóng IR (infrared) 2

II. Nguyên lý truyền sóng IR của Remote Tivi SONY 2

III. LƯU ĐỒ GIẢI THUẬT (1T = 500 600 us) 4

IV. Chương trình 5

V. Sơ đồ nguyên lý hoạt động của mạch 8

VI. Một số linh kiện chính trong mạch 8

VII. Tài liệu tham khảo 9

2/ 10

Page 3: Tieu Luan VDK Remote Control

I.Giới thiệu về sóng IR (Infrared)

Tia hồng ngoại là một dạng bức xạ năng lượng với tần số thấp hơn tần số mà mắt người có thể nhìn thấy, và thậm chí chúng ta cũng không nghe được.

Tia hồng ngoại thì không ảnh hưởng tới sức khỏe con người, nó được sử dụng rộng rãi trong lĩnh vực điều khiển từ xa (nhưng chỉ theo 1 hướng), ngoài ra cũng được sử dụng trong quân sự (nhìn trong ban đêm).

Tia cực tím thì ảnh hưởng tới con người (có thể gây ung thư da), tuy nhiên nó cũng có tác dụng diệt khuẩn và khử trùng được dùng nhiều trong y học.

Mắt người không nhìn thấy được tia hồng ngoại lẫn cực tím.

II. Nguyên lý truyền sóng IR của Remote Tivi SONYRemote Tivi của hãng SONY phát sóng mang có tần số 38Khz dạng sóng IR (InfraRed), phương thức truyền như sau:

Bao gồm 1 start bit và 12 bit dữ liệu (7 bit command và 5 bit address),

Mỗi bit truyền đi bao gồm 1 mức thấp và 1 mức cao,

Đối với bit 0 thì thời gian cho mức cao và thấp là bằng nhau và có tổng thời gian là 1200us.

Đối với bit 1 thì thời gian cho mức cao gấp đôi thời gian cho mức thấp và có tổng thời gian là 1800us,

Và Start bit có thời gian là 3T = 1800us

3/ 10

Page 4: Tieu Luan VDK Remote Control

Tuy nhiên trên thực tế sóng mang được truyền đi đảo lại (mức cao thành thấp và mức thấp thành cao) nhằm để tiết kiệm năng lượng tăng thời gian hoạt động của Remote

Giải thuật

[1] Cài đặt biến DATA = 0, INDEX = 8;

[2] Chờ đợi mức thấp được gởi từ Remote (mức bắt đầu cho tín hiệu start bit), khoảng thời gian này sẽ mất khoảng thời gian là 3T

[3] Chờ đợi tín hiệu lên mức cao (mức kết thúc tín hiệu start bit)

[4] Chờ đợi tín hiệu xuống mức thấp (bắt đầu kiểm tra dữ liệu từ Remote)

[5] Tạo delay từ 750 đến 950 micro giây

[6] Đo lường mức của tín hiệu

[7] Nếu tín hiệu là mức cao thì bit đó sẽ là zero, ta thực hiện các bước sau:

Cho bit C =0

Xoay phải có nhớ bit C cho biến DATA

Giảm INDEX đi một đơn vị

Kiểm tra INDEX, nếu INDEX=0 thì tới bước [9], nếu khác 0 thì tới bước [4]

[8] Nếu tín hiệu là mức thấp thì bit đó sẽ là mức 1, ta thực hiện các bước sau:

Cho bit C =1

Xoay phải có nhớ bit C cho biến DATA

Giảm INDEX đi một đơn vị

Kiểm tra bit C, nếu INDEX=0 thì tới bước [9], nếu khác 0 thì tới bước [3]

[9] Lúc này biến DATA chứa 8 bit và INDEX=0, so sánh và hiển thị kết quả

Delay 1 giây, và quay trở lại bước [1]

4/ 10

Page 5: Tieu Luan VDK Remote Control

III. LƯU ĐỒ GIẢI THUẬT (1T = 500 600 us)

5/ 10

Page 6: Tieu Luan VDK Remote Control

IV. Chương trình:irs bit p3.2

;---------------------------------------------------------------

org 00h

mov p1,#0

setb p3.2

mov 20h,#0h

;---------------------------------------------------------------

main: call delay2

call delay2

mov 20h,#0h

jmp scan

;---------------------------------------------------------------

main1: mov a,20h

cjne a,#01h,main2

cpl p1.7

call delay2

call delay2

call delay2

call delay2

jmp main

;---------------------------------------------------------------

main2: cjne a,#81h,main3

cpl p1.6

call delay2

call delay2

call delay2

call delay2

jmp main

;---------------------------------------------------------------

main3: cjne a,#01000001b,main4

cpl p1.5

call delay2

call delay2

call delay2

call delay2

jmp main

;---------------------------------------------------------------

main4: cjne a,#11000001b,main5

cpl p1.4

call delay2

6/ 10

Page 7: Tieu Luan VDK Remote Control

call delay2

call delay2

call delay2

jmp main

;---------------------------------------------------------------

main5: cjne a,#00100001b,main6

cpl p1.3

call delay2

call delay2

call delay2

call delay2

jmp main

;---------------------------------------------------------------

main6: cjne a,#10100001b,main7

cpl p1.2

call delay2

call delay2

call delay2

call delay2

jmp main

;---------------------------------------------------------------

main7: cjne a,#01100001b,main8

cpl p1.1

call delay2

call delay2

call delay2

call delay2

jmp main

;---------------------------------------------------------------

main8: cjne a,#11100001b,return

cpl p1.0

call delay2

call delay2

call delay2

call delay2

return: jmp main

;---------------------------------------------------------------

scan: mov 20h,#0h

mov r1, #8

jnb irs, $

call delay1

7/ 10

Page 8: Tieu Luan VDK Remote Control

call delay1

call delay1

call delay1

jnb irs,scan

jb irs, $

call delay1

call delay1

jb irs,scan

;---------------------------------------------------------------

logic10: jnb irs,$

logic11: jb irs,$

call delay1

jnb irs,logic1

jmp logic0

;---------------------------------------------------------------

logic1: setb C

call transfer

cjne a,#0,logic10

jmp main1

;---------------------------------------------------------------

transfer: mov a,20h

rlc a

mov 20h,a

dec r1

mov a,r1

ret

;---------------------------------------------------------------

logic0: clr C

call transfer

cjne a, #0,logic11

jmp main1

;---------------------------------------------------------------

delay1: mov r4,#1

jmp delay

;---------------------------------------------------------------

delay2: mov r4,#200

jmp delay

;---------------------------------------------------------------

delay: clr tf0

mov tmod, #01h

again: mov th0, #high (-750)

8/ 10

Page 9: Tieu Luan VDK Remote Control

mov tl0, #low(-750)

setb tr0

wait: jnb tf0,wait

clr tr0

clr tf0

djnz r4, again

ret

;---------------------------------------------------------------

End

V. Sơ đồ nguyên lý hoạt động của mạch:

VI. Một số linh kiện chính trong mạch:AT89C2051:

2Kbyte bộ nhớ chương trình (chu kỳ 1.000 lần đọc xóa dữ liệu)

Điện áp làm việc từ 2,7v đến 6v

Tần số hoạt độn từ 0 đến 24Mhz

2 mức khóa bộ nhớ chương trình

128 byte RAM nội

15 đường truy xuất IO

2 bộ timer/counter

6 nguồn ngắt

9/ 10

o u t 0

1 2 V D C

D 1 2

D I O D E 1 3

o u t 4

P1.

4

R 7R

U 4 L M 7 8 0 5 / TO

1

2

3V I N

GN

D V O U T

o u t 5

C 5C A P

V C C

1 2 V D C1 2 V D C

P1.

6

P 1 . 1

P 1 . 6

o u t 7

out2

J 8

C O N 2

12R 6

R

o u t 3

o u t 2

out0

D 6

D I O D E 1 3

C 2

C A P N P

S W 1

V C C

J 6 C O N 2

12

P 1 . 7

J 1 1 C O N 2

12

1 2 V D C

Data[1:8]

L S 8

R E L A Y D P D T

34

5

68

712

D 7

D I O D E 1 3

P1.

0

o u t 6

P 1 . 3

P 1 . 3P 1 . 4

L S 4

R E L A Y D P D T

34

5

68

712

R 5R

1 2 V D C

o u t 3

J 1 0

C O N 2

12

P 1 . 5

P 1 . 2

out1

R 1 0R

out3

Y 1

Z TA

P1[0:7]

D 5

D I O D E 1 3

P 1 . 1

P 1 . 5

D 1 0

D I O D E 1 3

C 1

C A P N P

1 2 V D C

D 1 7

D I O D E 1 3

J 3

C O N 2

12

o u t 6

U 2

U L N 2 8 0 3

1 0 9

12345678

1 81 71 61 51 41 31 21 1

C O M G N D

I N 1I N 2I N 3I N 4I N 5I N 6I N 7I N 8

O U T1O U T2O U T3O U T4O U T5O U T6O U T7O U T8

C 4C A P

D 1 1

D I O D E 1 3

out4

o u t 2

L S 2

R E L A Y D P D T

34

5

68

712

R 1 1R

P1.

2

L S 1

R E L A Y D P D T

34

5

68

712

1 2 V D CR 1R

out5

C 6C A P N P

1 2 V D C

J 7 C O N 2

12

1 2 V D C

o u t 4

P 1 . 7

P 1 . 2

D 1 6

D I O D E 1 3

L S 3

R E L A Y D P D T

34

5

68

712

out6

P1[

0:7]

R 3R E S I S TO R S I P 9

123456789

P 1 . 6

o u t 7

D 3

D I O D E 1 3

V C C

out7

D 1

L E D

P1.

5

V C C

R 8R

Data[1:8]

C 3C A P

L S 5

R E L A Y D P D T

34

5

68

712

J 2

C O N 3

123

o u t 1

P1.

1

P 1 . 0

P1.

3

D 1 4

D I O D E 1 3

L S 7

R E L A Y D P D T

34

5

68

712

R 9R

D 8

D I O D E 1 3

J 4 C O N 2

12

R 4R

<D o c > 0 1

R e m o te c o n tro l u s in g SO N Y TV

C u s t o m

1 1F rid a y , J u n e 1 3 , 2 0 0 8

Tit le

S ize D o c u m e n t N u m b e r R e v

D a t e : S h e e t o f

P 1 . 0 o u t 5

P 1 . 4 D 2

D I O D E 1 3

1 2 V D C1 2 V D C

D 1 3

D I O D E 1 3

D 1 5

D I O D E 1 3

J 5 C O N 2

12

U 1

A T8 9 C 2 0 5 1

1

1020

5

4

1 21 31 41 51 61 71 81 9

23

6

7891 1

R S T/ V P P

GN

DV

CCXTA L 1

XTA L 2

P 1 . 0 / A I N 0P 1 . 1 / A I N 1

P 1 . 2P 1 . 3P 1 . 4P 1 . 5P 1 . 6P 1 . 7

P 3 . 0 / R XDP 3 . 1 / TXD

P 3 . 2 / I N T0

P 3 . 3 / I N T1P 3 . 4 / T0P 3 . 5 / T1

P 3 . 7

D 9

D I O D E 1 3

P1.

7

L S 6

R E L A Y D P D T

34

5

68

712

D 4

D I O D E 1 3

o u t 1

o u t 0

R 2

R

J 9

C O N 2

12

Page 10: Tieu Luan VDK Remote Control

Giao tiếp nối tiếp không đồng bộ UART

Có khả năng kích led trực tiếp

Có chế độ hoạt động tiết kiệm năng lượng

ULN2803:

8 transistor mắc kiểu darlington và cực C để hở

Dòng ngõ ra 500mA

Điện áp cung cấp từ 5v đến 30v

VII. Tài liệu tham khảo

The 8051 microcontroller Scott Mackenzie

Hướng dẫn lập trình 8051 Tống Văn On

http://www.ustr.net/infrared/infrared1.shtml

10/ 10