USB(TYPE-C)轉串口(TTL)模塊設計講解

目錄

一 、引言

二、方案設計

三、USB TYPE-C介紹

1、TYPE-C接口定義

? ? ? ? 1、24P全引腳描述

? ? ? ? 2、Type C 接口 VBUS/GND?作用

? ? ? ?3、Type C 接口 D+/D- 作用

? ? ? ? 1、數據傳輸:

? ? ? ? 2、設備識別:

? ? ? ? 3、充電協議協商:

? ? ? ? 4、Type C 接口 CC1/CC2 作用

? ? ? ? 1、主從設備區分

? ? ? ? 2、設備連接檢測

? ? ? ? 3、正反插確認

? ? ? ? 4、USB PD 通信

? ? ? ? 5、Type C 接口 SBU1/SBU2 作用

? ? ? ? 6、Type C 接口 SSTX/SSRX 作用

2、TYPE-C接口特點? ?

? ? ? ? 1、24P Type C

? ? ? ? 2、16P/12P Type C

? ? ? ? 3、6P Type C

3、TYPE-C引腳總結??

四、USB轉UART芯片介紹

五、USB轉UART電路設計

六、電路完成截圖

七、文件下載鏈接


一 、引言

? ? ? ? USB TYPE-C(簡稱:TYPE-C)是目前主流的連接端口,而在單片機的開發中,TTL信號更是必不可少的通訊方式,目前市場上也有著不少USB轉串口的商品設計,低端的價格也相對親民,而稍微高端的也會價格不菲。

????????今天,我們來設計一款USB轉TTL模塊。

二、方案設計

? ? ? ? USB TYPE-C端口? +? 四路串口輸出

三、USB TYPE-C介紹

1、TYPE-C接口定義

????????按以下視角引出端子定義

USB TYPE-C母口

USB TYPE-C公口

? ? ? ??

?????????從上圖的 Type C 公頭和母口的引腳排列可以知道 Type C 的引腳功能是中心對稱的,所以公頭無論以什么方向接入母口兩者的功能引腳都可以完美對接。

? ? ? ? 1、24P全引腳描述

Pin名稱功能描述Pin名稱功能描述
A1GNDB12GND
A2SSTXp1SuperSpeed 差分信號 #1 的發送正端B11SSRXp1SuperSpeed 差分信號 #1 的接收正端
A3SSTXn1SuperSpeed 差分信號 #1 的發送負端B10SSRXn1SuperSpeed 差分信號 #1 的接收負端
A4VBUS總線電源B9VBUS總線電源
A5CC1Configuration Channel 1,即 “配置通道 1”B8SBU2Side Band Use 1,即輔助使用2
A6Dp1Data Positive 1,即 USB 2.0 差分信號 1 的正端B7Dn1Data Negative 1,即 USB 2.0 差分信號 1 的負端
A7Dn1Data Negative 1,即 USB 2.0 差分信號 1 的負端B6Dp1Data Positive 1,即 USB 2.0 差分信號 1 的正端
A8SBU1Side Band Use 1,即輔助使用1B5CC2Configuration Channel 2,即 “配置通道 2”
A9VBUS總線電源B4VBUS總線電源
A10SSRXn2SuperSpeed 差分信號 #2 的發送正端B3SSTXn2SuperSpeed 差分信號 #2 的接收正端
A11SSRXp2SuperSpeed 差分信號 #2 的發送負端B2SSTXp2SuperSpeed 差分信號 #2 的接收負端
A12GNDB1GND

? ? ? ?

? ? ? ? 2、Type C 接口 VBUS/GND?作用

Pin名稱功能描述Pin名稱功能描述
A1GNDB12GND
A4VBUS總線電源B9VBUS總線電源
A9VBUS總線電源B4VBUS總線電源
A12GNDB1GND

? ? ? ? GND大家都可以理解,而VBUS大家可能不常見,直接理解為電源VCC即可

? ? ? ?3、Type C 接口 D+/D- 作用

