[C語言] C語言數學函數庫概覽

C語言數學函數庫概覽

文章目錄

  • C語言數學函數庫概覽
    • 一、概述
    • 二、基本數學函數詳解
      • 1. 平方根函數 `sqrt(x)`
      • 2. 冪函數 `pow(x, y)`
      • 3. 絕對值函數 `fabs(x)`
      • 4. 向上取整函數 `ceil(x)`
      • 5. 向下取整函數 `floor(x)`
    • 三、三角函數與雙曲函數詳解
      • 1. 正弦函數 `double sin(double x)`
      • 2. 余弦函數 `double cos(double x)`
      • 3. 正切函數 `double tan(double x)`
      • 4. 反正弦函數 `double asin(double x)`
      • 5. 雙曲正弦函數 `double sinh(double x)`
    • 四、指數與對數函數詳解
      • 1. 指數函數 `double exp(double x)`
      • 2. 自然對數函數 `double log(double x)`
      • 3. 常用對數函數 `double log10(double x)`
    • 五、其他實用函數詳解
      • 1. 浮點數分解 `double frexp(double x, int *exp)`
      • 2. 浮點數重構 `double ldexp(double x, int exp)`
      • 3. 浮點數分離 `double modf(double x, double *intpart)`
      • 4. 誤差函數 `double erf(double x)`
      • 5. 浮點余數 `double fmod(double x, double y)`
    • 六、注意事項
    • 七、示例代碼片段


一、概述

math.h是C語言標準庫中專門用于數學運算的頭文件,提供了豐富的數學函數和宏定義。它包含的函數主要分為基本數學運算、三角函數、指數對數函數等幾大類。這些函數在科學計算、工程仿真、圖形處理、金融分析等領域有廣泛應用,例如:

  • 計算物理運動軌跡時需要使用三角函數和平方根函數
  • 信號處理中的傅里葉變換需要用到指數和三角函數
  • 游戲開發中的3D坐標變換需要矩陣運算和三角函數
  • 金融分析中的復利計算需要指數和對數函數

二、基本數學函數詳解

math.h頭文件提供了豐富的數學函數庫支持,這些函數在科學計算、工程應用和金融分析等領域都有廣泛應用。下面詳細介紹幾個最常用的基礎數學函數:

1. 平方根函數 sqrt(x)

  • 功能:計算x的平方根
  • 參數要求:x必須為非負數(≥0),否則會返回NaN(Not a Number)特殊值
  • 實現原理:現代實現多采用優化的牛頓迭代法(Newton-Raphson method)
  • 精度:符合IEEE 754浮點標準,典型精度可達15-17位有效數字
  • 示例
    printf("%f", sqrt(16.0));  // 輸出4.000000
    printf("%f", sqrt(-1.0));  // 輸出nan
    

2. 冪函數 pow(x, y)

  • 功能:計算x的y次冪
  • 實現方式
    • 對于整數y:使用優化算法(如快速冪算法)
    • 對于非整數y:通過公式exp(y*log(x))計算
  • 應用場景
    • 指數增長模型(如人口增長、病毒傳播)
    • 衰減模型(如放射性元素半衰期)
  • 注意事項
    • x為負數且y為非整數時可能產生復數結果
    • 大數運算可能出現溢出
  • 示例
    printf("%f", pow(2, 3));    // 8.000000
    printf("%f", pow(2.5, 1.5));// 3.952847
    

3. 絕對值函數 fabs(x)

  • 功能:返回x的絕對值
  • 特點
    • 專為浮點數設計,與整數abs()區分
    • 正確處理特殊值(NaN返回NaN,INF返回INF)
  • 實現方式:通過清除浮點數的符號位實現
  • 示例
    printf("%f", fabs(-3.14));  // 3.140000
    printf("%f", fabs(NAN));    // nan
    

4. 向上取整函數 ceil(x)

  • 功能:返回不小于x的最小整數
  • 算法特性
    • 向正無窮方向取整
    • 返回值為double類型
  • 應用場景
    • 資源分配(如內存頁、磁盤塊)
    • 離散化處理
  • 示例
    printf("%f", ceil(3.2));   // 4.000000
    printf("%f", ceil(-2.7));  // -2.000000
    

5. 向下取整函數 floor(x)

  • 功能:返回不大于x的最大整數
  • 算法特性
    • 向負無窮方向取整
    • 返回值為double類型
  • 應用場景
    • 財務計算(如稅費計算)
    • 信號采樣
  • 示例
    printf("%f", floor(3.8));   // 3.000000
    printf("%f", floor(-2.3));  // -3.000000
    

這些函數在大多數C標準庫實現中都經過高度優化,能夠提供良好的性能和精度。在使用時需要注意參數范圍和返回值類型,避免出現數值溢出或精度丟失等問題。


三、三角函數與雙曲函數詳解

1. 正弦函數 double sin(double x)

  • 功能:計算弧度值x的正弦值
  • 參數要求:x為弧度值,建議范圍[-2π, 2π],大數值需先縮減
  • 實現原理
    • 采用多項式近似(泰勒展開): x ? x 3 6 + x 5 120 ? ? x - \frac{x^3}{6} + \frac{x^5}{120} - \cdots x?6x3?+120x5???
    • 現代庫使用改進的切比雪夫多項式逼近
  • 精度:ULP誤差<1,符合IEEE 754標準
  • 應用場景
    • 聲波合成:y = A*sin(2πft)
    • 機械振動分析
    • 交流電路計算
  • 示例
    double radian = 45 * M_PI/180;  // 角度轉弧度
    printf("sin(45°) = %.6f", sin(radian));  // 輸出0.707107
    

2. 余弦函數 double cos(double x)

  • 功能:計算弧度值x的余弦值
  • 實現原理
    • 利用三角恒等式: cos ? ( x ) = sin ? ( π 2 ? x ) \cos(x) = \sin(\frac{\pi}{2} - x) cos(x)=sin(2π??x)
    • 直接多項式展開: 1 ? x 2 2 + x 4 24 ? ? 1 - \frac{x^2}{2} + \frac{x^4}{24} - \cdots 1?2x2?+24x4???
  • 優化技術
    • 參數縮減:大角度映射到[0, π/4]區間
    • SIMD指令并行計算
  • 注意事項
    • 周期性:cos(x) = cos(x + 2kπ)
    • x=π/2 + kπ時精度最高
  • 示例
    printf("cos(π) = %.1f", cos(M_PI));  // 輸出-1.0
    

3. 正切函數 double tan(double x)

  • 功能:計算正切值tan(x) = sin(x)/cos(x)
  • 參數限制:x ≠ π/2 + kπ (k∈?)
  • 特殊處理
    • x接近奇點時返回±HUGE_VAL
    • 輸入NaN返回NaN
  • 實現優化
    • 避免直接除法:使用專用近似算法
    • 奇點附近采用有理函數逼近
  • 應用場景
    • 光學折射率計算(斯涅爾定律)
    • 機械斜面受力分析
  • 示例
    printf("tan(π/4) = %.2f", tan(M_PI/4));  // 輸出1.00
    

4. 反正弦函數 double asin(double x)

  • 功能:計算arcsin值(弧度)
  • 參數范圍:x ∈ [-1.0, 1.0]
  • 輸出范圍:[-π/2, π/2]
  • 實現方法
    • 使用恒等式: arcsin ? ( x ) = arctan ? ( x 1 ? x 2 ) \arcsin(x) = \arctan(\frac{x}{\sqrt{1-x^2}}) arcsin(x)=arctan(1?x2 ?x?)
    • 分段多項式逼近
  • 邊界處理
    • x=±1.0時返回±π/2
    • |x|>1返回NaN
  • 應用場景
    • 機器人逆運動學求解
    • 游戲角色視線角度計算
  • 示例
    printf("asin(0.5) = %.6f rad", asin(0.5));  // ≈0.523599 rad (30°)
    

5. 雙曲正弦函數 double sinh(double x)

  • 功能:計算雙曲正弦值 ( e x ? e ? x ) / 2 (e^x - e^{-x})/2 (ex?e?x)/2
  • 數學性質:奇函數,sinh(-x) = -sinh(x)
  • 實現方式
    • 直接公式計算(|x|<1時)
    • |x|>22時使用exp(|x|)/2近似
  • 數值特性
    • x→±∞時趨近±0.5*exp(|x|)
    • 大數值易導致溢出
  • 應用場景
    • 懸鏈線建模: y = a ? cosh ? ( x a ) y = a\cdot \cosh(\frac{x}{a}) y=a?cosh(ax?)
    • 相對論速度合成
  • 示例
    printf("sinh(1) = %.6f", sinh(1.0));  // 輸出1.175201
    

四、指數與對數函數詳解

1. 指數函數 double exp(double x)

  • 功能:計算自然常數e的x次冪
  • 實現原理
    • 范圍縮減: e x = 2 k ? e r e^x = 2^k \cdot e^r ex=2k?er,其中 r ∈ [ ? 0.5 , 0.5 ] r∈[-0.5,0.5] r[?0.5,0.5]
    • 多項式逼近: 1 + r + r 2 2 ! + r 3 3 ! + ? 1 + r + \frac{r^2}{2!} + \frac{r^3}{3!} + \cdots 1+r+2!r2?+3!r3?+?
  • 特殊值
    • x>709.78時返回+∞(溢出)
    • x<-745.13時返回0(下溢)
  • 應用場景
    • 放射性衰變: N ( t ) = N 0 e ? λ t N(t) = N_0 e^{-λt} N(t)=N0?e?λt
    • 神經網絡激活函數
  • 示例
    printf("exp(1) ≈ %.10f", exp(1));  // 輸出2.7182818285
    

2. 自然對數函數 double log(double x)

  • 功能:計算自然對數ln(x)
  • 參數要求:x > 0
  • 實現方法
    • 參數分解: x = 2 k ? m x = 2^k \cdot m x=2k?m,m∈[1,2)
    • 計算ln(m)使用切比雪夫多項式
    • 最終結果: k ? ln ? ( 2 ) + ln ? ( m ) k \cdot \ln(2) + \ln(m) k?ln(2)+ln(m)
  • 邊界處理
    • x=0返回-∞
    • x<0返回NaN
  • 精度:相對誤差<1 ULP
  • 應用場景
    • 信息熵計算: H = ? ∑ p i ln ? p i H = -\sum p_i \ln p_i H=?pi?lnpi?
    • 算法復雜度分析
  • 示例
    printf("ln(e^2) = %.1f", log(exp(2)));  // 輸出2.0
    

3. 常用對數函數 double log10(double x)

  • 功能:計算以10為底的對數
  • 實現原理:利用換底公式 log ? 10 x = ln ? x ln ? 10 \log_{10}x = \frac{\ln x}{\ln 10} log10?x=ln10lnx?
  • 常數優化:預計算1/ln(10) ≈ 0.4342944819
  • 應用領域
    • 分貝計算: d B = 20 log ? 10 ( V V ref ) \mathrm{dB} = 20\log_{10}(\frac{V}{V_{\text{ref}}}) dB=20log10?(Vref?V?)
    • pH值計算: p H = ? log ? 10 ( [ H + ] ) \mathrm{pH} = -\log_{10}([\mathrm{H}^+]) pH=?log10?([H+])
    • 地震強度(里氏震級)
  • 數值特性
    • log10(1000) = 3.0
    • log10(0.001) = -3.0
  • 示例
    printf("log10(1e6) = %.1f", log10(1e6));  // 輸出6.0
    

五、其他實用函數詳解

1. 浮點數分解 double frexp(double x, int *exp)

  • 原型double frexp(double value, int *exponent)
  • 功能:將value分解為尾數m和指數n: v a l u e = m × 2 n value = m \times 2^n value=m×2n
  • 輸出范圍:m ∈ [0.5, 1) 或 0
  • 應用場景
    • 自定義浮點格式化輸出
    • 高精度計算中間步驟
  • 示例
    int exp;
    double m = frexp(8.0, &exp);
    printf("8.0 = %.1f * 2^%d", m, exp);  // 輸出0.5 * 2^4
    

2. 浮點數重構 double ldexp(double x, int exp)

  • 原型double ldexp(double x, int exponent)
  • 功能:高效計算 x × 2 e x p o n e n t x \times 2^{exponent} x×2exponent
  • 優勢:比直接乘法快5-10倍(避免整數轉浮點)
  • 特殊處理
    • 結果溢出返回±HUGE_VAL
    • 結果下溢返回0
  • 應用場景
    • 快速縮放顏色值
    • 科學計數法轉換
  • 示例
    printf("ldexp(0.75, 4) = %.1f", ldexp(0.75, 4));  // 輸出12.0
    

3. 浮點數分離 double modf(double x, double *intpart)

  • 原型double modf(double value, double *iptr)
  • 功能:分離value的整數和小數部分
  • 輸出特性
    • 整數部分存入*iptr
    • 返回小數部分(符號與value相同)
  • 應用場景
    • 時間計算:分離小時和分鐘
    • 坐標系統轉換
  • 示例
    double ipart, fpart = modf(-3.14, &ipart);
    printf("-3.14 = %.0f + %.2f", ipart, fpart);  // 輸出-3 + -0.14
    

4. 誤差函數 double erf(double x)

  • 功能:計算高斯誤差函數 2 π ∫ 0 x e ? t 2 d t \frac{2}{\sqrt{\pi}} \int_0^x e^{-t^2} dt π ?2?0x?e?t2dt
  • 參數范圍:x ∈ [-∞, +∞]
  • 數學特性
    • erf(-x) = -erf(x)
    • erf(0) = 0, erf(∞)=1
  • 實現方法:分段有理函數逼近
  • 應用領域
    • 統計學:正態分布累積概率
    • 熱傳導方程求解
  • 示例
    printf("erf(1) ≈ %.8f", erf(1.0));  // 輸出0.84270079
    

5. 浮點余數 double fmod(double x, double y)

  • 功能:計算x除以y的浮點余數
  • 計算公式 x ? n × y x - n \times y x?n×y(n為截斷商)
  • 與%運算符區別
    • 支持浮點數
    • 結果符號與被除數x相同
  • 應用場景
    • 周期性動畫:position = fmod(time*speed, period)
    • 角度歸一化:angle = fmod(theta, 2*M_PI)
  • 示例
    printf("fmod(10.5, 3.2) = %.1f", fmod(10.5, 3.2));  // 輸出0.9
    

六、注意事項

使用限制:

  1. 輸入有效性檢查:
    • sqrt(-1)會返回NaN
    • log(0)返回-INF
    • 三角函數輸入過大可能導致精度損失
  2. 精度問題:
    • 浮點運算存在舍入誤差
    • 比較時應使用誤差范圍而非直接相等,如fabs(a-b) < 1e-6
  3. 編譯器差異:
    • hypot()(計算直角邊斜邊)是C99新增
    • 某些編譯器可能不支持C99所有函數
    • 跨平臺開發時需測試兼容性

七、示例代碼片段

#include <math.h>
#include <stdio.h>int main() {double base = 2.0, exponent = 3.0;double angle = 45.0; // 角度值// 基本運算printf("sqrt(%.1f) = %.3f\n", base, sqrt(base));printf("pow(%.1f, %.1f) = %.1f\n", base, exponent, pow(base, exponent));// 三角函數(轉換為弧度)printf("sin(%.1f°) = %.3f\n", angle, sin(angle * M_PI/180.0));printf("cos(%.1f°) = %.3f\n", angle, cos(angle * M_PI/180.0));// 對數運算printf("log10(100) = %.1f\n", log10(100.0));printf("log(e) = %.1f\n", log(M_E));// 浮點分解double x = 3.14159;int exp;double mantissa = frexp(x, &exp);printf("%.5f = %.5f * 2^%d\n", x, mantissa, exp);// 浮點余數printf("fmod(5.3, 2.0) = %.1f\n", fmod(5.3, 2.0));return 0;
}

研究學習不易,點贊易。
工作生活不易,收藏易,點收藏不迷茫 :)


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

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

相關文章

【簡單三步】Stable diffusion Webai本地部署無法加載模型并報openai/clip-vit-large-patch14錯誤的解決方法

問題描述 Stable diffusion Webai本地部署成功后&#xff0c;手動加載本地模型checkpoint時&#xff0c;始終無法加載進去&#xff0c;確定模型存放位置無誤&#xff08;位于models\Stable-diffusion&#xff09;查看cmd窗口時&#xff0c;發現一個報錯提示&#xff1a;Can’t …

Java 命令行參數詳解:系統屬性、JVM 選項與應用配置

Java 命令行參數詳解&#xff1a;系統屬性、JVM 選項與應用配置 在 Java 應用啟動命令中&#xff0c;如&#xff1a; java -jar -Dserver.port8088 xdr-demo-1.0-SNAPSHOT-assembly.jar &-Dserver.port8088是一個 系統屬性&#xff08;System Property&#xff09; 設置。…

【論文筆記】World Models for Autonomous Driving: An Initial Survey

原文鏈接&#xff1a;https://ieeexplore.ieee.org/abstract/document/10522953 1. 世界模型的發展 A. 世界模型的結構基礎 世界模型包含4個關鍵組件&#xff0c;以模擬人類連貫的思考和決策過程。 a&#xff09;感知模塊使用如變分自編碼器&#xff08;VAE&#xff09;、掩…

Spring Cloud Config(微服務配置中心詳解)

關鍵詞&#xff1a;Spring Cloud Config、配置中心、遠程倉庫、動態刷新、加密解密 ? 摘要 在微服務架構中&#xff0c;隨著服務數量的增加&#xff0c;統一管理各服務的配置信息變得尤為重要。傳統的本地配置文件方式難以滿足多環境、多實例、集中化的需求。 Spring Cloud …

【Note】《深入理解Linux內核》 第二十章:深入理解 Linux 程序執行機制

《深入理解Linux內核》 第二十章&#xff1a;深入理解 Linux 程序執行機制&#xff08;Program Execution&#xff09;關鍵詞&#xff1a;exec 系列系統調用、可執行文件格式&#xff08;ELF&#xff09;、用戶地址空間、內存映射、動態鏈接、棧初始化、入口點、共享庫、內核態…

服務器如何配置防火墻規則以阻止惡意流量和DDoS攻擊?

防火墻是保護服務器免受惡意流量和 DDoS 攻擊的第一道防線。通過合理配置防火墻規則&#xff0c;可以有效阻止惡意訪問、限制不必要的流量&#xff0c;并減少攻擊對服務器的影響。以下是配置防火墻規則的全面指南&#xff0c;包括基礎規則設置、防御 DDoS 攻擊的高級策略和最佳…

持續性投入是成就自我價值的關鍵一環

概述 時間&#xff0c;的唯一公平之處就是給你我的長度是相同的&#xff0c;這也是它唯一公平&#xff0c;也是不公平的地方。 所謂的公平&#xff0c;就是不患寡而患不均中所說的平均。 所謂的不公平就是&#xff0c;相同時間內我們彼此對應的標價不同&#xff0c;延伸到后…

使用allegro在BoardGeometry的Silkscreen_Top層畫出圖案

目錄 1. 圖形及圖形放置顯示2. 繪制 1. 圖形及圖形放置顯示 繪制完成圖案&#xff1a; 導出后圖案&#xff1a; 2. 繪制 圖層選中&#xff1b; 畫圓型&#xff1b; 半徑3.5mm&#xff0c;原點生成&#xff1b; 在圖案中挖空&#xff1b; 用指令走線&#xff1a; …

Kotlin 協程:Channel 與 Flow 深度對比及 Channel 使用指南

前言 在 Kotlin 協程的異步編程世界里&#xff0c;Channel 和 Flow 是處理數據流的重要工具&#xff0c;它們有著不同的設計理念與適用場景。本文將對比二者功能與應用場景&#xff0c;詳細講解 Channel 的使用步驟及注意事項 。 一、Channel 與 Flow 的特性對比 Channel 是協程…

MYsql主從復制部署

MySQL 主從復制是將主數據庫的變更自動同步到從數據庫的過程&#xff0c;常用語讀寫分離、高可用性和數據備份。 1.環境準備 確保主從服務器已安裝相同版本的 MySQL&#xff0c;并能通過網絡互相訪問。 # 檢查 MySQL 版本 mysql -V 2.配置主服務器 &#xff08;1&#xff0…

安燈呼叫看板如何實現汽車生產異常秒級響應

