modun remote

24
 PT2262/PT2272 Encoding/Decoding With PIC C PT2262/PT2272 Mã hóa/Gii mã Vi PIC C

Upload: tranhoaitam

Post on 08-Apr-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 1/24

PT2262/PT2272 Encoding/Decoding With PIC C

PT2262/PT2272 Mã hóa/Giải mã Với PIC C

Page 2: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 2/24

I. Giới thiệu I.1. Tổng quan về PT2262/2272

o PT2262/2272 là sản phẩm của Princeton Technology sử dụng trong các ứngdụng điều khiển từ xa.

o Cách thức mã hóa cũng như giải mã của PT2262/2272 đã được mô tả rất chitrong datasheet của nhà sản xuất.

Cặp chip thu phát PT2262/2272 I.2. Ứng dụng o Remote phát sử dụng PT2262 với IR hoặc RF.

Remote RF sử dụng PT2262o Ứng dụng điều khiển mạch từ xa

Page 3: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 3/24

Mạch điều khiển sử dụng PT2272 I.3. Mã hóa/Giải mã PT2262/2272o Trong 1 số ứng dụng thì việc sử dụng software để thực hiện việc mã hóa/gisẽ giúp giảm chi phí và đơn giản hóa thiết kế rất nhiều.

o Để thực hiện việc mã hóa/giải mã thì trước tiên cần phải nắm vững cách thhóa/giải mã của PT2262/2272 để đưa ra giải thuật thực hiện đơn giản và hiệu nhất.

Sử dụng PT2262 mã hóa phím điều khiển

Page 4: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 4/24

Sử dụng PT2272 giải mã phím điều khiểno Sử dụng vi điều khiển PIC và CCS C là 1 cách hiện thực mã hóa/giải mã, đơgiản vì chương trình viết bằng C, dễ dàng sử dụng lại như 1 module cho các ứdụng khác.

Sử dụng MCU mã hóa/giải mã thay cho PT2262/2272

II. Mã hóa với PT2262

II.1. Biểu diễn Bit code mã hóaCơ bản PT2262 sử dụng mỗi Bit gồm 3 trạng thái 0,1 và f. Mỗi trạng thá

1 kiểu mã hóa Bit code khác nhau. Mỗi Bit code mã hóa chứa trong 32 chu kìsố mã hóa của OSC(32 α).

Page 5: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 5/24

Waveform của các Bit code II.2. Bit đồng bộ(Synchronous Bit)

Là Bit được thêm vào trong 1 khung truyền để giúp đồng bộ hóa quá trìnhhóa/giải mã. Độ dài của Sync Bit là bằng 4 lần độ dài 1 bit địa chỉ/dữ liệu tứα.

Waveform của Sync Bit II.3. Từ mã(Code Word)

Cấu trúc việc truyền các Bit địa chỉ/ dữ liệu và Bit đồng bộ của PT2262 đxác định như sau:

Cấu trúc 1 từ mã 9 bits địa chỉ/3 bits dữ liệuVới dòng PT2262 sử dụng 6 bits địa chỉ và 6 bits dữ liệu thì từ mã này đư

biểu diễn:

Như vậy với các dòng PT2262 với số đường địa chỉ/dữ liệu khác nhau tacác Code Word khac nhau theo dạng sau:

Page 6: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 6/24

Các dòng PT2262 với số lượng bit địa chỉ/dữ liệu khác nhau

II.4. Khung truyền(Code Frame)Một khung truyền bao gồm 4 từ mã(Code Word) phát liên tục nhau ra châ

DOUT của PT2262 khi chân /TE là tích cực(/TE tích cục mức thấp).

Cấu trúc 1 khung truyền được gởi

III. Giải thuật và lập trình mã hóa

III.1. Giải thuật Mỗi bit sử dụng trong PT2262 có độ dài 32α thay thế bằng 8 bits 1,0 liên

Byte). Theo biểu diễn này ta có:

Timing của phần mã hóa các bitBit 0 được thay thế bằng chuỗi 10001000Bit 1 được thay thế bằng chuỗi 11101110Bit f được thay thế bằng chuỗi 10001110Sync Bit được thay thế bằng chuỗi : 10000000|00000000|00000000|00

Như vậy các Bit Code khi phát đi sẽ được được thay thế bằng chuỗi bit mhóa nó. Ví dụ 1 từ mã Code Word PT2262 muốn phát là “11110000|1010|SyncBit” (8 bits địa chỉ|4 bits dữ liệu|1 Sync Bit) sẽ được mã hóa thành chuỗ128 bit là:

Page 7: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 7/24

11101110.11101110.11101110.11101110.10001000.10001000.10001000.1000

1000 |11101110.10001000.11101110.10001000|11101110.00000000. 00000000.00000000

Thực hiện việc gởi 4 lần 1 từ mã(Code Word) để tạo 1 khung truyền.

III.2. Lập trình III.2.1. Thiết lập timing Sử dụng Timer để thực hiện việc truyền các bit dữ liệu, do đó cần phải x

định và tính toán các giá trị timing của tốc độ truyền.

Các giá trị timing này có thể thay đổi bằng việc tính toán lại các giá trị:

III.2.2. Quy ước mã hóa địa chỉ Vì PT2262/2272 sử dụng các bit địa chỉ là 3 trạng thái 0,1 và f, do đó cách

biểu diễn địa chỉ này là cơ số 3, với 8 bits địa chỉ ta có tối đa “3 mũ 8” địa chđược mã hóa.

Page 8: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 8/24

Để đơn giản hóa việc sử dụng các bits 3 trạng thái này ta chuyển về số t phân 32 bits có 8 chữ số với mỗi ký số biểu diễn 1 bits 3 trạng thái này với ước:

Số 0 biểu diễn mức 0

Số 1 biễu diễn mức 1Số 2 biểu diễn mức f Giả sử địa chỉ thập phân 11112200 là địa chỉ đã mã hóa của 8 bits địa chỉ A

A7: 1111ff00. Ngược lại với giá trị mặc định(các chân địa chỉ để hở) 8 địa cA7 của PT2262 là ffffffff sẽ được biểu diễn bằng số thập phân 22222222.

III.2.3. Thực hiện mã hóa các từ mãÁp dụng quy tắc mã hóa theo cách trên ta có định nghĩa:

Với 1 từ mã Code Word thông thường có độ dài là 128 bits tức sử dụng 1 đệm 16 Bytes để chứa kết quả chuỗi Code Word sau mã hóa.

Giả sử thực hiện việc mã hóa 8 bits địa chỉ, 4 bits dữ liệu và 1 Sync Bit t

III.2.4. Phát dữ liệuSử dụng Timer với các giá trị timing được xác định ở 1 tốc độ đã được xá

định trước.

Page 9: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 9/24

Sun Technologies WwW.suno.vn Chia sẽ = Ph

PT2262 phát mỗi khung truyền(Code Frame) chứa 4 từ mã(Code Word), dđó cần thực hiện việc lặp gởi các bits dữ liệu trong bộ đệm 4 lần.

Thiết lập truyền 4 lần bộ đệm 128 bits

Hàm kiểm tra việc truyền bộ đệm dùng trong timer

Page 10: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 10/24

IV.Giải mã PT2272

o Thực hiện giải mã ngược lại quá trình mã hóa của PT2262 để thu được kết dữ liệu.

o Trong Waveform của mã hóa PT2262 các bit 1,0 có những khoảng thời gian xđịnh, dựa vào khoảng thời gian này để xác định các bit đã phát

o Các thời khoảng bit có thể có là 4α,12α và 127α tương ứng với độ dài 1bit, 3và 31.5 bits.

o Việc đo các thời khoảng bit này thực hiện khi có sự thay đổi trạng thái của thiệu. Các điểm đỏ sẽ đánh dấu việc kết thúc đo thời gian bit 0 và bắt đầu đo c1, ngược lại các điểm xanh kết thúc việc đo thời gian của bit 1 và bắt đầu đo c0.

Thực hiện đo thời khoảng bito Gọi T1 và T2 là khoảng thời gian đo được của xung 1 và 0 liên tiếp nhau thì bảng giải mã các bits:

T11bit3bit1bitKhác

T23bits1bits

31.5bitsKhác

Code4 bits 10004 bits 1110Sync Bit

Lỗi

Page 11: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 11/24

Page 12: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 12/24

o Với mỗi cặp 4 bits thu được liên liếp nhau ta lại thu được kết quả giải mã tứng:

4 bits cao

1000100011101110

4 bits thấp

1000111011101000

Kết quả giải mã

0f 1

Lỗi

o Thực hiện lần lượt 12 bits địa chỉ/ dữ liệu và 1 Sync Bit ta sẽ thu được 1 từmã(Code Word).

o Vì PT2262 phát 1 khung truyền gồm 4 từ mã(Code Word) nên khi ta thu liên tcác từ mã(Code Word) giống nhau thì có nghĩa chắc chắn dữ liệu đã được giải đúng.

