<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ## **Memsic2125加速度計** > Memsic2125是一款兩軸加速度計,它能夠測量兩個方向正負2g的加速度(g代表重力加速度)。它的引腳設計很簡單:只有兩個數據輸出引腳,一個為X軸,一個為Y軸。它的數據輸出引腳會根據加速度的大小輸出不同的**脈寬**(不知道脈寬是什么請看[這篇文章](http://blog.csdn.net/amagamag/article/details/51460903))。通過**pulseln()**可以對微妙級別的脈沖寬度進行測量,從而通過計算獲取加速度數據。 ### **所需硬件** * Arduino板或Genuino板 * Memsic 2125加速度計 * 跳線 * 面包板 * 連接線 ### **電路** ![圖片來自官網](http://img.blog.csdn.net/20160627085451369) 首先,用Memsic2125 上的小三角形來正確的將傳感器插在面包板上。分別將Memsic2125的**+V**和**GND**連接到**+5V**和**GND**。將2號數字引腳先接到**Xout**,將3號數字引腳先接到**Yout**。 ![圖片來自官網](http://img.blog.csdn.net/20160627085543838) 你的Arduino或Genuino板必須接上電腦,以便在串口監視器看到結果。 ### **原理圖** ![圖片來自官網](http://img.blog.csdn.net/20160627085557406) ### **代碼** 打開Arduino IDE的串口監視器以看到效果。 ~~~ /* Memsic2125 讀取Memsic 2125兩軸加速度計的脈寬,并且將它轉換成為真正的加速度,然后輸出到串口監視器。 電路搭建: * Xout 接到2號數字引腳 * Yout 接到3號數字引腳 * +V接到+5V * GND接到GND 代碼公開 */ // 不可變常量: const int xPin = 2; // 加速度X軸輸出 const int yPin = 3; // 加速度Y軸輸出 void setup() { // 初始化串口連接: Serial.begin(9600); // 初始化加速度引腳為輸出模式: pinMode(xPin, INPUT); pinMode(yPin, INPUT); } void loop() { // 存儲脈寬的變量: int pulseX, pulseY; // 存儲加速度的變量: int accelerationX, accelerationY; // 讀取x\y上面的脈沖寬度: pulseX = pulseIn(xPin, HIGH); pulseY = pulseIn(yPin, HIGH); // 將脈寬轉換成為加速度 // X與Y軸上的加速度將以(milli-g)千分之重力加速度來輸出: // 按照這個單位地球的重力加速度為1000g,或者簡稱lg。 accelerationX = ((pulseX / 10) - 500) * 8; accelerationY = ((pulseY / 10) - 500) * 8; // 輸出加速度數據 Serial.print(accelerationX); // 輸出一個制表符: Serial.print("\t"); Serial.print(accelerationY); Serial.println(); delay(100); } ~~~ ### **相關資料** [pinMode()](https://www.arduino.cc/en/Reference/PinMode)? [pulseIn()](https://www.arduino.cc/en/Reference/PulseIn)? [serial.begin()](https://www.arduino.cc/en/Serial/Begin)? [serial.print()](https://www.arduino.cc/en/Serial/Print)? [原文鏈接](http://www.arduino.cc/en/Tutorial/Memsic2125)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看