A6Dp1Data Positive 1,即 USB 2.0 差分信號 1 的正端B7Dn1Data Negative 1,即 USB 2.0 差分信號 1 的負端
A7Dn1Data Negative 1,即 USB 2.0 差分信號 1 的負端B6Dp1Data Positive 1,即 USB 2.0 差分信號 1 的正端

? ? ? ? 在電子簡稱中,n是Negative縮寫,意為負,p是?Positive的縮寫,意為正。

????????在 Type - C 接口里,D + 和 D - 屬于 USB 2.0 的差分數據傳輸引腳,它們在數據傳輸和設備識別方面發揮著重要作用。

????????差分信號傳輸是 D + 和 D - 的工作基礎。差分信號傳輸是指通過兩根信號線(即 D + 和 D - )來傳輸幅度相同但相位相反的信號。接收端會對這兩個信號的差值進行檢測,以此來還原原始數據。這種傳輸方式具備很強的抗干擾能力,能夠有效降低外部電磁干擾對信號傳輸的影響,進而保證數據傳輸的穩定性和準確性。

????????主要功能? ? ? ??

? ? ? ? 1、數據傳輸

????????D + 和 D - 主要用于 USB 2.0 協議的數據傳輸,其最高傳輸速率可達 480Mbps。在設備進行數據交換時,如電腦與 U 盤、手機與電腦之間傳輸文件,數據就會通過 D + 和 D - 這一對差分線進行傳輸。

? ? ? ? 2、設備識別

????????在設備連接的初始階段,主機通過檢測 D + 和 D - 上的電平狀態來識別設備的類型和模式。例如,在 USB 通信中,當設備插入主機時,主機通過檢測 D + 和 D - 引腳的上拉電阻情況來判斷設備是高速設備、全速設備還是低速設備。對于全速設備,D + 上有一個 1.5kΩ 的上拉電阻;而對于低速設備,D - 上有一個 1.5kΩ 的上拉電阻。主機根據檢測到的上拉電阻位置來確定設備的速度類型,并相應地調整通信參數。

? ? ? ? 3、充電協議協商

????????某些充電協議也會利用 D + 和 D - 進行通信,以協商充電電壓和電流。例如,在一些手機充電過程中,充電器和手機會通過 D + 和 D - 交換信息,以確定合適的充電參數,實現快速充電功能。

典型應用

? ? ? ? 4、Type C 接口 CC1/CC2 作用

A5CC1Configuration Channel 1,即 “配置通道 1”
B5CC2Configuration Channel 2,即 “配置通道 2”

????????CC1 是 “Configuration Channel 1” 的縮寫,即 “配置通道 1”。在 Type - C 接口中,CC1 引腳與 CC2 引腳共同承擔著配置通道的功能,用于主從設備區分(確定數據傳輸方向)、檢測設備連接、設備角色識別以及 USB PD 通信等。

? ? ? ? 1、主從設備區分

? ? ? ? 做主機時,CC1、CC2接上拉電阻VBUS。

????????做從機時,CC1、CC2接5.1K電阻接地。

????????主設備的 CC 引腳通過上拉電阻 Rp 連接到 VBUS,標識其供電能力。例如,常見的電阻值 56kΩ/22kΩ 可表示不同的電流能力。

????????從設備的 CC 引腳則通過下拉電阻 Rd 連接到 GND,標識其受電需求,通常下拉電阻 Rd 為 5.1kΩ。

? ? ? ? 需要說明的一點時,并非所有設備主機、從機設備都是固定的,有一種雙角色端口,其 CC 引腳能夠動態切換上拉電阻 Rp 和下拉電阻 Rd 的狀態。在初始連接時,設備會隨機確定一個初始角色(主或從),并通過 CC 引腳的電平狀態來告知對方。之后,設備之間可以通過 USB PD 協議進行協商,根據實際需求動態切換主從角色。例如,手機在連接充電器時作為 從設備,接收充電,當手機通過 OTG 線連接 U 盤時,手機可通過 CC 引腳切換為 主設備,為 U 盤供電并讀取數據。

? ? ? ? 2、設備連接檢測

? ? ? ? 以手機及充電器為例:未連接時,充電器的 VBUS 無輸出,CC 引腳由于上拉電阻處于高電平。當手機通過 CC 引腳與充電器 連接后,充電器 的 CC 引腳會檢測到手機的下拉電阻 Rd,使得 CC 引腳電平被拉低。充電器檢測到 CC 引腳電平變化,就知道有設備連接上了,從而打開 Vbus 電源開關,輸出電源給手機。

????????

? ? ? ? 3、正反插確認

? ? ? ??在母口的端子中,可以看到引腳是中心對稱的,但是對于TYPE-C的公口來說,卻不是完全中心對稱,少了B6、B7引腳功能,所以實際來說,TYPE-C的公頭正插與反插是有區別的。

? ? ? ? ?依舊以手機充電為例,當手機處于充電狀態扮演從機角色時,若手機內部 CC 引腳下拉導致充電器的 CC1 引腳被拉低,意味著手機的 Type - C 接口是向上插入;反之,若充電器檢測到CC2 引腳被拉低,則表明手機的 Type - C 接口是向下插入。這樣可以確定接口插入的方向。??

? ? ? ? 4、USB PD 通信

????????CC1/CC2 引腳是 USB PD(Power Delivery)協議通信的線路之一,通過該引腳,設備之間可以進行電源相關的信息交互,如協商供電電壓、電流等參數,以實現快速充電或其他功率傳輸功能,實現負載的功能配置。

?????

? ? ? ? 5、Type C 接口 SBU1/SBU2 作用

B8SBU2Side Band Use 1,即輔助使用2
A8SBU1Side Band Use 1,即輔助使用1

????????SBU1/SBU2 主要用于支持附加功能。

????????音頻信號傳輸:在模擬音頻耳機附件模式下,SBU1 可作為麥克風信號傳輸通道,將音頻信號從設備傳輸到外部音頻設備。在 DP Alt Mode 模式下進行 DP 信號傳輸時,SBU 引腳可作為音頻傳輸通道,傳輸音頻信號。

????????視頻信號相關:在 DisplayPort 替代模式中,SBU1 和 SBU2 可用于傳輸 DisplayPort 協議中的輔助信號,如音頻信號、熱插拔檢測信號等,以實現高清視頻輸出及相關功能的協同工作。

????????設備連接與配置:SBU1 和 SBU2 在連接 Type - C 設備時參與建立連接,并在設備之間傳輸信息。例如,SBU1 可發出電壓波形,以確定設備的電源和數據協議,SBU2 則用于接收電源和數據協議的信息,使設備能夠進行正確的配置。

? ? ? ? 6、Type C 接口 SSTX/SSRX 作用

A2SSTXp1SuperSpeed 差分信號 #1 的發送正端B11SSRXp1SuperSpeed 差分信號 #1 的接收正端
A3SSTXn1SuperSpeed 差分信號 #1 的發送負端B10SSRXn1SuperSpeed 差分信號 #1 的接收負端
A10SSRXn2SuperSpeed 差分信號 #2 的發送正端B3SSTXn2SuperSpeed 差分信號 #2 的接收正端
A11SSRXp2SuperSpeed 差分信號 #2 的發送負端B2SSTXp2SuperSpeed 差分信號 #2 的接收負端

????????SSTXp1 是 “SuperSpeed Transmitter Pair 1, Positive” 的縮寫,即 “超高速發送器差分信號對 1,正端”。

????????在數據傳輸過程中,SSRXp1 和對應的負信號引腳(如 SSRXn1)共同組成差分信號對,它主要用于高速數據傳輸,在 USB 3.1 及更高版本的協議中發揮著重要作用,負責將設備內部的高速數據以差分信號的形式發送出去,以實現快速的數據傳輸,比如在連接外部存儲設備、顯示器或進行大文件傳輸時,能確保數據的高效、穩定傳輸。

2、TYPE-C接口特點? ?

????????Type C 接口實際上為了適應不同的用途,按功能需求進行劃分從而擁有多個版本。

? ? ? ? 1、24P Type C

????????全功能 USB3.0/3.1、USB2.0、音視頻傳輸,上述我們說的引腳定義?指的就是 24P 全功能 Type C。

? ? ? ? 2、16P/12P Type C

????????支持 USB2.0,也能支持 PD 快充、音頻設備、HDMI 傳輸、調試模式等功能,但相比 24P 接口,功能的完整性和性能會受到一定限制。

????????TYPE - C 的 16P 和 12P 在本質上沒有太大區別,通常可認為是同一種接口的不同稱呼。

????????16P 一般是接口廠家、封裝的正式名稱。在單排 16P 的 TYPE - C 母座中,頭尾開始的 4 引腳 Pin 針分別是兩兩相連的,從外觀上看好像是 12Pin 針,所以日常生活中習慣稱呼為 12P。

? ? ? ? 16P 和 12P 的 TYPE - C 接口都是在 24P 全功能版本的基礎上進行了簡化。它們移除USB3.0 的 TX1/2、RX1/2 引腳,保留了 SBU1/2、CC1/2、USB2.0 的 D + 和 D - 引腳。這意味著它們支持基本的充電和 USB2.0 數據傳輸功能,但不支持 USB3.0/3.1 高速數據傳輸。

? ? ? ? 3、6P Type C

????????僅支持充電

????????6P 接口僅保留了 Vbus(電源總線)、GND(接地)、CC1(配置通道 1)、CC2(配置通道 2)引腳,主要支持大電流充電,不具備數據傳輸功能。

????????支持 PD 快充協議:CC1 和 CC2 引腳用于 PD 設備識別,承載 USB - PD 的通信,以向供電端請求電源供給,可輸出電壓可調,最大傳輸 5A - 20V 共 100W 的功率。借助 USB - PD 協議,用電端能方便地從供電端取電。

3、TYPE-C引腳總結??

電源引腳:VBUS與GND

????????VBUS:電源總線引腳,共有兩對。用于為設備傳輸電源,能提供不同的電壓等級(如 5V、9V、12V、15V、20V 等),具體取決于所支持的 USB Power Delivery(PD)協議。

????????GND:接地引腳,同樣有兩對。

數據傳輸引腳:USB 2.0 數據引腳與USB 3.1 數據引腳

????????USB 2.0 數據引腳

????????D+、D -:這是一對差分信號引腳,用于實現 USB 2.0 協議的數據傳輸,最高傳輸速率可達 480Mbps。在一些對數據傳輸速率要求不高的設備連接中廣泛應用,如鼠標、鍵盤等。

????????USB 3.1 數據引腳

????????TX1+、TX1 - 、TX2+、TX2 -:分別為兩對發送差分信號引腳,用于高速數據的發送。

????????RX1+、RX1 - 、RX2+、RX2 -:是兩對接收差分信號引腳,用于高速數據的接收。這些引腳共同支持 USB 3.1 Gen 2 協議,最高傳輸速率可達 10Gbps,滿足如移動硬盤、高速閃存等設備的高速數據傳輸需求。

配置與檢測引腳:CC1、CC2與SBU1、SBU2

????????CC1、CC2:配置通道引腳,主要用于設備的連接檢測、正反插識別、功率傳輸協商以及 USB PD 協議的通信。例如,當設備連接時,通過檢測 CC 引腳的電平狀態和電阻值,來確定設備的角色(如主機、從機)、支持的功率等級等信息。

????????SBU1、SBU2:輔助信號引腳,在不同的應用場景下有不同的功能。可用于支持音頻、視頻等其他功能。

????????在 Type - C 接口中,D + 和 D - 通常與其他引腳協同工作。

四、USB轉UART芯片介紹

? ? ? ? 我們選用X寶上這款使用的CH348Q芯片,

????????CH348是一款高速USB總線的轉接芯片,實現USB轉八個異步串口UART0/1/2/3/4/5/6/7功能,用于為計算機擴展異步串口,或者將普通的串口設備或者MCU直接升級到USB總線。

? ? ? ? CH348分為CH348Q與CH348L,對應封裝分別為LQFP48和LQFP100。

????????在CH348Q數據手冊中,提供了典型電路應用設計圖,該電路中,采用6P的USB TYPE-C接口,使用AMS1117 - 3.3 線性穩壓器將TYPE-C輸入的5V電壓轉換為CH348Q所需要的3.3V電源電壓,并提供了晶振電路,復位電路的設計,最終引出了8個端子,用于8路串口輸出。? ? ?

? ? ? ? 在這里,我們需要注意的是對于輸出串口UART0\1\2\3與輸出串口UART4\5\6\7略微有些區別。

????????對于UART0~UART3,芯片CH348Q分別為串口提供了額外的3個引腳,RTS、CTS、DTR。

????????RTS(Request To Send)

????????功能概述:RTS 即請求發送,是一個輸出信號引腳。當設備想要向外部發送數據時,會通過將 RTS 引腳置為有效電平(通常為低電平)來向接收方發出請求發送數據的信號。這是一種發送方主動發起的請求機制,用于告知接收方自己有數據準備發送。

????????應用場景:在串口通信中,當發送設備有數據要發送時,先將 RTS 引腳置為有效,等待接收方的響應信號(CTS),只有在接收到接收方允許發送的信號后,才開始發送數據。這樣可以避免接收方因緩沖區已滿而無法接收數據,導致數據丟失的情況發生。

????????CTS(Clear To Send)

????????功能概述:CTS 即允許發送,是一個輸入信號引腳。接收方通過檢測 RTS 引腳的狀態,當檢測到發送方發出的請求發送信號(RTS 有效)時,會檢查自身的接收緩沖區是否有足夠的空間來接收新的數據。如果有足夠的空間,接收方會將 CTS 引腳置為有效電平(通常為低電平),表示允許發送方發送數據。

????????應用場景:在發送方收到接收方的 CTS 有效信號后,才會開始將數據發送出去。如果接收方的緩沖區已滿,CTS 引腳會保持無效狀態,發送方則會暫停發送數據,直到接收到有效的 CTS 信號為止。

????????DTR(Data Terminal Ready)

????????功能概述:DTR 即數據終端準備好,是一個輸出信號引腳。該引腳用于表示設備的數據終端(如計算機)是否已經準備好進行通信。當設備的數據終端準備好時,會將 DTR 引腳置為有效電平(通常為低電平),告知外部設備可以進行數據通信。

????????應用場景:在一些設備中,DTR 信號可以用于控制外部設備的電源或復位。例如,當計算機通過串口與外部設備通信時,計算機可以通過控制 DTR 引腳的電平來開啟或關閉外部設備的電源,或者對外部設備進行復位操作。

????????RTS/CTS 和 DTR 用于硬件流控制,以確保數據在發送和接收過程中的可靠性。

????????為了避免各位對這幾位引腳產生誤解,我們以單片機STM32F103為例對于接線來進行講解。

? ? ? ? 首先是電源引腳,VDDA與VSSA是單片機STM32的數字電源供電引腳。

? ? ? ? 若使用 USART1 進行通信,STM32F103其 TX 引腳為 PA9,RX 引腳為 PA10 ,而大家也都知道,一個設備的發要接另一個設備的收,故此,完成TX與RX的接線。

????????RTS 是請求發送信號,是輸出信號。STM32 的串口有對應的 RTS 引腳,如 USART1 的 RTS 引腳是 PA12 。將外部設備的 CTS 引腳連接到 STM32F103C8T6 的 PA12 引腳。

????????CTS 是允許發送信號,是輸入信號。USART1 的 CTS 引腳是 PA11 。把外部設備的 RTS 引腳連接到 STM32F103C8T6 的 PA11 引腳。

????????DTR 是數據終端準備好信號,一般作為輸出信號。在 STM32 中沒有專門的 DTR 硬件引腳,但可以使用一個通用 GPIO 引腳來模擬該功能。例如,選擇 PA8作為模擬 DTR 引腳,將其連接到外部設備的 DTR 接收引腳。

? ? ? ? 至此也以完成一個串口通訊的連接,CH348Q原理圖中的UART0、UART1、UART2、UART3便是此種連接方式。

????????但我想提的是,RTS、CTS、DTR這三種引腳并不是UART0、UART1、UART2、UART3通訊不可或缺的引腳,只有TX、RX引腳,與供電引腳才是必要引腳。

