新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于USB口的智能遙控信號發射裝置的設計

        基于USB口的智能遙控信號發射裝置的設計

        作者: 時間:2013-08-06 來源:網絡 收藏

        2 軟件設計

          軟件的設計按前面的工作流程來,分為各個模塊化來分別設計,主要包含的程序模塊有:串口初始化、PC和單片機的串口通信,單片機對PC傳輸過來的數據進行解讀和數據的編碼設計、以及數據的無線發射這幾個子程序塊。

        基于USB口的智能遙控信號發射裝置的設計

        圖3 無線發射模塊電路

          2.1 編碼規則的確定

          手動遙控器中使用的是PT2262芯片,雖然可以查到PT2262/PT2272編碼規則,但是為了慎重起見必須重新用示波器測量其編碼規則。當按下遙控器上的一個按鈕后用示波器測量其發射波形,繪制出波形圖。通過比對和計算,確定了手動遙控器的編碼規則為:同步碼+八位地址碼+四位數據碼。其中每一位碼都有高阻、高電平和低電平3種狀態,每種狀態的波形圖如圖4所示。同步碼長度為128a其中前4a個時間內為窄脈沖。

        基于USB口的智能遙控信號發射裝置的設計

        圖4 PT2262的位脈沖波形

          2.2 延時的設定

          在程序設計中主要的延時有以下幾個:a、4a、12a和124a的精確設定,通過測量手動遙控器中對應的最小延時單位a為120μs,由此編寫精確的單片機延時程序。同時在編程設定延時的時候,要考慮全面,值得注意的是在該系統中才用的單片機芯片的指令運算速度是傳統51系列單片機的6倍,這4個基準延時的設定要盡量減少偏差,為了提高精度,要把執行每條指令消耗的時間算進去。

          同時對于4a和12a的延時編程不能簡單的用將a的延時重復執行若干次來完成,否則會有較大的誤差,不能被正確解碼。延時的設定要通過反復計算和測量看是否精確,不精確則進行修改。

          2.3 模擬脈沖編碼

          根據PT2262/PT2272協議,同時通過對手動遙控器的發射波形進行測量知道,單片機的模擬編碼應該分為3部分,即同步碼、地址碼和數據碼。

          地址碼和數據碼本來各有3種狀態,即高電平、低電平和高阻狀態。手動遙控器中地址碼在焊接電路時已經被固定,測量的編碼為高阻狀態,4位數據碼分別由4個按鈕控制,所以都只有高電平和低電平2種狀態,在遙控的時候只能按一個按鈕,所以一個手動遙控器只有4種不同的編碼,因此一個手動遙控器最多只能控制4個不同的終端。但是在單片機進行編碼的時候可以不受控制靈活多變,如果用1和0來表示高低電平這兩種狀態來編碼的話,那么最多可以控制212個不同的終端,如果用00、01、10來表示這3種狀態的話,那么最多可以控制312個不同的終端。在普通的工作環境中僅用1和0兩種狀態來編碼就已經能夠滿足一般設計需求。

          在用單片機進行模擬脈沖編碼的時候,通過USB轉串口模塊送過來的數據流進行相應的算法轉換來確定8位地址碼和4位數據碼的每一位應有的狀態,再通過調用不同的基準延時來模擬不同狀態編碼,從而構成模擬的12位的波形編碼,同時在最后還要加上模擬的同步碼,同步碼可以獨立編一個程序,直接調用插入即可。這樣通過單片機的軟件編程完成模擬的PT2262芯片編碼。

        萬能遙控器相關文章:萬能遙控器代碼


        模擬信號相關文章:什么是模擬信號


        手機電池相關文章:手機電池修復




        評論


        技術專區

        關閉
        主站蜘蛛池模板: 邻水| 乡城县| 礼泉县| 中方县| 焉耆| 将乐县| 大厂| 恩施市| 龙海市| 砀山县| 延安市| 航空| 天峻县| 江城| 定襄县| 清水河县| 成武县| 启东市| 卢氏县| 饶河县| 即墨市| 双鸭山市| 喜德县| 祁门县| 青铜峡市| 迭部县| 南乐县| 丹江口市| 河东区| 丹棱县| 河间市| 治县。| 定州市| 海口市| 吐鲁番市| 大同县| 本溪市| 三原县| 榆中县| 保亭| 库尔勒市|