首先我們明確要實現的效果:
實現 CH340 通過 Type - C 接口下載程序到單片機
1、前置知識
首先我們要知道 ch340 和typec的作用分別是什么
CH340 作用(usb-ttl)
CH340 是一種 USB 轉串口芯片 。其主要作用是實現 USB 總線與異步串行接口之間的轉換,充當 USB 轉串口或 USB 轉打印口的橋接器。通過它,計算機能利用 USB 接口與外部串行設備(如單片機開發板、嵌入式系統、工業自動化設備、老式串行設備等 )進行通信。具體表現為:
將設備的串口信號轉換為 USB 信號,使沒有串口的計算機能通過 USB 與串口設備相連,拓展計算機的連接能力。比如為沒有內置 USB 功能的微控制器添加 USB 接口,方便編程和調試 。
Type - C 是一種新一代的 USB 接口標準,是物理層面的。
2、電源接線
略,注意共地就行。
3、數據線連接
3.1? ?CH340與主機(如電腦 )之間的數據交互
D + 和 D - 差分信號和主機電腦進行交互
CH340 芯片的 D+(一般是 5 號腳 )和 D-(一般是 6 號腳 )引腳,對應連接到 Type - C 接口中的 D + 和 D - 引腳。這兩根線用于 USB 數據信號傳輸,實現芯片與主機(如電腦 )之間的數據交互。
3.2? ?CH340 芯片和單片機MCU進行通信
CH340 芯片的 TXD和 RXD和主控MCU的串口連接進行通信
TXD 和 RXD 引腳:CH340 芯片的 TXD(串行數據輸出,一般是 2 號腳 )和 RXD(串行數據輸入,一般是 3 號腳 )引腳,連接到目標設備(如單片機 )對應的串口接收和發送引腳。比如在 STM32 單片機下載程序場景中,若通過串口 1 下載,CH340 的 TXD 連到 STM32 的 PA10(RX ),RXD 連到 PA9(TX ) 。
3.3自動下載電路引腳
RTS# 和 DTR#?
不使用 RTS# 和 DTR# 引腳的情況
手動操作燒錄:以一些簡單的單片機開發板為例,在燒錄程序時,你需要手動按下復位按鍵,讓目標設備進入燒錄模式,接著再借助上位機軟件把程序燒錄進去。在這個過程中,數據的傳輸通過 D+、D - 、TXD 和 RXD 引腳來完成,RTS# 和 DTR# 引腳不發揮作用。
使用 RTS# 和 DTR# 引腳的情況
實現自動下載功能:當你期望實現自動下載功能時,RTS# 和 DTR# 引腳就非常關鍵了。在燒錄程序前,上位機可以通過控制 RTS# 和 DTR# 引腳的電平,自動控制目標設備進入燒錄模式并完成復位操作。例如,在使用 CH340 芯片給 STM32 單片機燒錄程序時,借助 RTS# 和 DTR# 引腳的配合,上位機能夠自動控制 STM32 單片機進入系統存儲器引導模式,從而實現程序的自動下載,這極大地提高了燒錄效率,特別是在需要頻繁燒錄程序的開發過程中優勢明顯。
3.4??RTS# 和 DTR#?引腳的接線
所需器件
為了實現自動下載功能,通常需要用到三極管、電阻等元件,三極管常被用作電子開關,來控制目標設備(如單片機)的復位引腳和啟動模式選擇引腳。
接線原理
RTS# 引腳:一般用于控制目標設備進入下載模式。通過改變 RTS# 引腳的電平,經過三極管等組成的電路,控制目標設備的啟動模式選擇引腳(如 BOOT 引腳)的電平,從而使目標設備進入下載模式。
DTR# 引腳:主要用于控制目標設備的復位。當 DTR# 引腳的電平發生變化時,通過三極管等電路,控制目標設備的復位引腳(如 RST 引腳),實現目標設備的復位操作。