STM8 IrDA紅外功能 通過設置UART_CR5寄存器的IREN位選擇IrDA模式。UART_CR3寄存器的STOP位必須設置成"1個停止位"。在IRDA模式里,下列位必須保持清零:
IrDA SIR物理層規定使用反相歸零調制方案(RZI),該方案用一個紅外光脈沖代表邏輯'0'(見圖114)。 SIR發送編碼器對從UART輸出的NRZ(非歸零)比特流進行調制。輸出脈沖流被傳送到一個外部輸出驅動器和紅外LED。對于SIR ENDEC應用,UART最高只支持到115.2Kbps速率。在正常模式里,脈沖寬度規定為一個位周期的3/16。 SIR接收解碼器對來自紅外接收器的歸零位比特流進行解調,并將接收到的NRZ串行比特流輸出到UART。在空閑狀態里,解碼器輸入通常是高(標記狀態marking state)。發送編碼器輸出的極性和解碼器的輸入相反。當解碼器輸入低時,檢測到一個起始位。
IrDA可以工作在正常模式,也可以工作在低功耗模式。選擇低功耗模式需要把UART_CR5寄存器的IRLP位置1。 發送器 在低功耗模式,脈沖寬度不再持續3/16個位周期。取而代之,脈沖的寬度是低功耗波特率時鐘周期的3倍,該波特率的頻率最小可以是1.42MHz。通常這個值是1.8432MHz(1.42 MHz<PSC<2.12 MHz)。一個低功耗模式可編程分頻器把系統時鐘進行分頻以達到這個值。 接收器 低功耗模式的接收類似于正常模式的接收。 為了濾除尖峰干擾脈沖,UART應該濾除寬度短于1個周期的脈沖。只有持續時間大于2個周期的IrDA低功耗波特率時鐘(UART_GTPR中的PSC)的低電平信號才被接受為有效的信號。 注意:1.寬度小于2個大于1個PSC周期的脈沖可能會也可能不會被濾除。 2.接收器的建立時間應該由軟件管理。IrDA物理層技術規范規定了在發送和接收之間最小要有協10ms的延時(IrDA是一個半雙工議)。 ![]() (圖114:STM8_IrDA SIR ENDEC–框圖) ![]() (圖115:STM8_IrDA數據調制(3/16)–普通模式) |
歡迎光臨 (http://www.zg4o1577.cn/bbs/) | Powered by Discuz! X3.1 |