李雪華 齊兵
摘 要
為了有效解決紅外遙控芯片PT2262的系統兼容性問題,根據PT2262的地址碼可編碼屬性,設計并實現了PT2262地址碼解碼系統。該解碼系統能夠準確的、有效的解碼出PT2262的地址碼,并將解碼出的地址碼以及系統工作狀態顯示于LCD1602。文中詳細闡述了PT2262的地址碼結構,說明了解碼系統的設計思路及具體設計方法,給出了實際設計電路。在大量的測試實驗的基礎上,PT2262地址碼解碼系統能夠很好的解碼出測試地址碼,具有可靠性高,穩定性好等優點。這對于保證PT2262系統的完整性具有重要意義。
【關鍵詞】PT2262 單片機 紅外遙控器 地址碼解碼系統
隨著紅外遙控技術的不斷進步與發展,紅外遙控設備以其覆蓋范圍廣、成本低、穩定性好,可靠性高等優點而被廣泛應用于工業生產設備與民用設備。例如,閥門遙控系統、汽車遙控鑰匙等。
在紅外遙控技術的實際應用中,PT2262以其優越的性能而被廣泛運用。PT2262具有地址碼可編碼屬性,相同類型的設備可有不同的地址碼。當基于PT2262的紅外遙控器發生故障需要替換時,地址碼解碼系統解碼其地址碼,并將地址碼賦予替換的新設備,進而保證全系統的穩定運行。
基于此,設計采用單片機的定時器測量脈沖信號寬度的PT2262地址碼解碼系統,并根據數據規約格式解碼信息幀,并得到地址碼。這對于保證PT2262紅外遙控系統的穩定運行,保證PT2262紅外遙控系統的完整性具有重要意義。
1 系統硬件設計
PT2262地址碼解碼系統主要由信號接收電路、MCU電路、信息顯示電路組成。
1.1 信號接收電路
PT2262地址碼解碼系統能夠對接收到的紅外脈沖信號進行解碼操作的先決條件是要能夠完整的接收到紅外發射信號。PT2262的通訊頻率一般選擇通訊頻率為315M、433M的公開頻道,其中多采用433M通訊頻道。因此,選擇433M接收天線作為信號接收電路。信號接收電路如圖1所示:
本設計采用單片機定時器測量脈沖信號寬度。為保證接收天線輸出與單片機輸入的電壓匹配,接收天線的脈沖信號需通過1K限流電阻后直接輸入到單片機的定時器啟動管腳,并通過控制單片機定時器的開關來測量輸入脈沖的實際寬度。
1.2 MCU電路
考慮到脈沖信號對單片機定時器輸入的實際要求以及系統的成本和實際功耗,選擇宏晶公司的單片機STC89C52作為MCU。圖2給出了MCU電路。
由圖2可知,P33和P34短接,P33開啟管腳的第二功能,用來產生外部中斷1。單片機STC89C52的定時器1用來測量脈沖寬度,并開啟定時器1的門控位。當脈沖信號為高電平時,定時器1啟動;當脈沖信號為低電平時,定時器1停止,同時外部中斷1產生。外部中斷1主要用來讀取定時器1停止后的值并清空定時器1。P34即為通用輸入輸出管腳,主要用來判斷通訊碼中的同步碼。P1作為輸出管腳將數據送到LCD1602,P36、P37作為LCD1602的控制管腳。由于單片機STC89C52高電平復位,因此,選用圖2所示復位電路。單片機 STC89C52選用12M晶振,經過時鐘電路的12分頻后,系統的主時鐘為1M,機器周期為1us。
1.3 信息顯示電路
為在本地顯示地址碼,采用LCD1602顯示解碼后的地址碼以及解碼系統狀態。信息顯示電路主要顯示地址碼,同時顯示解碼系統是否完成解碼過程。信息顯示電路如圖3所示。
2 系統程序設計
PT2262地址碼解碼系統的系統程序主要負責脈沖信號的采集和信號幀的解碼。PT2262以433M的固定頻率傳輸按照數據規約格式編碼的通訊數據。由此可知,采集脈沖信號的首要條件是要獲得脈沖信號,然后按照數據規約格式解碼通訊數據。
2.1 脈沖信號采集
采集脈沖信號的關鍵步驟在于單片機STC89C52的定時器是否能夠測量出脈沖信號的最小寬度。已知脈沖信號的振蕩頻率為:
f= (1)
式中,RSOC=100K?,此時,f=320,α=320 us,即脈沖信號的最小寬度為320us。已知單片機STC89C52的定時器1能夠測量的最小時間間隔為1個機器周期,即1us,因此該定時器完全能夠測量出脈沖信號的最小寬度。
因此,利用單片機STC89C52的定時器1測量脈沖信號的寬度。首先,令定時器1工作于16位定時器模式并開啟門控位。然后,令外部中斷EX1處于啟動模式,并時刻響應外部中斷1。當P33接收到高電平脈沖時,啟動定時器1;當P33接收到低電平脈沖時,停止定時器1并激活EX1,中斷程序讀取定時器1的值即為脈沖信號的寬度。讀取完畢后,清空定時器1,為下一次測量脈沖寬度做準備。
2.2 信號幀解碼
PT2262紅外遙控器采用地址碼匹配方式,該方式使得地址碼相同的PT2262紅外遙控器完成雙機通訊。PT2262的地址碼為三態編碼方式,“0”代表地址管腳接低電平,“1”代表地址管腳接高電平,“f”代表地址管腳懸空。PT2262的地址碼為6~12位,最多可實現531441種編碼地址。例如,以8位地址碼為例,三態地址碼可構成6561個編碼地址,這就大大增加了同一系統中PT2262紅外遙控設備容量。
當測得一個完整的信號幀后,系統程序需要對此信號幀進行解碼。PT2262的一個完整的信號幀由同步碼、地址碼、數據碼依次組成。在解碼時,PT2262地址碼解碼系統只需要解算同步碼和地址碼即可。圖4給出了信號幀的代碼格式。
2.2.1 同步碼
信號幀是以同步碼為起始。如圖4可知,一個完整的信號幀由32個振蕩周期構成。同步碼由4個振蕩周期的高電平和28個振蕩周期的低電平組成。根據同步碼的特點,宜采用判斷同步碼中低電平脈沖寬度的方法,即計數P34為低電平時的機器周期。由式(1)可知,脈沖信號最小寬度為320us,則同步碼的低電平脈沖寬度為:
D=28α=0.0875s (2)
由式(2)可知,當低電平脈沖寬度超過0.0875s時,即認為此碼為同步碼。
2.2.2 地址碼
采集到同步碼后,系統程序立即采集地址碼。系統程序根據定時器1的值來確定高電平脈沖寬度,進而根據同一信息幀中的兩個高電平脈沖寬度確定對應的地址碼。
如圖4可知,地址碼“0”碼依次由4個振蕩周期的高電平和12個振蕩周期的低電平組成半幀信號幀,并重復此半幀信號幀構成一個完整的信號幀;地址碼“1”碼依次由12個振蕩周期的高電平和4個振蕩周期的低電平組成半幀信號幀,并重復此半幀信號幀構成一個完整的信號幀;地址碼“f”碼依次由半幀地址碼“0”碼和半幀地址碼“1”碼依次組成。基于此,系統程序即可判斷出信號幀中地址碼的具體含義,從而實現解碼PT2262紅外遙控器的地址碼。
3 結束語
對PT2262地址碼解碼系統進行大量的地址碼測試實驗,根據實驗結果可知,PT2262地址碼解碼系統能夠很好的對紅外遙控器發射端的地址碼進行解碼,實際解碼結果均正確無誤。
紅外遙控器解碼系統具有成本低,應用范圍廣,穩定性好、可靠性高等優點。同時,對于紅外設備的廣泛應用具有重要的實際意義。
參考文獻
[1]張毅剛.單片機原理及應用[M].北京:高等教育出版社,2004.
[2]周國運.單片機原理與接口技術[M].北京:清華大學出版社,2014.
[3]江思敏.PCB和電磁兼容設計[M].北京:高等教育出版社,2008.
[4]Princeton Technology Corp. Romote Control Encoder PT2262,2008.
作者單位
1.哈爾濱光宇電氣自動化有限公司 黑龍江省哈爾濱市 150078
2.哈爾濱工程大學自動化學院 黑龍江省哈爾濱市 150001endprint
摘 要
為了有效解決紅外遙控芯片PT2262的系統兼容性問題,根據PT2262的地址碼可編碼屬性,設計并實現了PT2262地址碼解碼系統。該解碼系統能夠準確的、有效的解碼出PT2262的地址碼,并將解碼出的地址碼以及系統工作狀態顯示于LCD1602。文中詳細闡述了PT2262的地址碼結構,說明了解碼系統的設計思路及具體設計方法,給出了實際設計電路。在大量的測試實驗的基礎上,PT2262地址碼解碼系統能夠很好的解碼出測試地址碼,具有可靠性高,穩定性好等優點。這對于保證PT2262系統的完整性具有重要意義。
【關鍵詞】PT2262 單片機 紅外遙控器 地址碼解碼系統
隨著紅外遙控技術的不斷進步與發展,紅外遙控設備以其覆蓋范圍廣、成本低、穩定性好,可靠性高等優點而被廣泛應用于工業生產設備與民用設備。例如,閥門遙控系統、汽車遙控鑰匙等。
在紅外遙控技術的實際應用中,PT2262以其優越的性能而被廣泛運用。PT2262具有地址碼可編碼屬性,相同類型的設備可有不同的地址碼。當基于PT2262的紅外遙控器發生故障需要替換時,地址碼解碼系統解碼其地址碼,并將地址碼賦予替換的新設備,進而保證全系統的穩定運行。
基于此,設計采用單片機的定時器測量脈沖信號寬度的PT2262地址碼解碼系統,并根據數據規約格式解碼信息幀,并得到地址碼。這對于保證PT2262紅外遙控系統的穩定運行,保證PT2262紅外遙控系統的完整性具有重要意義。
1 系統硬件設計
PT2262地址碼解碼系統主要由信號接收電路、MCU電路、信息顯示電路組成。
1.1 信號接收電路
PT2262地址碼解碼系統能夠對接收到的紅外脈沖信號進行解碼操作的先決條件是要能夠完整的接收到紅外發射信號。PT2262的通訊頻率一般選擇通訊頻率為315M、433M的公開頻道,其中多采用433M通訊頻道。因此,選擇433M接收天線作為信號接收電路。信號接收電路如圖1所示:
本設計采用單片機定時器測量脈沖信號寬度。為保證接收天線輸出與單片機輸入的電壓匹配,接收天線的脈沖信號需通過1K限流電阻后直接輸入到單片機的定時器啟動管腳,并通過控制單片機定時器的開關來測量輸入脈沖的實際寬度。
1.2 MCU電路
考慮到脈沖信號對單片機定時器輸入的實際要求以及系統的成本和實際功耗,選擇宏晶公司的單片機STC89C52作為MCU。圖2給出了MCU電路。
由圖2可知,P33和P34短接,P33開啟管腳的第二功能,用來產生外部中斷1。單片機STC89C52的定時器1用來測量脈沖寬度,并開啟定時器1的門控位。當脈沖信號為高電平時,定時器1啟動;當脈沖信號為低電平時,定時器1停止,同時外部中斷1產生。外部中斷1主要用來讀取定時器1停止后的值并清空定時器1。P34即為通用輸入輸出管腳,主要用來判斷通訊碼中的同步碼。P1作為輸出管腳將數據送到LCD1602,P36、P37作為LCD1602的控制管腳。由于單片機STC89C52高電平復位,因此,選用圖2所示復位電路。單片機 STC89C52選用12M晶振,經過時鐘電路的12分頻后,系統的主時鐘為1M,機器周期為1us。
1.3 信息顯示電路
為在本地顯示地址碼,采用LCD1602顯示解碼后的地址碼以及解碼系統狀態。信息顯示電路主要顯示地址碼,同時顯示解碼系統是否完成解碼過程。信息顯示電路如圖3所示。
2 系統程序設計
PT2262地址碼解碼系統的系統程序主要負責脈沖信號的采集和信號幀的解碼。PT2262以433M的固定頻率傳輸按照數據規約格式編碼的通訊數據。由此可知,采集脈沖信號的首要條件是要獲得脈沖信號,然后按照數據規約格式解碼通訊數據。
2.1 脈沖信號采集
采集脈沖信號的關鍵步驟在于單片機STC89C52的定時器是否能夠測量出脈沖信號的最小寬度。已知脈沖信號的振蕩頻率為:
f= (1)
式中,RSOC=100K?,此時,f=320,α=320 us,即脈沖信號的最小寬度為320us。已知單片機STC89C52的定時器1能夠測量的最小時間間隔為1個機器周期,即1us,因此該定時器完全能夠測量出脈沖信號的最小寬度。
因此,利用單片機STC89C52的定時器1測量脈沖信號的寬度。首先,令定時器1工作于16位定時器模式并開啟門控位。然后,令外部中斷EX1處于啟動模式,并時刻響應外部中斷1。當P33接收到高電平脈沖時,啟動定時器1;當P33接收到低電平脈沖時,停止定時器1并激活EX1,中斷程序讀取定時器1的值即為脈沖信號的寬度。讀取完畢后,清空定時器1,為下一次測量脈沖寬度做準備。
2.2 信號幀解碼
PT2262紅外遙控器采用地址碼匹配方式,該方式使得地址碼相同的PT2262紅外遙控器完成雙機通訊。PT2262的地址碼為三態編碼方式,“0”代表地址管腳接低電平,“1”代表地址管腳接高電平,“f”代表地址管腳懸空。PT2262的地址碼為6~12位,最多可實現531441種編碼地址。例如,以8位地址碼為例,三態地址碼可構成6561個編碼地址,這就大大增加了同一系統中PT2262紅外遙控設備容量。
當測得一個完整的信號幀后,系統程序需要對此信號幀進行解碼。PT2262的一個完整的信號幀由同步碼、地址碼、數據碼依次組成。在解碼時,PT2262地址碼解碼系統只需要解算同步碼和地址碼即可。圖4給出了信號幀的代碼格式。
2.2.1 同步碼
信號幀是以同步碼為起始。如圖4可知,一個完整的信號幀由32個振蕩周期構成。同步碼由4個振蕩周期的高電平和28個振蕩周期的低電平組成。根據同步碼的特點,宜采用判斷同步碼中低電平脈沖寬度的方法,即計數P34為低電平時的機器周期。由式(1)可知,脈沖信號最小寬度為320us,則同步碼的低電平脈沖寬度為:
D=28α=0.0875s (2)
由式(2)可知,當低電平脈沖寬度超過0.0875s時,即認為此碼為同步碼。
2.2.2 地址碼
采集到同步碼后,系統程序立即采集地址碼。系統程序根據定時器1的值來確定高電平脈沖寬度,進而根據同一信息幀中的兩個高電平脈沖寬度確定對應的地址碼。
如圖4可知,地址碼“0”碼依次由4個振蕩周期的高電平和12個振蕩周期的低電平組成半幀信號幀,并重復此半幀信號幀構成一個完整的信號幀;地址碼“1”碼依次由12個振蕩周期的高電平和4個振蕩周期的低電平組成半幀信號幀,并重復此半幀信號幀構成一個完整的信號幀;地址碼“f”碼依次由半幀地址碼“0”碼和半幀地址碼“1”碼依次組成。基于此,系統程序即可判斷出信號幀中地址碼的具體含義,從而實現解碼PT2262紅外遙控器的地址碼。
3 結束語
對PT2262地址碼解碼系統進行大量的地址碼測試實驗,根據實驗結果可知,PT2262地址碼解碼系統能夠很好的對紅外遙控器發射端的地址碼進行解碼,實際解碼結果均正確無誤。
紅外遙控器解碼系統具有成本低,應用范圍廣,穩定性好、可靠性高等優點。同時,對于紅外設備的廣泛應用具有重要的實際意義。
參考文獻
[1]張毅剛.單片機原理及應用[M].北京:高等教育出版社,2004.
[2]周國運.單片機原理與接口技術[M].北京:清華大學出版社,2014.
[3]江思敏.PCB和電磁兼容設計[M].北京:高等教育出版社,2008.
[4]Princeton Technology Corp. Romote Control Encoder PT2262,2008.
作者單位
1.哈爾濱光宇電氣自動化有限公司 黑龍江省哈爾濱市 150078
2.哈爾濱工程大學自動化學院 黑龍江省哈爾濱市 150001endprint
摘 要
為了有效解決紅外遙控芯片PT2262的系統兼容性問題,根據PT2262的地址碼可編碼屬性,設計并實現了PT2262地址碼解碼系統。該解碼系統能夠準確的、有效的解碼出PT2262的地址碼,并將解碼出的地址碼以及系統工作狀態顯示于LCD1602。文中詳細闡述了PT2262的地址碼結構,說明了解碼系統的設計思路及具體設計方法,給出了實際設計電路。在大量的測試實驗的基礎上,PT2262地址碼解碼系統能夠很好的解碼出測試地址碼,具有可靠性高,穩定性好等優點。這對于保證PT2262系統的完整性具有重要意義。
【關鍵詞】PT2262 單片機 紅外遙控器 地址碼解碼系統
隨著紅外遙控技術的不斷進步與發展,紅外遙控設備以其覆蓋范圍廣、成本低、穩定性好,可靠性高等優點而被廣泛應用于工業生產設備與民用設備。例如,閥門遙控系統、汽車遙控鑰匙等。
在紅外遙控技術的實際應用中,PT2262以其優越的性能而被廣泛運用。PT2262具有地址碼可編碼屬性,相同類型的設備可有不同的地址碼。當基于PT2262的紅外遙控器發生故障需要替換時,地址碼解碼系統解碼其地址碼,并將地址碼賦予替換的新設備,進而保證全系統的穩定運行。
基于此,設計采用單片機的定時器測量脈沖信號寬度的PT2262地址碼解碼系統,并根據數據規約格式解碼信息幀,并得到地址碼。這對于保證PT2262紅外遙控系統的穩定運行,保證PT2262紅外遙控系統的完整性具有重要意義。
1 系統硬件設計
PT2262地址碼解碼系統主要由信號接收電路、MCU電路、信息顯示電路組成。
1.1 信號接收電路
PT2262地址碼解碼系統能夠對接收到的紅外脈沖信號進行解碼操作的先決條件是要能夠完整的接收到紅外發射信號。PT2262的通訊頻率一般選擇通訊頻率為315M、433M的公開頻道,其中多采用433M通訊頻道。因此,選擇433M接收天線作為信號接收電路。信號接收電路如圖1所示:
本設計采用單片機定時器測量脈沖信號寬度。為保證接收天線輸出與單片機輸入的電壓匹配,接收天線的脈沖信號需通過1K限流電阻后直接輸入到單片機的定時器啟動管腳,并通過控制單片機定時器的開關來測量輸入脈沖的實際寬度。
1.2 MCU電路
考慮到脈沖信號對單片機定時器輸入的實際要求以及系統的成本和實際功耗,選擇宏晶公司的單片機STC89C52作為MCU。圖2給出了MCU電路。
由圖2可知,P33和P34短接,P33開啟管腳的第二功能,用來產生外部中斷1。單片機STC89C52的定時器1用來測量脈沖寬度,并開啟定時器1的門控位。當脈沖信號為高電平時,定時器1啟動;當脈沖信號為低電平時,定時器1停止,同時外部中斷1產生。外部中斷1主要用來讀取定時器1停止后的值并清空定時器1。P34即為通用輸入輸出管腳,主要用來判斷通訊碼中的同步碼。P1作為輸出管腳將數據送到LCD1602,P36、P37作為LCD1602的控制管腳。由于單片機STC89C52高電平復位,因此,選用圖2所示復位電路。單片機 STC89C52選用12M晶振,經過時鐘電路的12分頻后,系統的主時鐘為1M,機器周期為1us。
1.3 信息顯示電路
為在本地顯示地址碼,采用LCD1602顯示解碼后的地址碼以及解碼系統狀態。信息顯示電路主要顯示地址碼,同時顯示解碼系統是否完成解碼過程。信息顯示電路如圖3所示。
2 系統程序設計
PT2262地址碼解碼系統的系統程序主要負責脈沖信號的采集和信號幀的解碼。PT2262以433M的固定頻率傳輸按照數據規約格式編碼的通訊數據。由此可知,采集脈沖信號的首要條件是要獲得脈沖信號,然后按照數據規約格式解碼通訊數據。
2.1 脈沖信號采集
采集脈沖信號的關鍵步驟在于單片機STC89C52的定時器是否能夠測量出脈沖信號的最小寬度。已知脈沖信號的振蕩頻率為:
f= (1)
式中,RSOC=100K?,此時,f=320,α=320 us,即脈沖信號的最小寬度為320us。已知單片機STC89C52的定時器1能夠測量的最小時間間隔為1個機器周期,即1us,因此該定時器完全能夠測量出脈沖信號的最小寬度。
因此,利用單片機STC89C52的定時器1測量脈沖信號的寬度。首先,令定時器1工作于16位定時器模式并開啟門控位。然后,令外部中斷EX1處于啟動模式,并時刻響應外部中斷1。當P33接收到高電平脈沖時,啟動定時器1;當P33接收到低電平脈沖時,停止定時器1并激活EX1,中斷程序讀取定時器1的值即為脈沖信號的寬度。讀取完畢后,清空定時器1,為下一次測量脈沖寬度做準備。
2.2 信號幀解碼
PT2262紅外遙控器采用地址碼匹配方式,該方式使得地址碼相同的PT2262紅外遙控器完成雙機通訊。PT2262的地址碼為三態編碼方式,“0”代表地址管腳接低電平,“1”代表地址管腳接高電平,“f”代表地址管腳懸空。PT2262的地址碼為6~12位,最多可實現531441種編碼地址。例如,以8位地址碼為例,三態地址碼可構成6561個編碼地址,這就大大增加了同一系統中PT2262紅外遙控設備容量。
當測得一個完整的信號幀后,系統程序需要對此信號幀進行解碼。PT2262的一個完整的信號幀由同步碼、地址碼、數據碼依次組成。在解碼時,PT2262地址碼解碼系統只需要解算同步碼和地址碼即可。圖4給出了信號幀的代碼格式。
2.2.1 同步碼
信號幀是以同步碼為起始。如圖4可知,一個完整的信號幀由32個振蕩周期構成。同步碼由4個振蕩周期的高電平和28個振蕩周期的低電平組成。根據同步碼的特點,宜采用判斷同步碼中低電平脈沖寬度的方法,即計數P34為低電平時的機器周期。由式(1)可知,脈沖信號最小寬度為320us,則同步碼的低電平脈沖寬度為:
D=28α=0.0875s (2)
由式(2)可知,當低電平脈沖寬度超過0.0875s時,即認為此碼為同步碼。
2.2.2 地址碼
采集到同步碼后,系統程序立即采集地址碼。系統程序根據定時器1的值來確定高電平脈沖寬度,進而根據同一信息幀中的兩個高電平脈沖寬度確定對應的地址碼。
如圖4可知,地址碼“0”碼依次由4個振蕩周期的高電平和12個振蕩周期的低電平組成半幀信號幀,并重復此半幀信號幀構成一個完整的信號幀;地址碼“1”碼依次由12個振蕩周期的高電平和4個振蕩周期的低電平組成半幀信號幀,并重復此半幀信號幀構成一個完整的信號幀;地址碼“f”碼依次由半幀地址碼“0”碼和半幀地址碼“1”碼依次組成。基于此,系統程序即可判斷出信號幀中地址碼的具體含義,從而實現解碼PT2262紅外遙控器的地址碼。
3 結束語
對PT2262地址碼解碼系統進行大量的地址碼測試實驗,根據實驗結果可知,PT2262地址碼解碼系統能夠很好的對紅外遙控器發射端的地址碼進行解碼,實際解碼結果均正確無誤。
紅外遙控器解碼系統具有成本低,應用范圍廣,穩定性好、可靠性高等優點。同時,對于紅外設備的廣泛應用具有重要的實際意義。
參考文獻
[1]張毅剛.單片機原理及應用[M].北京:高等教育出版社,2004.
[2]周國運.單片機原理與接口技術[M].北京:清華大學出版社,2014.
[3]江思敏.PCB和電磁兼容設計[M].北京:高等教育出版社,2008.
[4]Princeton Technology Corp. Romote Control Encoder PT2262,2008.
作者單位
1.哈爾濱光宇電氣自動化有限公司 黑龍江省哈爾濱市 150078
2.哈爾濱工程大學自動化學院 黑龍江省哈爾濱市 150001endprint