PT2262編碼芯片的軟件編碼
PT2262/2272是一種CMOS工藝制造的低功耗低價位通用編解碼電路,PT2262/2272最多可有12位(A0-A11)三態地址端管腳(懸空,接高電平,接低電平),任意組合可提供531441地址碼,PT2262最多可有6位(D0-D5)數據端管腳,設定的地址碼和數據碼從17腳串行輸出,可用于無線遙控發射電路。
編碼芯片PT2262編碼信號是由地址碼、數據碼、同步碼組成一個完整的碼字,從17腳輸出到射頻發射模塊的數據輸入端發射出去。射頻接收模塊接收后送到解碼芯片PT2272,其地址碼經過三次比較核對后,PT2272的VT腳才輸出高電平,與此同時與PT2262相應的數據腳也輸出高電平,如果PT2262連續發送編碼信號,PT2272第17腳和相應的數據腳便連續輸出高電平。PT2262停止發送編碼信號,PT2272的VT端便恢復為低電平狀態。
高頻發射電路完全收控于PT2262的17腳輸出的數字信號,從而對高頻電路完成幅度鍵控(ASK調制)相當于調制度為100%的調幅。
PT2262/2272特點:
1、CMOS工藝制造,低功耗
2、外部元器件少
3、RC振蕩電阻
4、工作電壓范圍寬:2.6-15v
5、數據最多可達6位6、地址碼最多可達531441種
應用范圍:
1、車輛防盜系統
2、家庭防盜系統
3、遙控玩具
4、其他電器遙控
編碼芯片分類
(1)按編碼類別分
固定碼:所謂的固定碼,就是指每次發送出去的編碼都不會改變,因此使用這類芯片的遙控器比較容易被復制。如PT2262,PT2260 PT2240 Ev1527 FP527 HT6014 SMC918等芯片。
滾動碼:所謂滾動碼,就是指每次發出去的碼都不一樣,通過一系列算法,完成滾動輸出的功能。這類芯片的遙控器復制比較困難,可以通過移值,或者已破解過的遙控器來完成復制工作。如HCS301 HC300 HCS201 HCS200 HCS361等芯片。
(2)按編碼方式分
可變型:就是編碼可通過人工手動修改。如PT2262編碼集成電路,它有18個腳。它的1--8腳屬于地址編碼端,可以進行三態編碼,就是一只腳可以是三種狀態,即:接低電平(0)、高電平(1)、或懸空(F)三種狀態,編碼數有3的8次方,也就是共有6561種狀態。這是一般的用法。PT2262還有4支腳,就是10、11、12、13,一般它是用來做數據端。它也可以編碼,但是編碼就只有兩種狀態:低電平(0)、高電平(1),沒有懸空這種狀態了。下面1圖中的編碼區編碼是A0—A7都懸空,也就是A0=F,A1=F,A2=F,A3=F,A4=F,A5=F,A6=F,A7=F,下面2圖中的編碼是A0=0,A1=F,A2=0,A3=0,A4=1,A5=0,A6=1,A7=F,所以通過改變編碼器的焊點就改變了地址編碼。
固定型:指芯片出廠時由廠家固化好編碼在芯片里面。如PT2240 SMC918 EV1527等。
PT2262編碼芯片的軟件編碼
上圖是PT2262編碼芯片的編碼格式。根據PT2262編碼芯片的編碼格式可以看出同步碼時長=4T高+124T低+4T高;數據“0”=4T高+12T低+4T高+12T低;數據“1”=12T高+4T低+12T高+4T低;數據“F”=4T高+12T低+12T高+4T低。我們可以用單片機通過軟件來模擬PT2262的這個編碼過程,用軟件代替了硬件PT2262,由于通過軟件可以模擬不同的震蕩電阻,同時地址編碼也可以隨意更改,還可以選擇不同的發射模塊(315Mhz或433Mhz),所以更具有通用性。
我們把2262的地址碼用4個字節表示,如FFFF0101表示A0、A1、A2、A3(2262的1、2、3、4腳)開路,A4接地,A5接正電壓,A6接地,A7接正電壓。我們再用2個字節表示4個數據碼,如0001表示D3、D2、D1(2262的10、11、12腳)為低電平,D0為高電平。把這6個字節數據存到單片機38h單元起始的 RAM中,R6存發送次數,R4存發送字節數,主程序中調用VFSS0軟件編碼子程序如下:
LED EQU0B7H ;P3.7
SDA EQU0B6H ;P3.6
SCL EQU 0B5H ;P3.5
JS433 EQU0B4H ;P3.4
JS315 EQU0B3H ;P3.3
JPSM EQU0B2H ;P3.2
FS433 EQU0B1H ;P3.1
FS315 EQU0B0H ;P3.0
XPOS EQU 1AH ;列方向地址指針(用于LCDPOS子程序)
YPOS EQU 1BH ;行方向地址指針(用于LCDPOS子程序)
DPHH EQU 1CH ;存512高位地址
DPLL EQU 1DH ;存512低位地址
RWPIN EQU 81h
EPIN EQU 82h
CS1PIN EQU 83h
CS2PIN EQU 84h
FSZ1: CALLVFSS0 ;調用VFSS0子程序發送數據
AJMP DIS
VFSS0: MOVR6,#5 ;發5次
VFKS0: MOVR0,#38H
MOVR4,#6 ;發送6個字節數據,其中4個字節地址,2字節數據
CALLFS0 ; 先發送同步碼:4T的高電平124T的低電平。
CALLFTB ;124低
VFSJ1: MOVR3,#2 ;發送一個字節,分2次發送,先發高4位,后發低4位
MOVA,@R0 ;取出要發送的編碼數據
ANL A,#0F0H
SWAP A
MOV B,A
VFS03: XRLA,#0FH ;先發高4位,低4位保存到B寄存器
JNZ FS04
VFSF: ACALL FS0 ; 發送F,4T高;F=4T高+12T低+12T高+4T低
ACALL FSC ;12T低 F=4T高+12T低+12T高+4T低
ACALL FS1 ;12T高
ACALL FSD ;4T低
AJMP VFS06
VFS04: MOVA,B
XRLA,#01H ;1=12T高+4T低+12T高+4T低
JNZ VFS05
ACALL FS1 ; 發送1,先發12T高
ACALL FSD ;4T低
ACALL FS1 ;12T高
ACALL FSD ;4T低
AJMP VFS06
VFS05: MOVA,B ;發送0,0=4T高+12T低+4T高+12T低,
XRL A,#0H
JNZ VFS08
ACALL FS0 ;4T高
ACALL FSC ;12T低
ACALL FS0 ;4T高
ACALL FSC ;12T低
AJMP VFS06
VFS08: ;MOVA,B ;0=4T高+12T低+4T高+12T低,
; XRL A,#04H
;JNZ VFS06
ACALL FS1 ;12T高
ACALL FSd ;4T低
ACALL FS0 ;4T高
ACALL FSC ;12T低
VFS06: MOVA,@R0
ANL A,#0FH
MOV B,A
DJNZR3,VFS03 ;一個字節發送完了沒有?沒完繼續
INC R0
DJNZR4,VFSJ1 ;6個字節全發送完了沒有?沒完繼續,發送完發同步
ACALL FS0 ;4T高 ;0=4T高+12T低+4T高+12T低,
ACALL FSC ;12T低
ACALL FS0 ;4T高
ACALL FSC ;12T低
VFS07: DJNZ R6,VFKS0 ;一共發送5遍,發送完了沒有?沒完繼續
RET
;發12T高電平
FS1: MOV A,35H;#01H
CPL A
MOV 8CH, A
MOV A,36H;#85H
CPL A
MOV 8AH,A
MOV A,R2
XRLA,#03H ;R2值選擇發送模塊是433MHZ還是315MHZ
JZ FS2
CLRFS433 ;經40106反相后變成高電平
AJMP FS3
FS2: CLR FS315
FS3: SETB TR0
FSF01: JBC TF0, FSF03
AJMP FSF01
FSF03: CLR TR0
SETB FS433
SETB FS315
RET
;發送4T高電平
FS0: MOV A,#00H
CPL A
MOV 8CH, A ; 給定時器0賦值,TH0=8CH,TL0=8AH,定時長度不同,模擬的震蕩電阻值就不同,脈寬就不一樣
MOV A,37H;#85H
CPL A
MOV 8AH, A
MOV A,R2
XRL A,#03H
JZ FS22
CLRFS433 ;經40106反相后變成高電平
AJMP FS33
FS22: CLR FS315
FS33: SETB TR0
FSF02: JBC TF0, FSF04
AJMP FSF02
FSF04: CLR TR0
SETB FS433
SETB FS315
RET
;發送12T低電平
FSC: MOV A,35H;#01H ;一位數據=32T,位0=4T,位1=12T合起來等于16T還得加16T低電平
CPL A
MOV 8CH, A
MOV A,36H;#85H
CPL A
MOV 8AH,A
SETBFS433 ;經40106反相后變成高電平
SETB FS315
SETB TR0
FSF01C: JBC TF0,FSF03C
AJMP FSF01C
FSF03C: CLR TR0
RET
;發送4T低
FSD: MOVA,#00H ;
CPL A
MOV 8CH, A
MOV A,37H;#85H
CPLA
MOV 8AH, A
SETBFS433 ;經40106反相后變成高電平
SETB FS315
SETB TR0
FSF02D: JBC TF0,FSF0D
AJMP FSF02D
FSF0D: CLR TR0
RET
;發同步
FTB: MOVA,34H;#0FH ;同步碼時長
CPL A
MOV TH0,A ;發同步信號
MOV A,37H;#85H
CPL A
MOV TL0,A
FS01: SETB TR0 ;發送124T低
SETB FS433
SETB FS315
FS02: JBC TF0, FSJ
AJMP FS02
FSJ: CLR TR0
RET
非常好我支持^.^
(1) 3.1%
不好我反對
(31) 96.9%
相關閱讀:
- [電子說] 如何使用單片機模擬PT2262進行編碼 2020-05-05
- [電子說] 如何使用單片機模擬PT2262軟件解碼的方法說明 2020-01-21
- [電子說] PT2262/PT2272無線防盜報警器的制作,Wireless burglar alarm 2018-09-20
- [無線/傳感] 基于315m無線模塊的PT2262/PT2272工作原理分析 2018-07-20
- [遙控電路圖] 遙控門鈴電路圖大全(多諧振蕩器\編碼\信號發生器\TWH630\PT2262) 2018-05-07
- [電子說] pt2262解碼學習總結 2018-03-04
- [IC應用電路圖] pt2262應用電路圖大全_pt2262編碼電路匯總(五款pt2262應用電路詳解) 2018-03-04
- [無線通信] 基于pt2262的遙控器電路圖 2017-11-14
( 發表人:陳翠 )