Tài liệu Ứng dụng 89 về điều khiển bằng vô tuyến với PT2262 pdf

14 346 0
Tài liệu Ứng dụng 89 về điều khiển bằng vô tuyến với PT2262 pdf

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Ứng dụng 89 về điều khiển bằng tuyến với PT2262 việc sử dụng PT2262 và PT2272 để điểu khiển từ xa đã quá thông dụng với các bạn lập trình VDK ở luồng này mình đưa ra một ý tưởng là thực hiện 89 thay cho PT2272 và có thể set được địa chỉ của PT2262 đề bài: giả sử thiết bị bị điều khiển bị mất remoter bây giờ cần thay remote khác các bạn chì cần nhấn một nút set trên thiết bị bị điều khiển rồi copy đia chỉ của remoter mới thế là xong lúc này remoter mới lại điều khiển bình thường thay vì bạn phải xem địa chỉ của thiết bị bị điều khiền rồi sau đó set địa chỉ remote phát giống như vậy trong lồng này mình sử dụng bộ thu phát tuyến các bạn cũng có thể sử dụng bộ thu phát hồng ngoại bộ thu phát này các bạn nếu ở THHCM thì tiệm bà Châu hoặc Ngọc chợ Nhựt Tảo có bán còn đây là sơ đồ và code text: sơ đồ lý thuyết: Ảnh đã được thu nhỏ. Bấm vào đây để xem hình cỡ đầy đủ. H ì nh gốc cỡ 730x342 và dung lượng 30KB. đầu tiên thi chương trình chưa có địa chỉ của remoter bạn phải copy địa chỉ của remoter bằng cách nhấn đè phím set lúc này thì 4 đèn sẽ chóp liên tục bạn bấm đè một nút bất kỳ trên remoter lúc này chương trinh sẽ dò địa chỉ của remoter và RC khi dò được thì chương trình sẽ tự động lưu vào 24C08 và 4 đèn sẽ ngưng chớp báo cho biết đã copy xong lần sau thì không cần copy nữa lúc này bạn có thể text data của remoter bằ ng cách nhấn phím remoter 4 đèn LED sẽ thể hiện data cho từng phím code có kèm theo chú thích nếu các bạn không hiểu chỗ mình sẽ giải thích cho Code: den_4 bit p1.3 den_3 bit p1.2 den_2 bit p1.1 den_1 bit p1.0 data_thu bit p3.7 phim_set bit p3.2 data_ROM bit p1.5 clock_ROM bit p1.4 co_dong_bo bit 20h.0 co_chop_led bit 22h.1 dia_chi_ROM equ 24h dia_chi_IC equ 23h co_ghi_doc_ROM bit 23h.0 time_delay equ 30h cot_1 equ 31h cot_2 equ 32h dia_chi_song_mang1 equ 4eh data_song_mang1 equ 43h dia_chi_song_mang2 equ 44h data_song_mang2 equ 45h time_cai_cot equ 46h cot_cai_1 equ 49h cot_cai_2 equ 4ah ; org 0000h ljmp reset org 000bh ljmp time0 org 0030h reset: mov tmod,#11h ;time 0 16 bit, time 1 8 bit mov th0,#high(-50000) mov tl0,#low(-50000) mov r7,#20 ;0,5s setb tr0 clr co_chop_led lcall doc_cot ;lay dia chi cua thiet bi mov ie,#10000010b ;khoi dong cac ngat main: jb phim_set,not_cai_dia_chi ;neu nhan phim set mov p1,#0f0h setb co_chop_led ;bao dang cai remoter mov time_delay,#1 ;duoc thay the cho dien tro RC cua PT2272 mov r2,#5 jmp cai_dia_chi ; not_cai_dia_chi: lcall doc_song_mang jnb co_dong_bo,main mov a,dia_chi_song_mang1 cjne a,cot_1,main mov a,dia_chi_song_mang2 cjne a,cot_2,main mov dia_chi_song_mang1,#0ffh ;xoa bo dem dia chi mov dia_chi_song_mang2,#0 ;xoa bo dem dia chi mov a,data_song_mang1 swap a ;quay 4 bit data cao xuong thap orl a,#0f0h ;tre 4 bit cao mov p1,a ;hien thi data jmp main ;========================================================== ======= ;********************************************************** ******************** ;========================================================== ======= cai_dia_chi: setb ie.7 jb phim_set,thoat_cai_dia_chi ;neu nha phim set djnz r2,tiep_cai_dia_chi ;so lan text RC inc time_delay ;thay doi RC mov r2,#5 ;5 lan text RC mov r1,#10 ;so lan trung dia chi tiep_cai_dia_chi: lcall text_xung_dong_bo jnb co_dong_bo,cai_dia_chi ;neu bi sai bit dong bo clr ie.7 do_cot: clr co_dong_bo mov r0,#8 lap_thu_dia_chi: lcall do_bit_cai ;do xung lcall doi_bit ;doi xung ra bit jnb co_dong_bo,lap_thu_dia_chi cjne r0,#4,cai_dia_chi ;khong phai ma cjne r1,#10,khac_10 ;chua du 10 lan giong nhau mov cot_cai_1,dia_chi_song_mang1 ;lay dia chi moi mov cot_cai_2,dia_chi_song_mang2 khac_10: mov a,dia_chi_song_mang1 cjne a,cot_cai_1,cai_dia_chi mov a,dia_chi_song_mang2 cjne a,cot_cai_2,cai_dia_chi ;bi sai dia chi djnz r1,do_cot ;neu dung giam di 1 lcall luu_cot mov p1,#0f0h ;bao set thanh cong jnb phim_set,$ ;tro nha phim set setb ie.7 thoat_cai_dia_chi: clr co_chop_led mov p1,#0ffh jmp not_cai_dia_chi ; luu_cot: clr ie.7 mov dia_chi_IC,#0a0h mov dia_chi_ROM,#0 lcall goi_dia_chi mov a,dia_chi_song_mang1 lcall ghi_byte mov a,dia_chi_song_mang2 lcall ghi_byte mov a,time_delay lcall ghi_byte lcall stop setb ie.7 ret ; doc_cot: clr ie.7 mov dia_chi_IC,#0a0h mov dia_chi_ROM,#0 lcall goi_dia_chi lcall start setb co_ghi_doc_ROM ;lenh doc RAM noi tiep mov a,dia_chi_IC lcall ghi_byte lcall doc_byte mov dia_chi_song_mang1,a lcall ACK lcall doc_byte mov dia_chi_song_mang2,a lcall ACK lcall doc_byte mov time_delay,a lcall NAK lcall stop setb ie.7 ret ;================================================= ;***************************************************** ;================================================= time0: mov th0,#high(-50000) mov tl0,#low(-50000) djnz r7,thoat_time_0 mov r7,#20 ;0,5s jnb co_chop_led,thoat_time_0 cpl den_1 cpl den_2 cpl den_3 cpl den_4 thoat_time_0: reti ;================================================= ;***************************************************** ;================================================= doc_song_mang: lcall text_xung_dong_bo jnb co_dong_bo,thoat_doc_song_mang clr ie.7 mov r0,#8 mov r3,#12 clr co_dong_bo lap_thu_song_mang: jb co_dong_bo,loi_doc_song_mang lcall do_bit lcall doi_bit djnz r3,lap_thu_song_mang lcall text_xung_dong_bo thoat_doc_song_mang: ret loi_doc_song_mang: clr co_dong_bo ret ; text_xung_dong_bo: clr co_dong_bo lcall do_bit_cai cjne a,#01h,thoat_text_dong_bo ; neu khong phai la song mang mov r0,#23 text_dong_bo: mov b,time_delay tro_text_dong_bo: jb data_thu,thoat_text_dong_bo djnz b,tro_text_dong_bo djnz r0,text_dong_bo setb co_dong_bo thoat_text_dong_bo: ret ; do_bit_cai: mov 2eh,#8 mov 2dh,#1 jnb data_thu,$ do_xung_dong_bo: lcall delay_34us djnz 2dh,do_xung_dong_bo mov 2dh,#2 mov c,data_thu rrc a djnz 2eh,do_xung_dong_bo ret ; do_bit: jnb data_thu,$ mov b,#5 lap_do_bit: lcall delay_34us djnz b,lap_do_bit jnb data_thu,xung_khong mov a,#07h jb data_thu,$ jmp tiep_do_bit xung_khong: mov a,#01h tiep_do_bit: mov b,#2 tiep_do_bit1: mov 2ah,time_delay djnz 2ah,text_do_bit1 djnz b,text_do_bit1 setb co_dong_bo jmp thoat_do_bit text_do_bit1: jnb data_thu,tiep_do_bit1 mov b,#5 lap_do_bit1: lcall delay_34us djnz b,lap_do_bit1 jnb data_thu,xungkhong add a,#70h jb data_thu,$ jmp thoat_do_bit xungkhong: add a,#10h thoat_do_bit: ret ; doi_bit: cjne a,#11h,bit_1 ;neu la bit 1 mov a,data_song_mang1 clr c rrc a mov data_song_mang1,a mov a,data_song_mang2 clr c rrc a mov data_song_mang2,a jmp du_byte bit_1: cjne a,#77h,bit_f mov a,data_song_mang1 setb c rrc a mov data_song_mang1,a mov a,data_song_mang2 setb c rrc a mov data_song_mang2,a jmp du_byte bit_f: cjne a,#71h,bit_dong_bo mov a,data_song_mang1 clr c rrc a mov data_song_mang1,a mov a,data_song_mang2 setb c rrc a mov data_song_mang2,a du_byte: djnz r0,thoat_doi_bit mov dia_chi_song_mang1,data_song_mang1 mov dia_chi_song_mang2,data_song_mang2 mov data_song_mang1,#0 mov r0,#8 thoat_doi_bit: ret bit_dong_bo: setb co_dong_bo ret ; delay_34us: mov 2ah,time_delay djnz 2ah,$ ret ;""""""""""""""""""""""""""""""""""""""""""""""""""""" start: setb data_ROM nop nop setb clock_ROM nop nop clr data_ROM nop nop nop nop nop nop nop nop nop nop clr clock_ROM nop nop ret ;""""""""""""""""""""""""""""""""""""""""""""""""""""""" stop: clr data_ROM nop nop . Ứng dụng 89 về điều khiển bằng vô tuyến với PT2262 việc sử dụng PT2262 và PT2272 để điểu khiển từ xa đã quá thông dụng với các bạn lập. bị bị điều khiền rồi sau đó set địa chỉ remote phát giống như vậy trong lồng này mình sử dụng bộ thu phát vô tuyến các bạn cũng có thể sử dụng bộ

Ngày đăng: 18/01/2014, 15:20

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan