讓你的專案「更有感」:DRV2605L Qwiic 觸覺回饋模組上手指南
Arduino 教學 硬體介紹如果你曾經覺得自己的電子專案「少了點什麼」,通常那個缺少的元素就是觸覺回饋 (Haptic Feedback)。無論是按下按鈕時的清脆震動,還是遊戲手把中的碰撞感,良好的觸覺設計能讓互動體驗瞬間升級。
過去要控制震動馬達,我們可能只會用簡單的 PWM 控制,但效果往往只有「震動」和「不震動」。今天要介紹的 DRV2605L Qwiic 模組,將徹底改變這一切。它內建了 100 多種震動特效,並且透過 I2C 介面即可輕鬆控制。
什麼是 DRV2605L?
DRV2605L 是由 Texas Instruments (TI) 推出的觸覺驅動晶片。它不僅僅是一個馬達驅動器,它內建了來自 Immersion 公司的專利波形庫。這意味著你不需要自己編寫複雜的 PWM 波形,只需要發送一個指令(例如:播放效果 #1),它就會產生如「強力點擊」、「雙擊」、「由弱漸強」等細膩的觸感。
- 支援兩種類型馬達: ERM(偏心旋轉質量,常見的震動馬達)與 LRA(線性諧振致動器,如手機中的 Taptic Engine)。
- 內建特效庫: 擁有 123 種預設震動波形。
- 智慧驅動: 自動校準馬達特性,提供最強的煞車與起步控制,讓震動不拖泥帶水。
為什麼選擇 Qwiic 版本?
如果你是 SparkFun 或 Adafruit 的愛用者,你一定聽過 Qwiic 或 Stemma QT 接口。這是一種標準化的 JST-SH 4-pin 連接系統。
傳統的模組需要焊接 VCC, GND, SDA, SCL 四條線,對於想快速驗證原型的開發者來說很麻煩。使用帶有 Qwiic 接口的 DRV2605L 模組,你只需要一條 Qwiic 傳輸線,插上你的 Arduino 或 Raspberry Pi,完全不需要焊接,也不會接錯線。
快速上手:Arduino 範例
要使用這個模組,我們推薦使用 Adafruit 提供的 DRV2605 函式庫。請先在 Arduino IDE 的 Library Manager 中搜尋並安裝 Adafruit DRV2605 Library。
#include <Wire.h>
#include "Adafruit_DRV2605.h"
Adafruit_DRV2605 drv;
void setup() {
Serial.begin(9600);
Serial.println("DRV2605L 測試開始");
// 初始化 I2C
if (!drv.begin()) {
Serial.println("找不到 DRV2605L,請檢查接線!");
while (1);
}
// 選擇馬達類型
drv.selectLibrary(1); // 1 = ERM (一般震動馬達), 6 = LRA (線性馬達)
// I2C 觸發模式
drv.setMode(DRV2605_MODE_INTTRIG);
}
void loop() {
Serial.println("播放特效:強力點擊");
// 設定波形效果 (效果編號 1-117)
// 1 = 強力點擊 (Strong Click)
drv.setWaveform(0, 1);
drv.setWaveform(1, 0); // 結束波形序列
// 執行
drv.go();
delay(1000);
}
注意:記得根據你使用的馬達類型(ERM 或 LRA)修改 drv.selectLibrary() 的參數,否則震動效果會很弱。
實際應用場景
🎮 遊戲手把
在射擊或賽車遊戲中,根據撞擊力道提供不同的震動反饋。
📱 觸控介面
為電容式觸控螢幕添加「實體按鍵感」,確認使用者的輸入已被接收。
♿ 輔助科技
為視障輔助裝置提供觸覺導航資訊,例如靠近障礙物時震動。
DRV2605L Qwiic 模組是目前市面上最容易上手的觸覺解決方案。它解決了傳統震動馬達控制粗糙的問題,並透過 Qwiic 介面讓接線變得無比簡單。如果你想讓你的專案更有「質感」,絕對值得入手試試!
喜歡這篇文章嗎?歡迎在下方留言分享你的觸覺專案! 👇