? ? ? ? 所以在原理圖中,UART0、UART1、UART2、UART3是可以像UART4、UART5、UART6、UART7引腳一樣,只引出四個引腳一樣正常工作,實際上大多數情況下這三種端子也用不到,只是對于已提供了硬件控制流功能的端子,大家可以將端子引出以備用。

????????

? ? ? ? 接下來,我們對2號引腳CFG進行解釋;

? ? ? ? CFG是一個配置引腳,用于控制上述中DTR引腳,上述中的DTR引腳在電路圖中全稱是DTR/TNOW,顧名思義,這類引腳是有兩種模式的,一種是DTR模式,一種是TNOW模式。

????????DTR(Data Terminal Ready,數據終端準備好)引腳,用于表示數據終端設備是否準備好進行數據通信。

????????TNOW 引腳,支持半雙工,可用于控制 RS485 收發切換,也可作為普通 GPIO 引腳使用。

? ? ? ??上電期間,CFG引腳接高電平或懸空,則所有DTRx/TNOWx引腳配置成TNOW功能;CFG 引腳接低電平,則所有DTRx/TNOWx引腳默認配置成DTR功能。

? ? ? ? 接下來,我們對44號引腳TEST進行解釋:

????????內部測試引腳,建議對地接1個下拉電阻 (通常4.7K?)或直接接地。

? ? ? ? 接下來,我們對14號引腳ACT進行解釋:

????????USB 配置完成狀態輸出,低電平有效。

? ? ? ? 接下來,我們對7號引腳RESET進行解釋:

????????外部復位輸入端,低電平有效,內置上拉電阻

? ? ? ? 接下來,我們對12、13號引腳XI、XO進行解釋:

????????CH348 芯片內置了電源上電復位電路,芯片正常工作時需要外部向XI引腳提供8MHz時鐘信號, 時鐘信號可通過CH348內置的反相器通過晶體穩頻振蕩產生。外圍電路需要在XI和XO引腳之間連接 一個8MHz晶體,XI和XO引腳對地接20/22pF左右的振蕩電容。

? ? ? ? 以上完成,我們對電路開始設計。

五、USB轉UART電路設計

????????電源方面,設計了三種方案,

????????電源模塊:可靠省事、價格略貴。

????????LDO:價格便宜、省事。

????????BUCK降壓:可輸出較大功率。

????????都能正常使用,各有優缺點,各位可以自行選用,本次選用了LDO方案。

? ? ? ? 在CH348Q芯片附近,主要有復位電路,晶振電路,上述已提,不再贅述。

? ? ? ? 對于CFG引腳,各位可以直接使用下拉電阻接地,也可以如圖上使用2P的排針,若需要接地,可使用跳線帽直接短接,方便。

? ? ? ? 對于TEST引腳,直接對地接1個下拉電阻。

? ? ? ? 最后對于輸出的串口,并未將8個串口全部引出,看各人需要,本次只引出4個串口。

? ? ? ? 對于ACT引腳,當USB配置完成后為低電平,此時LED2點亮,其余收發指示燈不再贅述。

六、電路完成截圖

七、文件下載鏈接

? ? ? ? 上述文件,源文件已導出,上傳在本人的資源中,可免費下載

【免費】基于TYPE-C與CH348Q的USB轉串口方案:串口一拖四資源-CSDN文庫

因為在絕大多數情況下,歷史沒有正惡,只有成敗!!!!!

完結、完結、完結!!!!!!!!!!

END、END!!!!!!!!!!

END!!!!!!!!!!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/76118.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/76118.shtml
英文地址,請注明出處:http://en.pswp.cn/web/76118.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

v-model進階+ref+nextTick

一、v-model進階 復習 v-model v-model: 雙向數據綁定指令 數據 <-> 視圖: 數據和視圖相互影響, 因此被稱為雙向數據綁定指令 1> 數據變了, 視圖也會跟著變 (數據驅動視圖) 2> 視圖變了, 數據也會跟著變 1. v-model 原理 v-model只是一個語法糖, 比較好用, …

Sentinel源碼—4.FlowSlot實現流控的原理二