V. Lập trình giải mã

V.1.Xác lập timing Giống với phần phát, phần thu phải xác định tần số mã hóa bên phát bằn

cách xác định các giá trị timing.

Các giá trị timing này có thể thay đổi bằng việc tính toán lại các giá trị:

Page 13: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 13/24

Page 14: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 14/24

V.2.Xử lý Interrupt /Polling

V.2.1. Sử dụng Interrupt

Việc sử dụng interrupt sẽ giúp quá trình xử lý không liên tục các tín hithu từ mạch RF mà thay vào đó là kiểm tra các điểm thay đổi được thiết bởi ngắt.

Dùng interrupt sẽ giúp vi điều khiển có thể thực hiện các thao tác điềukhiển, xủ lý khác trong quá trình giải mã.

Tuy nhiên các giải thuật sử dụng interrupt phải đảm bảo không tạo cátrạng lái vòng lặp không xác định điều kiện thoát, tránh sử dụng các giảthuật gây cấm ngắt.

Khởi động ngắt ngoài

Page 15: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 15/24

V.2.2. Sử dụng Polling

Hàm xử lý trong ngắt

Thực hiện việc lặp kiểm tra liên tục ngõ vào của chân thu trong chươtrình thay cho chức năng interrupt.

V.3.Giải mãCác trạng thái giải mã gồm: Trạng thái sẵn sàng nhận, trạng thái kiểm tra

dữ liệu nhận, trạng thái kiểm tra nhận Sync Bit.

Định nghĩa các trạng thái giải mãKiểm tra độ dài của 2 bit 1 và 0 liên tiếp nhau để xác định chuỗi bit mã hó

Page 16: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 16/24

Điều kiện để biết nhận đủ 12 bits địa chỉ/ dữ liệu là đã thực hiện nhận đ bits trong bộ đệm

Thực hiện việc kiểm tra Sync Bit để biết nhận đúng 1 từ mã(Code Word)

Thực hiện việc giải mã thông tin địa chỉ thu được từ bộ đệm, theo quy ưchu thu được là 1 số 32 bits:

Page 17: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 17/24

Thực hiện việc giải mã dữ liệu thu được từ bộ đệm:

Page 18: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 18/24

VI. Ứng dụng VI.1. Remote điều khiển

Sử dụng loại remote sử dụng PT2262/SC2262 với điện trở Rosc là 4M7.

Tần số phát của mạch RF là 315 MHz.Số lượng phím điều khiển tùy thuộc vào loại remote 4,6,8 hoặc12.

VI.2. Mạch phát dùng MCU Sử dụng PIC12F683 để phát tín hiệu thay cho Remote.Cấu hình dao động trong 8MHz.Không sử dụng chức năng Master Clear trên chân GP3 để có thể dùng như

IO nếu cần(Disable Master Clear).Sử dụng chân phát dữ liệu GP5.Các input trên mạch thu được điều khiển bởi 3 bits trong 4 bits của phần

liệu phát.

Page 19: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 19/24

Khai báo sử dụng thư viện mã hóa:

Chương trình main đọc phím nhấn và gởi dữ liệu:

Page 20: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 20/24

Kết quả biên dịch:

VI.3. Mạch thu dùng PT2272

Mạch thu dùng PT2272-L4.

Kết quả biên dịch

Điện trở R của OSC là 820K tương ứng với ROSC của remote là 4.7M.

Page 21: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 21/24

VI.4. Mạch thu điều khiển

Sử dụng PIC12F683 để thu tín hiệu.Cấu hình dao động trong 8MHz.Không sử dụng chức năng Master Clear trên chân GP3 để có thể dùng như

IO nếu cần(Disable Master Clear).Sử dụng ngắt ngoài (external interrupt on RA2) để thực hiện việc giải mãCác Output trên mạch thu được điều khiển bởi 3 bits trong 4 bits của phầ

liệu nhận được.

Page 22: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 22/24

Khai báo sử dụng thư viện giải mã

Hàm xử lý IO khi nhận được dữ liệu

Hàm sẽ được gọi mỗi khi nhận được dữ liệuHàm main khi sử dụng interrupt:

Page 23: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 23/24

Hàm main khi sử dụng polling

Page 24: Modun Remote

8/7/2019 Modun Remote

http://slidepdf.com/reader/full/modun-remote 24/24

Kếtquả

biêndịch:

Kết quả biên dịch