PT2262單片機解碼思路和原理
PT2262/2272是***普城公司生產(chǎn)的一種CMOS工藝制造的低功耗低價位通用編解碼電路,PT2262/2272最多可有12位(A0-A11)三態(tài)地址端管腳(懸空,接高電平,接低電平),任意組合可提供531441地址碼,PT2262最多可有6位(D0-D5)數(shù)據(jù)端管腳,設(shè)定的地址碼和數(shù)據(jù)碼從17腳串行輸出,可用于無線遙控發(fā)射電路。
編碼芯片PT2262發(fā)出的編碼信號由:地址碼、數(shù)據(jù)碼、同步碼組成一個完整的碼字,解碼芯片PT2272接收到信號后,其地址碼經(jīng)過兩次比較核對后,VT腳才輸出高電平,與此同時相應的數(shù)據(jù)腳也輸出高電平,如果發(fā)送端一直按住按鍵,編碼芯片也會連續(xù)發(fā)射。
當發(fā)射機沒有按鍵按下時,PT2262不接通電源,其17腳為低電平,所以315MHz的高頻發(fā)射電路不工作,當有按鍵按下時,PT2262得電工作,其第17腳輸出經(jīng)調(diào)制的串行數(shù)據(jù)信號,當17腳為高電平期間315MHz的高頻發(fā)射電路起振并發(fā)射等幅高頻信號,當17腳為低平期間315MHz的高頻發(fā)射電路停止振蕩,所以高頻發(fā)射電路完全收控于PT2262的17腳輸出的數(shù)字信號,從而對高頻電路完成幅度鍵控(ASK調(diào)制)相當于調(diào)制度為100%的調(diào)幅。
單片機解碼思路
紅外線經(jīng)一體化接收模塊解碼后送到單片機的外部中斷0,單片機設(shè)置外部中斷下降沿觸發(fā)(即外部中斷0為跳變沿觸發(fā)方式,從高到低的負跳變觸發(fā)進入中斷處理函數(shù)進行解碼操作);
首先我們把T0設(shè)置為16位定時器模式,工作在定時狀態(tài),初始化值為0,在晶振的工作頻率為11.0592MHz時計滿最大值計數(shù)值的時間為:71111us。由于同步碼周期與地址數(shù)據(jù)周期都遠小于定時器0的定時時間,所在定時器0正常工作時,是不會溢出的;
T1用作延時,設(shè)置其定時為1ms(本示例中沒有用到T1功能);
在EX0=1(外部中斷0啟動)并且EA=1(使能所有中斷)后,當下降沿到來時進入到中斷處理函數(shù),T0在TR0的控制下啟動與停止計時;
當接收到下降沿后,先判斷當前的電平狀態(tài),檢測到是低電平時則把T0計時器歸零開始計數(shù)低電平的時間寬度,電平狀態(tài)發(fā)生變化時停止計數(shù)。取TH0和TL0之和即可根據(jù)該低電平的時間寬度值來識別是否為同步碼。只有先識別出同步碼,才開始接收后續(xù)脈沖數(shù)據(jù)進行24位解碼操作。
判斷電平寬度,檢測是否為同步碼時,事實上超過10ms即有可能為同步碼。初步找出同步碼后,根據(jù)同步碼低電平寬度取得寬脈沖低電平寬度值,根據(jù)同步碼低電平寬度取得窄脈沖低電平寬度值,由上面的PT2262編碼格式圖可以看出,同步碼低電平持續(xù)時間是寬脈沖低電平持續(xù)時間的32倍,是窄脈沖低電平持續(xù)時間的10(或11)倍,后續(xù)的24位數(shù)據(jù)的寬、窄脈沖低電平持續(xù)時間寬度進行比較,滿足一定的范圍時,即可解析出發(fā)射端送出的編碼。那么實現(xiàn)PT2262解碼原理是什么呢?一起來了解一下。
單片機實現(xiàn)PT2262解碼原理
1、ASK調(diào)制:
“幅移鍵控”又稱為“振幅鍵控”,也有稱為“開關(guān)鍵控”(通斷鍵控),所以又記作OOK信號。ASK是一種相對簡單的調(diào)制方式。幅移鍵控(ASK)相當于模擬信號中的調(diào)幅,只不過與載頻信號相乘的是二進制數(shù)碼而已。幅移就是把頻率、相位作為常量,而把振幅作為變量,信息比特是通過載波的幅度來傳遞的。二進制振幅鍵控(2ASK), 由于調(diào)制信號只有0或1兩個電平,相乘的結(jié)果相當于將載頻或者關(guān)斷,或者接通,它的實際意義是當調(diào)制的數(shù)字信號為“1”時,傳輸載波;當調(diào)制的數(shù)字信號為“0”時,不傳輸載波。一般載波信號用余弦信號,而調(diào)制信號是把數(shù)字序列轉(zhuǎn)換成單極性的基帶矩形脈沖序列,而這個通斷鍵控的作用就是把這個輸出與載波相乘,就可以把頻譜搬移到載波頻率附近。
2、幾個周期:
2.1、時鐘周期:也稱為振蕩周期或晶振周期,定義為時鐘頻率的倒數(shù),即晶振的振蕩頻率的倒數(shù),計為:T(時)=1/f(osc)。時鐘周期是計算機中最基本的、最小的時間單位。在一個時鐘周期內(nèi),CPU僅完成一個最基本的動作。對于某種單片機,若采用了1MHZ的時鐘頻率,則時鐘周期為1us。
2.2、狀態(tài)周期:狀態(tài)周期是振蕩周期的二倍。振蕩周期也稱為晶振周期,振蕩周期是單片機的基本時間單位。振蕩脈沖經(jīng)二分頻成為時鐘信號,時鐘信號的周期稱為狀態(tài)周期。若時鐘晶振的振蕩頻率為fosc,則時鐘信號的狀態(tài)周期Tosc=(1/fosc)*2。(即為振蕩頻率的倒數(shù)的2倍)。例如:晶振頻率為12MHZ,則時鐘周期Tosc=(1/12us)*2。
2.3、機器周期:單片機的基本操作周期。在計算機中,為了便于管理,常把一條指令的執(zhí)行過程劃分為若干個階段,每一階段完成一項工作。例如,取指令、存儲器讀、存儲器寫等,這每一項工作稱為一個基本操作。一個操作周期內(nèi),單片機完成一項基本操作。
2.4、指令周期:執(zhí)行一條指令所需要的時間,一般由若干個機器周期組成。指令不同,所需的機器周期數(shù)也不同。對于一些簡單的的單字節(jié)指令,在取指令周期中,指令取出到指令寄存器后,立即譯碼執(zhí)行,不再需要其它的機器周期。對于一些比較復雜的指令,例如轉(zhuǎn)移指令、乘法指令,則需要兩個或者兩個以上的機器周期。
綜上所述:一個機器周期 = 6個狀態(tài)周期 = 12個時鐘周期。
3、位碼:
紅外編碼波形的基本單位,為分AD(地址碼、數(shù)據(jù)碼)位和SYNC(同步碼)位,每“位”波形由兩個脈沖周期構(gòu)成,每個脈沖周期含有16個時鐘周期。位碼使用兩個脈沖信號表示一個編碼值,其中,兩個連續(xù)窄脈沖表示編碼值“0”;兩個連續(xù)寬脈沖表示編碼值“1”;一個窄脈沖和一個寬脈沖表示“F”,也就是地址碼的“懸空”。即每個位碼bit用2bit表示:00 或01或10表示0碼;11表示1碼。
如下圖所示,編碼芯片PT2262發(fā)出的編碼信號經(jīng)過整形電路之后得到的脈沖波形圖。由:地址碼、數(shù)據(jù)碼、同步碼組成。地址碼和數(shù)據(jù)碼都用寬度不同的脈沖來表示,兩個窄脈沖表示“0”; 兩個寬脈沖表示“1”; 一個窄脈沖和一個寬脈沖表示“F”,也就是地址碼的“懸空”;同步碼為時間較長的低電平間隔,下圖為PT2262編碼圖:
如上圖,發(fā)射端每發(fā)送一次信號都會攜帶多組編碼字碼,每段編碼字碼值相同,二進制值為0B010101010101010100001100,對應的十六進制碼值為:0x55550C。從圖中可以看出,發(fā)送碼的周期是相等的,只是脈沖寬度不同(寬脈沖與窄脈沖之比為3:1)。而同步碼的低電平時間約為這個周期的8倍。
解碼的關(guān)鍵是識別同步碼,然后對后面的字碼的脈沖寬度進行識別,就可以解出這個編碼。PT2262每次發(fā)射時至少發(fā)射4組字碼,每組字碼由25個脈沖組成,前24個脈沖為地址和數(shù)據(jù),最后一個脈沖和一低電平間隔組成同步碼。
非常好我支持^.^
(31) 100%
不好我反對
(0) 0%
相關(guān)閱讀:
- [電子說] 如何使用單片機模擬PT2262進行編碼 2020-05-05
- [電子說] 如何使用單片機模擬PT2262軟件解碼的方法說明 2020-01-21
- [電子說] PT2262/PT2272無線防盜報警器的制作,Wireless burglar alarm 2018-09-20
- [無線/傳感] 基于315m無線模塊的PT2262/PT2272工作原理分析 2018-07-20
- [遙控電路圖] 遙控門鈴電路圖大全(多諧振蕩器\編碼\信號發(fā)生器\TWH630\PT2262) 2018-05-07
- [電子說] pt2262解碼學習總結(jié) 2018-03-04
- [IC應用電路圖] pt2262應用電路圖大全_pt2262編碼電路匯總(五款pt2262應用電路詳解) 2018-03-04
- [無線通信] 基于pt2262的遙控器電路圖 2017-11-14
( 發(fā)表人:陳翠 )