<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # LED亮度漸隱 > 本例向你展示如何使用**analogWrite()**函數來讓LED亮度漸變。AnalogWrite 通過**PWM技術**(脈寬調制技術)工作,采用PWM技術能夠快速的開關一個數字引腳,通電的時間和斷電的時間按照一定的比例分配,這樣一來就產生了亮度漸變效果。? > 【譯者注:想不明白應該去了解下生物學**視覺暫留**的知識。】 ### 所需硬件 * Arduino或Genuino板 * LED燈 * 220Ω電阻 * 連接線 * 面包板 ### 電路 將LED陽極(較長腳)通過220Ω電阻連接到板上的9號引腳。? 連接LED陰極(較短腳)到GND。? ![這里寫圖片描述](http://img.blog.csdn.net/20160418131130640) ### 原理圖 ![這里寫圖片描述](http://img.blog.csdn.net/20160418131059575) ### 代碼 setup()函數只需聲明9號引腳為輸出引腳,其他什么都不做。 調用analogWrite()函數(在loop函數內)需要兩個參數:第一個為要操作的引腳,第二個時要寫出的PWM?**脈沖寬度**?值。 為了讓LED的熄滅和點亮有漸變效果,你需要逐漸將PWM值從0(全部時間不通電)逐漸增加到255(全部時間通電)。然后,再從255調到0,以完成一輪亮度漸變。在下方的工程中,PWM值用一個名為**brightness**的變量存儲。loop函數每執行一次,就將brightness變量的值與**fadeAmount**變量的值相加,并將和再賦給brightness變量。 當brightness變量的值是0或255時,如果發現fadeAmount值為-5,它就應被設為5;若為5則設為-5。如此一來,下次進入循環時亮度就會跟著由弱轉亮或由亮轉弱。analogWrite()函數能極其快速的改變PWM值,因此在loop函數最后的delay控制了漸變速度。試試看改變delay的時間,看看它如何影響漸變效果。 ~~~ /* LED亮度漸隱 本例向你展示如何用analogWrite()函數讓9號引腳連接的LED亮度漸弱。 analogWrite()函數使用PWM技術,因此如果你想要使用其他引腳接LED,一定保證選擇的引腳也支持PWM輸出。大多數Arduino板支持PWM的引腳以“~”符號標明.比如: ~3, ~5, ~6, ~9, ~10和~11。 這個例子是公開的。 */ int led = 9; // LED連接的PWM引腳 int brightness = 0; // LED亮度 int fadeAmount = 5; // 亮度每次的變化值 // setup函數在通電或復位后僅運行一次。 void setup() { // 聲明9號引腳為輸出模式: pinMode(led, OUTPUT); } // loop函數永遠循環運行: void loop() { // 設置9號引腳LED的亮度值: analogWrite(led, brightness); // 改變下次的亮度值: brightness = brightness + fadeAmount; // 一次漸變結束后改變亮度變化的方向: if (brightness == 0 || brightness == 255) { fadeAmount = -fadeAmount ; } // 等待30毫秒以讓人眼看出漸變效果 delay(30); } ~~~ ## 相關資料 [setup()](http://www.arduino.cc/en/Reference/Setup)? [loop()](http://www.arduino.cc/en/Reference/Loop)? [analogWrite()](http://www.arduino.cc/en/Reference/AnalogWrite)? [int](http://www.arduino.cc/en/Reference/Int)? [for](http://www.arduino.cc/en/Reference/For)? [PWM](http://www.arduino.cc/en/Tutorial/PWM)? [讀取模擬信號、串口操作? Arduino工程的最小單元? 點亮LED? 讀取模擬電壓值]( )
                  <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>

                              哎呀哎呀视频在线观看