大綱 1.FlowSlot根據流控規則對請求進行限流 2.FlowSlot實現流控規則的快速失敗效果的原理 3.FlowSlot實現流控規則中排隊等待效果的原理 4.FlowSlot實現流控規則中Warm Up效果的原理 3.FlowSlot實現流控規則中排隊等待效果的原理 (1)實現排隊等待流控效果的普通漏桶算法介…

2025華中杯數學建模B題完整分析論文(共42頁)(含模型、數據、可運行代碼)

2025華中杯大學生數學建模B題完整分析論文 目錄 一、問題重述 二、問題分析 三、模型假設 四、 模型建立與求解 4.1問題1 4.1.1問題1解析 4.1.2問題1模型建立 4.1.3問題1樣例代碼&#xff08;僅供參考&#xff09; 4.1.4問題1求解結果&#xff08;僅供參考&am…

Project ERROR: liblightdm-qt5-3 development package not found問題的解決方法

問題描述&#xff1a;使用make命令進行ukui-greeter-Debian構建時出現Project ERROR: liblightdm-qt5-3 development package not found錯誤&#xff0c;具體如圖&#xff1a; 問題原因&#xff1a;缺乏liblightdm-qt5-3 development軟件包 解決方法&#xff1a;安裝liblightd…

【C++面向對象】封裝(下):探索C++運算符重載設計精髓

&#x1f525;個人主頁 &#x1f525; &#x1f608;所屬專欄&#x1f608; 每文一詩 &#x1f4aa;&#x1f3fc; 年年歲歲花相似&#xff0c;歲歲年年人不同 —— 唐/劉希夷《代悲白頭翁》 譯文&#xff1a;年年歲歲繁花依舊&#xff0c;歲歲年年看花之人卻不相同 目錄 C運…

從代碼學習深度學習 - Transformer PyTorch 版