在汽車零部件工廠的靜置車間&#xff0c;傳統生產管理依賴人工巡檢與紙質記錄&#xff0c;存在效率低、信息滯后、異常響應慢等問題。某汽車廠曾因物料靜置時間未及時監控&#xff0c;導致批次混料&#xff0c;損失超10萬元。而安燈呼叫看板系統的引入&#xff0c;通過實時狀態…

構造函數注入在spring boot 中怎么使用詳解

我們來詳細講解一下在 Spring Boot 中如何使用構造函數注入&#xff0c;并通過一個完整的、可運行的例子來演示。 構造函數注入是 Spring 官方最推薦的依賴注入方式&#xff0c;因為它能保證對象的不可變性和依賴的完整性。 核心理念 在 Spring Boot 中使用構造函數注入非常簡單…

2025.6.30-2025.7.06第26周:第一次參加頭馬演講俱樂部

現在是周一早上6:23&#xff0c;我開始寫上周的周總結。 3件超出預期的事 參加頭馬俱樂部絕對是最超出預期的&#xff0c;使得這個周末格外的快樂簡歷的第一版終于改完了&#xff0c;花了好長的時間&#xff0c;其中有一天心情還很蕩&#xff0c;因為&#xff0c;我想&#x…

2025使用VM虛擬機安裝配置Macos蘋果系統下Flutter開發環境保姆級教程--下篇

其實如何安裝VM,如何安裝MACOS網上的教程很多,我只是結合我的體驗重新整理了一次,接下來才進入本教程最核心的部分,Flutter開發環境的配置部分。、一.配置前準備 主要是準備相應的工具包,以及其他虛擬機設置1.工具包 工具包的版本也可以自行配置,我這主要是我使用的是F…

QSPI、OSPI與FSMC的區別與內存映射分析

QSPI、OSPI與FSMC的區別與內存映射分析 基本概念與區別 1. FSMC (靈活靜態存儲控制器) 接口類型&#xff1a;并行接口&#xff0c;通常8/16位數據總線總線標準&#xff1a;傳統并行總線協議速度&#xff1a;相對較低&#xff0c;通常最高約100MHz應用場景&#xff1a;SRAM、NOR…

系統思考與心智模式探索

成長的真正障礙&#xff0c;不是能力的不足&#xff0c;而是看待問題的局限。 在復雜多變的商業環境中&#xff0c;我們往往習慣于解決“眼前”的問題&#xff0c;卻忽視了深藏背后的系統性障礙。我們看到的只是表面的“癥狀”&#xff0c;而真正的根源&#xff0c;卻往往隱藏…

物聯網技術的關鍵技術與區塊鏈發展趨勢的深度融合分析

一、物聯網技術的核心架構與關鍵技術 物聯網技術體系由感知層、網絡層、平臺層、應用層和安全層構成&#xff0c;各層技術協同工作&#xff0c;實現物理世界與數字世界的深度融合。 感知層&#xff1a;物聯網的“感官” 傳感器技術&#xff1a;包括環境傳感器&#xff08;溫度…

針對Exhcnage Server的攻擊防范措施

一、背景介紹最近&#xff0c;安全研究人員揭露了一個名為 NightEagle&#xff08;又名 APT-Q-95&#xff09; 的高級持續性威脅&#xff08;APT&#xff09;組織。這個組織被觀察到利用 Microsoft Exchange 服務器中的零日漏洞鏈 進行攻擊&#xff0c;其主要目標是中國政府、國…

編程基礎:繼承

能幫到你的話&#xff0c;就給個贊吧 &#x1f618; 文章目錄繼承&#xff1a;使用基類成員&#xff1a;前提——派生類必須同樣支持基類成員(組件和功能)示例&#xff1a;動物Animal 有 鰓 和 會飛。則 鳥Bird 不是 Animal&#xff0c;因為Bird雖會飛&#xff0c;卻沒有鰓。魚…

TMC4361A 使用(未驗證)

prompt 我用STM32F103C8T6 來控制 TMC4361A 運動控制芯片 &#xff0c;我配置 STM32F103C8T6 的 SPI1 與 TMC4361A 進行通信&#xff0c;配置 PA4 作為片選線&#xff0c;配置 PA8 作為 RCC_MCO 輸入時鐘輸入到 TMC4361A, 并將其連接到TMC4361A的CLK_EXT引腳。我想控制 TMC4361…