<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智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ## **Switch和Case條件語句** > **If語句**允許你根據條件的真假(**真(TRUE)**或**假(FALSE)**)進行兩個分支操作。當需要進行多個判斷時,你就必須使用**If嵌套**。不過其實還有一種更為簡潔的處理多條件判斷的方法,那就是使用**switch**語句,**switch**語句允許你一次對多種情況進行區分。本例向你展示如何使用switch語句來一次根據光敏電阻的四種不同狀態(全黑,較暗,中等,較亮)進行不同的處理。 程序首先讀取光敏電阻的模擬信號值。然后它使用**map()**函數來將模擬值映射到四個數字:0,1,2,3。最終,一個**switch()**語句將會根據映射后的數字輸出不同的信息到電腦。 ### **所需硬件** * Arduino或Genuino板 * 光敏電阻 或 其他輸出模擬信號的傳感器 * 10kΩ電阻 * 跳線 * 面包板 * 連接線 ### **電路** ![圖片來自官網](http://img.blog.csdn.net/20160527091409508)? 光敏電阻通過一個分壓電路連接到A0口(使用10kΩ電阻進行分壓)。在這個電路中,**analogRead()**函數在室內一般會返回0-600的數字。 ### **原理圖** ![圖片來自官網](http://img.blog.csdn.net/20160527091420165) ### **代碼** ~~~ /* Switch和Case條件語句 展示switch語句的使用,switch語句讓你能夠一次對變量的多個可能值進行分支處理,這和使用一系列if語句嵌套的功效相同。但使用switch將使代碼更加簡潔。 為了更好的看到效果,請在有良好照明的房間進行實驗。實驗過程中你只需要打開串口監視器,并且逐漸將你的手移到串口監視器上方。 電路搭建: * 連接模擬信號傳感器到A0口和+5V接口 * 連接10KΩ電阻到A0口和GND接口 代碼公開。 */ // 常量,定義了傳感器的最大、最小值: const int sensorMin = 0; // 最小值 const int sensorMax = 600; // 最大值 void setup() { // 初始化串口通信: Serial.begin(9600); } void loop() { // 讀取傳感器: int sensorReading = analogRead(A0); // 將傳感器值映射到0-3: int range = map(sensorReading, sensorMin, sensorMax, 0, 3); // 根據映射后的值進行不同處理: switch (range) { case 0: //0表示手應該在正上方 輸出全黑 Serial.println("全黑"); break; case 1: // 0表示手遮擋了部分光 輸出較暗 Serial.println("較暗"); break; case 2: // 2表示手遮擋了小部分光 輸出中等 Serial.println("中等"); break; case 3: // 3手未擋光 輸出較亮 Serial.println("bright"); break; } delay(1); // 為串口穩定性延遲1毫秒 } ~~~ ### **相關資料** [serial.begin()](https://www.arduino.cc/en/Serial/Begin)? [analogRead()](https://www.arduino.cc/en/Reference/AnalogRead)? [map()](https://www.arduino.cc/en/Reference/Map)? [Serial.println()](https://www.arduino.cc/en/Serial/Print)? [原文鏈接](https://www.arduino.cc/en/Tutorial/SwitchCase)
                  <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>

                              哎呀哎呀视频在线观看