文章目錄 前言1. 位置編碼(Positional Encoding)2. 多頭注意力機制(Multi-Head Attention)3. 前饋網絡與殘差連接(Position-Wise FFN & AddNorm)3.1 基于位置的前饋網絡(PositionWiseFFN)3.2 殘差連接和層規范化(AddNorm)4. 編碼器(Encoder)4.1 編碼器塊(Enco…

閱讀分析Linux0.11 /boot/head.s

目錄 初始化IDT、IDTR和GDT、GDTR檢查協處理器并設置CR0寄存器初始化頁表和CR3寄存器&#xff0c;開啟分頁 初始化IDT、IDTR和GDT、GDTR startup_32:movl $0x10,%eaxmov %ax,%dsmov %ax,%esmov %ax,%fsmov %ax,%gslss _stack_start,%espcall setup_idtcall setup_gdtmovl $0x1…

33、單元測試實戰練習題

以下是三個練習題的具體實現方案&#xff0c;包含完整代碼示例和詳細說明&#xff1a; 練習題1&#xff1a;TDD實現博客評論功能 步驟1&#xff1a;編寫失敗測試 # tests/test_blog.py import unittest from blog import BlogPost, Comment, InvalidCommentErrorclass TestBl…

16-算法打卡-哈希表-兩個數組的交集-leetcode(349)-第十六天

1 題目地址 349. 兩個數組的交集 - 力扣&#xff08;LeetCode&#xff09;349. 兩個數組的交集 - 給定兩個數組 nums1 和 nums2 &#xff0c;返回 它們的 交集 。輸出結果中的每個元素一定是 唯一 的。我們可以 不考慮輸出結果的順序 。 示例 1&#xff1a;輸入&#xff1a;nu…

SciPy庫詳解

SciPy 是一個用于數學、科學和工程計算的 Python 庫&#xff0c;它建立在 NumPy 之上&#xff0c;提供了許多高效的算法和工具&#xff0c;用于解決各種科學計算問題。 CONTENT 1. 數值積分功能代碼 2. 優化問題求解功能代碼3. 線性代數運算功能代碼 4. 信號處理功能代碼 5. 插…

杰弗里·辛頓:深度學習教父

名人說&#xff1a;路漫漫其修遠兮&#xff0c;吾將上下而求索。—— 屈原《離騷》 創作者&#xff1a;Code_流蘇(CSDN)&#xff08;一個喜歡古詩詞和編程的Coder&#x1f60a;&#xff09; 杰弗里辛頓&#xff1a;當堅持遇見突破&#xff0c;AI迎來新紀元 一、人物簡介 杰弗…

BladeX單點登錄與若依框架集成實現

1. 概述 本文檔詳細介紹了將BladeX認證系統與若依(RuoYi)框架集成的完整實現過程。集成采用OAuth2.0授權碼流程&#xff0c;使用戶能夠通過BladeX賬號直接登錄若依系統&#xff0c;實現無縫單點登錄體驗。 2. 系統架構 2.1 總體架構 #mermaid-svg-YxdmBwBtzGqZHMme {font-fa…

初識Redis · set和zset

目錄 前言&#xff1a; set 基本命令 交集并集差集 內部編碼和應用場景 zset 基本命令 交集并集差集 內部編碼和應用場景 應用場景&#xff08;AI生成&#xff09; 排行榜系統 應用背景 設計思路 熱榜系統 應用背景 設計思路 熱度計算方式 總結對比表 前言&a…

playwright 教程高級篇:掌握網頁自動化與驗證碼處理等關鍵技術詳解

Playwright 教程高級篇:掌握網頁自動化與驗證碼處理等關鍵技術詳解 本教程將帶您一步步學習如何使用 Playwright——一個強大的瀏覽器自動化工具,來完成網頁任務,例如提交鏈接并處理旋轉驗證碼。我們將按照典型的自動化流程順序,從啟動瀏覽器到關閉瀏覽器,詳細講解每個步驟…

數據結構(完)

樹 二叉樹 構建二叉樹 int value;Node left;Node right;public Node(int val) {valueval;} 節點的添加 Node rootnull;public void insert(int num) {Node nodenew Node(num);if(rootnull) {rootnode;return;}Node index root;while(true) {//插入的節點值小if(index.value&g…

FastAPI與SQLAlchemy數據庫集成與CRUD操作

title: FastAPI與SQLAlchemy數據庫集成與CRUD操作 date: 2025/04/16 09:50:57 updated: 2025/04/16 09:50:57 author: cmdragon excerpt: FastAPI與SQLAlchemy集成基礎包括環境準備、數據庫連接配置和模型定義。CRUD操作通過數據訪問層封裝和路由層實現,確保線程安全和事務…

一個基于Django的寫字樓管理系統實現方案

一個基于Django的寫字樓管理系統實現方案 用戶現在需要我用Django來編寫一個寫字樓管理系統的Web版本&#xff0c;要求包括增刪改查寫字樓的HTML頁面&#xff0c;視頻管理功能&#xff0c;本地化部署&#xff0c;以及人員權限管理&#xff0c;包含完整的代碼結構和功能實現&am…

mongodb在window10中創建副本集的方法,以及node.js連接副本集的方法

創建Mongodb的副本集最好是新建一個文件夾&#xff0c;如D:/data&#xff0c;不要在mongodb安裝文件夾里面創建副本集&#xff0c;雖然這樣也可以&#xff0c;但是容易造成誤操作或路徑混亂&#xff1b;在新建文件夾里與現有 MongoDB 數據隔離&#xff0c;避免誤操作影響原有數…

Maven 多倉庫與鏡像配置全攻略:從原理到企業級實踐

Maven 多倉庫與鏡像配置全攻略&#xff1a;從原理到企業級實踐 一、核心概念&#xff1a;Repository 與 Mirror 的本質差異 在 Maven 依賴管理體系中&#xff0c;repository與mirror是構建可靠依賴解析鏈的兩大核心組件&#xff0c;其核心區別如下&#xff1a; 1. Repositor…

STM32 四足機器人常見問題匯總

文章不介紹具體參數&#xff0c;有需求可去網上搜索。 特別聲明&#xff1a;不論年齡&#xff0c;不看學歷。既然你對這個領域的東西感興趣&#xff0c;就應該不斷培養自己提出問題、思考問題、探索答案的能力。 提出問題&#xff1a;提出問題時&#xff0c;應說明是哪款產品&a…