<li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 電子開發(fā)網(wǎng)

      電子開發(fā)網(wǎng)電子設(shè)計 | 電子開發(fā)網(wǎng)Rss 2.0 會員中心 會員注冊
      搜索: 您現(xiàn)在的位置: 電子開發(fā)網(wǎng) >> 基礎(chǔ)入門 >> Arduino開發(fā)學(xué)習(xí) >> 正文

      Arduino學(xué)習(xí)記錄 基礎(chǔ)知識總結(jié)_arduino pullup

      作者:佚名    文章來源:網(wǎng)絡(luò)整理    點擊數(shù):    更新時間:2025/3/14

      一、INPUT和OUTPUT
      1.當(dāng)引腳設(shè)置為INPUT狀態(tài)時,引腳為高阻抗?fàn)顟B(tài)(100兆歐)。此時引腳可以用于讀取傳感器信號或開關(guān)信號。
      2.當(dāng)引腳設(shè)置為OUTPUT狀態(tài)時,引腳為低阻抗?fàn)顟B(tài)。這意味著Arduino可以向其它電路元器件提供電流。也就是說,Arduino引腳在輸出(OUTPUT)模式下可以電亮LED或者驅(qū)動電機。
      3.INPUT_PULLUP模式:Arduino微控制器自帶內(nèi)部上拉電阻。在該模式下可以使用該內(nèi)部上拉電阻。

      二、引腳的作用

       
      1.數(shù)字引腳:
      ●引腳1-13用作數(shù)字輸入/輸出引腳。其中,引腳13連接到板載的LED指示燈;引腳 3、5、6、9、10、11具有PWM功能。
      ●數(shù)字引腳可以開啟或者關(guān)閉。打開時,處于5V的高電平狀態(tài);關(guān)閉時,處于0V的低電平狀態(tài)。
      ●當(dāng)數(shù)字引腳配置為輸出時,它們設(shè)置為0或5V。當(dāng)配置為輸入時,電壓可以在0-5V之間變化, 并轉(zhuǎn)換為數(shù)字表示(0或1)。
      ●脈寬調(diào)制(PWM)是一種調(diào)制技術(shù),用于將消息編碼為脈沖信號。pwm由兩個關(guān)鍵部分組成:頻率和占空比。頻率決定完成單個周期所需要的時間以及信號從高到低的波動速度。占空比決定信號在總時間段內(nèi)保持高電平的時間。
      2.電源:
      ●VIN引腳:使用外部電源為UNO開發(fā)板供電
      ●5V和3.3V:向外部組件提供穩(wěn)壓的5V和3.3V
      ●RESET引腳:復(fù)位Arduino開發(fā)板
      3.模擬輸入:
      ●A0-A5作為ADC(模數(shù)轉(zhuǎn)換器)。這些引腳用作模擬輸入,但也可以用作數(shù)字輸入或者輸出。
      ●模數(shù)轉(zhuǎn)換:ADC是用于將模擬信號轉(zhuǎn)換為數(shù)字信號的電子電路。引腳A0-A5能夠讀取模擬電壓。ADC可以通過1024個數(shù)字電平表示模擬電壓,將電壓轉(zhuǎn)換為微處理器可以理解的位。e.g IP語音(將聲波轉(zhuǎn)換為模擬電壓,通過設(shè)備的ADC,轉(zhuǎn)換成數(shù)字?jǐn)?shù)據(jù),通過互聯(lián)網(wǎng)傳輸?shù)浇邮斩恕?/P>

      三、PWM(方波控制信號)
      1.工作原理:采用不同的占空比來模擬“模擬輸出”。
      2.作用:
      ●提供模擬輸出;如果數(shù)字輸出被過濾,則其模擬電壓將介于0%-100%之間
      ●生成音頻信號
      ●控制燈光亮度,為電機提供變速控制
      ●生成調(diào)制信號,例如驅(qū)動用于遠程控制的紅外LED
      3.使用:
      ●analogWrite(pin,dutyCycle)
      pin值選擇(3,5,6,9,10,11),dutyCycle的值在0~255之間。這種方式pwm信號的頻率是固定的默認(rèn)值(490Hz)。

      # define analogPin 3
      void setup()
      {
       pinMode(analogPin,OUTPUT);
      }
      void loop()
      {
       analogWrite(analogPin,100);  // 輸出PWM,占空比為 100/255
      }

      ●delayMicroseconds()手動實現(xiàn)頻率可調(diào)的PWM
      (1)兩次的digitalWrite輸出狀態(tài)必須相反;
      (2)可以用delay()實現(xiàn)毫秒級延遲,用delayMicroseconds()實現(xiàn)微妙級延遲

      (3)特點
      1.pwm的比例可以更精確
      2.周期和頻率可控制
      3.所有pin腳都可以輸出,不僅局限于6個腳
      4.缺點:CPU無法進行其他活動

      void setup()
      {
        pinMode(8, OUTPUT);    // 設(shè)置8號引腳為輸出模式
      }
      void loop()
      {
        digitalWrite(8, HIGH);
        delayMicroseconds(100);    // 輸出PWM,占空比為100/1000=10%
        digitalWrite(8, LOW);
        delayMicroseconds(1000 - 100);  // 修改這里的1000可以調(diào)整頻率,總周期為1000us,所以頻率為1000Hz.
      }

      四、三段代碼的區(qū)別

       

      ●第一段代碼定義了一個布爾型變量pushButton,將2號引腳的電平狀態(tài)賦給pushButton,并直接根據(jù)pushButton的真假賦予1/0進入條件判定,同時在判定時加入了邏輯運算符!,使得判定的值相反。所以該代碼的運算結(jié)果為按下按鈕時LED燈亮,松開按鈕時LED燈不亮。
      ●第二段代碼定義了一個整形變量sensorVal,將2號引腳的電平狀態(tài)賦給sensorVal,在條件判定時,按鈕的邏輯狀態(tài)是反的,當(dāng)按鈕沒有按下時,2號引腳為高電平狀態(tài),在if語句中要使13號引腳為低電平狀態(tài),LED燈不亮,當(dāng)按鈕按下時則相反。同時該段代碼的第2行和第10行還啟動了串口通訊,并把速率調(diào)到9600,則用戶可以在串口中看到sensorVal的值。
      ●第三段代碼運用了兩個按鈕操作,因此定義了兩個boolean變量。但在if語句的判定中沒有使用!運算,即運行結(jié)果為當(dāng)兩個按鈕都沒有按下時,13號引腳的狀態(tài)為高電平,LED燈亮;當(dāng)按下了其中一個按鈕或者兩個按鈕時,13號引腳為低電平狀態(tài),LED燈不亮。

      五、邏輯運算符

      ●&&邏輯與:只有在兩個操作數(shù)都為真時才返回真。
      ●&:取地址的單目運算符;位運算符,表示“按位與”,是雙目運算符。
      ●||邏輯或:任意一個為真時返回真。
      ●!邏輯非:當(dāng)操作數(shù)為假時返回真。

      六、串口通訊

      void setup(){
          Serial.begin(9600);
      }
      void loop(){
          if (Serial.available()){
              int value=Serial.read();
      } 


      1.Serial begin(9600)
      設(shè)置串口通信波特比率為9600
      2.if(Serial.avilable())
      判斷Arduino串口是否收到數(shù)據(jù),函數(shù)Serial.available()返回值為int型,不帶參數(shù)
      3.int var=Serial.read()
      將串口數(shù)據(jù)讀入到變量var中,函數(shù)Serial.read()也不帶參數(shù),返回值為串口數(shù)據(jù),int型

      七、傳感器
      1.主要參數(shù)
      vcc:5V電源
      Trig:控制端(觸發(fā))
      Echo:接收端(回聲)
      Gnd:接地端
      探測距離:2cm-450cm
      感應(yīng)角度:<15度
      探測精度:0.3cm

      2.工作原理

       
      const int TrigPin=8;       //設(shè)置發(fā)射腳位
      const int EchoPin=9;      //設(shè)置接收腳位
      float cm;                 //浮點型數(shù)據(jù)類型(加小數(shù)點,提高精準(zhǔn)度)
      void setup() {
      Serial.begin(9600);
      pinMode(TrigPin,OUTPUT);
      pinMode(EchoPin,INPUT);
      }
      void loop() {
      digitalWrite(TrigPin,LOW);        //用低高低電平發(fā)送脈沖給Trigpin引腳
      delayMicroseconds(2);             //微秒級延時
      digitalWrite(TrigPin,HIGH);
      delayMicroseconds(10);
      digitalWrite(TrigPin,LOW);
      cm=pulseIn(EchoPin,HIGH)/58.0;    //讀取脈沖寬度,換算成厘米
      Serial.print(cm);                 //顯示距離
      Serial.print("cm");               //顯示單位
      Serial.println();                 //回車
      delay(1000);
      }

      ●const的作用是將定義的腳位存儲在只讀存儲器,即存儲在UNO板的硬盤當(dāng)中,在運行過程中節(jié)約UNO板的資源。
      在C語言中,關(guān)鍵字const用來定義常量,,如果一個變量被const修飾,那么它的值就不能再改變。
      ●pulseIn函數(shù)其實就是一個簡單的測量脈沖寬度的函數(shù),默認(rèn)單位是us=10^-6s。也就是說pulseIn測出來的是超聲波從發(fā)射到接收所經(jīng)過的時間。對于除數(shù)58也很好理解,聲音在干燥、攝氏 20度的空氣中的傳播速度大約為343米/秒,合34,300厘米/秒。或者,我們作一下單位換算,34,300除以1,000,000厘米/微秒。即為:0.0343厘米/微秒,再換一個角度,1/(0.0343 厘米/微秒)即:29.15 微秒/厘米。這就意味著,每291.5微秒表示10CM的距離。1厘米就是29.15微秒。但是發(fā)送后到接收到回波,聲音走過的是2倍的距離呀。所以實際距離就是1厘米,對應(yīng)58.3微秒。實際上整個測距過程是測的發(fā)出聲波到收到回波的時間,你的程序里的第一個distance實際上是時間us。所以換成距離cm,要除以58。當(dāng)然除以58.3可能更精確。所以我們可以用 pulseIn(EchoPin, HIGH) / 58.00獲取測得的距離。

      Tags:Arduino開發(fā)板,Arduino,入門教程  
      責(zé)任編輯:admin
      請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
      1分 2分 3分 4分 5分

      還可以輸入 200 個字
      [ 查看全部 ] 網(wǎng)友評論
      關(guān)于我們 - 聯(lián)系我們 - 廣告服務(wù) - 友情鏈接 - 網(wǎng)站地圖 - 版權(quán)聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 久久精品亚洲综合一品| 精品综合久久久久久888蜜芽| 激情综合亚洲色婷婷五月APP| 久久亚洲精品成人综合| 亚洲综合小说久久另类区| 亚洲精品国产综合久久久久紧| 色综合合久久天天给综看| 狠狠色综合久色aⅴ网站 | 涩涩色中文综合亚洲| 亚洲综合av一区二区三区不卡| 狠狠人妻久久久久久综合| 色综合天天做天天爱| 亚洲综合一区二区精品导航| 小说区图片区综合久久88| 亚洲成色在线综合网站| 色综合久久综精品| 色欲综合一区二区三区| 亚洲综合网站色欲色欲| 麻豆精品一区二区综合av| 99v久久综合狠狠综合久久| 91综合久久婷婷久久| 亚洲综合av永久无码精品一区二区| 婷婷色中文字幕综合在线| 久久综合狠狠综合久久综合88| 国产综合在线观看| 狠狠色伊人久久精品综合网| 色综合蜜桃视频在线观看| 亚洲综合精品香蕉久久网97| 麻豆精品久久精品色综合| 综合激情五月综合激情五月激情1| 色婷婷久久综合中文网站| 天天狠狠色综合图片区| 国产成人综合亚洲绿色| 亚洲偷自拍拍综合网| 伊人久久综合精品无码AV专区| 一本久久知道综合久久| 日本伊人色综合网| 97久久久精品综合88久久 | 伊人久久大香线蕉综合热线| 色综合久久无码中文字幕| 久久综合九色综合97伊人麻豆|