紅外通信的設計與實(shí)現
5.3 接收端信號的輸入捕捉設計
將TPM2的狀態(tài)控制寄存器的位CPWMS置0,則TPM2可以工作在輸入捕捉模式、輸出比較模式、邊沿脈沖輸出模式;為使TPM2通道0工作在輸入捕捉方式,需要進(jìn)一步設置TPM2通道0狀態(tài)控制寄存器,將TPM2C0SC的模式選擇位MS0B:MS0A設置為00,選擇了輸入捕捉方式,此外,要設置捕捉發(fā)生在什么條件下,那么需要設置TPM2COSC中的極性選擇位ELS0B:ELS0A,使其為01,目的是在該引腳出現上升沿時(shí)發(fā)生捕捉。在發(fā)生捕捉時(shí),通道值寄存器會(huì )將定時(shí)寄存器的值進(jìn)行鎖存,因此比較兩次輸入捕捉時(shí),通道值寄存器的內容,根據編碼規則,可知道該值對應的編碼是‘1’或‘0’。此外通道值寄存器是16位的,如果希望通過(guò)串口調試窗口查看比較結果,因為串口接收數據緩沖寄存器是8位的,那么可以將其分解為兩個(gè)8位的數據通過(guò)串口發(fā)送。
以下是輸入捕捉的中斷子程序:
程序功能描述:將捕捉的數據發(fā)往串口查看,這樣不管用什么發(fā)射器,都可以通過(guò)觀(guān)察串口數據得到識別碼,完成不同的功能。
6 結語(yǔ)
紅外通信一般用在低數據速率,并且短距離的場(chǎng)合中,因此需要低功耗的運行要求。而Freescale的這款單片機工作電壓可達到1.8 V,在單片機空閑方式下,通過(guò)設置SOPT和SPMSC兩個(gè)寄存器來(lái)設計不同的停止低功耗模式,或者執行一條WAIT指令,使單片機進(jìn)入等待的低功耗模式,這里就不再詳細講述其實(shí)現過(guò)程。MC9S08GT60單片機與其他低電壓、低功耗的單片機不同之處在于,它并非是以犧牲性能為代價(jià)來(lái)?yè)Q取1.8 V的低電壓。因此本文使用該單片機討論了發(fā)送和接收紅外電路的設計過(guò)程及通信協(xié)議的運用,該系統的設計切實(shí)可行,對紅外控制開(kāi)發(fā)者有一定的幫助。
評論