基于CH341A的USB串口通訊設計
2.2 MCU與PC之間USB通訊適配
該適配電路適用于計算機無RS232接口,卻需進行RS232通訊的數據采集系統,MCU進行底層相關數據的采集與存儲,然后在上位機的控制下通過適配電路進行數據的傳遞。MCU與PC機通過USB接口進行通訊的適配器原理電路如圖5所示,在本設計中MCU采用microchip公司的PIC1 6F877A,利用MCU的串口模塊,可以與CH341A直接構成3線串口通訊方式,經過CH341A轉換后,通過USB接口與PC機相連。當PC串口通訊波特率較高或者單片機來不及接收,利用MCU的RD0引腳控制CH341A的TEN#引腳,當MCU空閑且可以接收串口數據時置TEN#為低電平,當單片機較忙或者不便于接收串口數據時置TEN#為高電平。使CH341A暫停發送下一個字節,實現速率控制。本文引用地址:http://www.104case.com/article/172896.htm
單片機軟件流程如圖6所示,系統初始化完成I/O口、看門狗等設置;串口初始化進行波特率、檢驗位、通訊方式等設置。
上位機軟件向單片機發送一個指令,當單片機檢測到該指令后判斷是否有鍵按下,如果有,則進行相應鍵值的判斷,根據鍵值的不同向上位機發送不同的數據。在對本電路測試中,上位機指令代碼為“CCh”,單片機發送的數據與鍵值相對應,如按下1號鍵,發送數據“01h”,測試結果如圖7所示。
上述兩種產品結構緊湊,體積小巧,通訊可靠,可以滿足絕大多數應用場合的需求,但在通訊速率的設置上,應盡量采用CH341推薦的波特率,否則可能出現通訊異常的情況。
實際上,CH341推薦的波特率基本涵蓋了各類通訊軟件及產品所采用的波特率,也與51系列MCU采用11.059 2 MHz晶振時設置的波特率相兼容,因此,推薦波特率也可以滿足各種場合的需求。
3 結束語
CH341A作為一種新型的、功能強大的USB接口轉換芯片,可以工作在多種模式,且接線簡單、控制方便、使用靈活,可滿足用戶的多種需求。由于CH341A屏蔽了USB接口的底層協議,可以方便地在嵌入式系統中增加USB接口,無需電平轉換器件,在驅動程序的控制下直接與PC機通訊,極大地方便了用戶,縮短開發周期、減少研發費用。
數字通信相關文章:數字通信原理
通信相關文章:通信原理
評論