Arduino編程控制與應用 課件3-5 完成模擬輸入與輸出功能的實現(xiàn)_第1頁
Arduino編程控制與應用 課件3-5 完成模擬輸入與輸出功能的實現(xiàn)_第2頁
Arduino編程控制與應用 課件3-5 完成模擬輸入與輸出功能的實現(xiàn)_第3頁
Arduino編程控制與應用 課件3-5 完成模擬輸入與輸出功能的實現(xiàn)_第4頁
Arduino編程控制與應用 課件3-5 完成模擬輸入與輸出功能的實現(xiàn)_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

Arduino編程控制與應用能力模塊三掌握Arduino文本編程的應用任務五完成模擬輸入與輸出功能的實現(xiàn)導入通過模擬輸出、LED亮度調節(jié)、模擬輸出與呼吸燈、模擬輸入讀取,從而實現(xiàn)模擬輸入與輸出功能。具體效果如下:1.通過調節(jié)流水燈多功能擴展板上的可調電阻改變A0引腳的電壓,并在串口監(jiān)視器中打印出A0引腳的電壓模擬值。2.通過11號引腳輸出模擬量,改變模擬量的大小,流水燈多功能擴展板的11號LED燈呈現(xiàn)不用的亮度。3.流水燈多功能擴展板的11號LED燈從暗逐漸變亮,然后再逐漸變暗,不斷循環(huán)。新授Newteaching1目錄一、模擬信號二、模擬輸入與輸出功能實現(xiàn)一、模擬信號

模擬信號是指用連續(xù)變化的物理量所表達的信息,如溫度、濕度、壓力、長度、電流、電壓等等,我們通常又把模擬信號稱為連續(xù)信號,它在一定的時間范圍內可以有無限多個不同的取值。在Arduino中,常用0~5V的電壓來表示模擬信號。

二、模擬輸入與輸出功能實現(xiàn)

Arduino板上實現(xiàn)模擬輸入與輸出功能需要用到如下函數(shù):

analogReference()函數(shù)函數(shù)的作用是配置模擬輸入輸出端口的參考電壓。analogRead()函數(shù)函數(shù)的作用是讀取指定模擬端口的模擬值,讀取周期為100μs,最大讀取速度可達每秒10000次。analogWrite()函數(shù)函數(shù)的作用是通過PWM的方式在端口輸出一個模擬量,經常用于LED亮度控制和電機轉速控制。二、模擬輸入與輸出功能實現(xiàn)1.analogReference()函數(shù)

analogReference函數(shù)的作用是配置模擬輸入輸出端口的參考電壓。獲取該

端口的電壓值后,根據(jù)參考電壓將模擬值轉換為0-1023。此函數(shù)為無返回值函數(shù)。其調用形式為:analogReference(type);參數(shù)type的選項如下:1.DEFAULT:默認5V或3.3V為基準電壓(以Arduino板的電壓為基準電壓);2.INTERNAL:低電壓模式,使用片內基準電壓(Mega板無此選項);3.INTERNAL1V1:低電壓模式,以1.1V為基準電壓(此選項只針對Mega板);4.INTERNAL256:低電壓模式,以2.56V為基準電壓(此選項只針對Mega板);5.EXTERNAL:擴展模式,以AREF端口(0~5V)的電壓為基準電壓(此選項只針對Mega板)。二、模擬輸入與輸出功能實現(xiàn)2.analogRead()函數(shù)

analogRead函數(shù)的作用是讀取指定模擬端口的模擬值,讀取周期為100μs,最大讀取速度可達每秒10000次。其調用形式為:analogRead(pin);參數(shù)pin表示讀取模擬輸入端口編號(必須是模擬輸入輸出端口,對于UNO即為A0-A5端口),函數(shù)的返回值為整型值(0-1023之間)。輸入電壓為5V的讀取精度為5V/1024個單位,約等于0.0049V。輸入范圍和精度可以通過前面學習的analogReference函數(shù)修改。二、數(shù)字信號的基本知識3.analogWrite()函數(shù)

analogWrite函數(shù)的作用是通過PWM的方式在端口輸出一個模擬量,經常用于LED亮度控制和電機轉速控制。analogWrite函數(shù)為無返回值函數(shù)。其調用形式為:analogWrite(pin,value);參數(shù)pin表示所要設置的端口,只能選擇函數(shù)支持的端口(這些端口一般標有“~”或“PWM”,對于UNO板來說是3、5、6、9、10、11端口);參數(shù)value表示PWM輸出的占空比,范圍在0~255之間,對應的占空比為0~100%。二、模擬輸入與輸出功能實現(xiàn)

PWM(PlusWidthModulation,脈沖寬度調制)是一種模擬控制方式,根據(jù)相應載荷的變化來調制晶體管基極或MOS管柵極的偏置,來實現(xiàn)晶體管或MOS管導通時間的改變,從而實現(xiàn)開關穩(wěn)壓電源輸出的改變。這種方式能使電源的輸出電壓在工作條件變化時保持恒定,是利用微處理器的數(shù)字信號對模擬電路進行控制的一種非常有效的技術。PWM通過對一系列脈沖的寬度進行調制,來等效地獲得所需要的波形(包含形狀以及幅值)。它對模擬信號電平進行數(shù)字編碼,也就是說通過調節(jié)占空比的變化來調節(jié)信號、能量等的變化。占空比就是指在一個周期內,信號處于高電平的時間占據(jù)整個信號周期的百分比,例如方波的占空比就是50%。二、模擬輸入與輸出功能實現(xiàn)

Arduino板上數(shù)字前面帶“A”的端口是模擬輸入端口,使用這些端口可以完成模擬輸入功能,但作為輸出端口時只能當做數(shù)字端口使用。模擬輸出端口一般標有“~”或“PWM”,對于UNO板來說是3、5、6、9、10、11端口。任務實施2TaskImplementation一、任務準備(一)軟件及硬件準備序號軟件及硬件名稱數(shù)量1ArduinoIDE/2聯(lián)網的電腦1臺/人3鍵盤1個/人4鼠標1個/人5ArduinoUNO開發(fā)板1塊/人6流水燈多功能擴展板1塊/人7USB串口線1根/人一、任務準備(二)場地設備準備(三)安全防護準備任務實施前需要做好場地防護準備以及檢查實訓場地和設備設施是否及存在安全隱患,如不正常請匯報老師并進行處理方可實施任務。11.注意Arduino開發(fā)板與電腦的連接是否可靠;22.注意Arduino開發(fā)板與電腦連接端口的匹配;

33.注意輸出電壓,避免開發(fā)板被燒壞;

44.注意Arduino開發(fā)板與流水燈多功能擴展板連接時,針腳要對孔,插入時要小心,避免陣腳變歪或折斷。

二、實施步驟(一)控制電路連接

連接線的方頭端接口連接ArduinoUNO開發(fā)板,另一端USB接口連接電腦。

二、實施步驟(二)控制程序編寫與上傳

步驟1:打開ArduinoIDE軟件,進入界面。

二、實施步驟(二)控制程序編寫與上傳

步驟2:在工具-端口-選擇對應的端口。若分不清端口,先把開發(fā)板連接上,查看端口,有COM1、COM3、COM4、COM5、COM6;斷開開發(fā)板連接,查看端口,有COM3、COM4、COM5、COM6;少了一個COM10端口,那么COM10就是對應的端口。

二、實施步驟(三)模擬輸入讀取

步驟1:新建一個文檔,//后的代號可刪除;在【代碼編寫區(qū)域】中輸入“intitem;”,然后在“voidsetup(){”下方輸入“Serial.begin(9600);”,最后在“voidloop(){”下方輸入如圖所示代碼

任務效果:通過調節(jié)流水燈多功能擴展板上的可調電阻改變A0引腳的電壓,并在串口監(jiān)視器中打印出A0引腳的電壓模擬值。二、實施步驟(三)模擬輸入讀取

步驟2:點擊上傳,如果操作順利,就會顯示上傳成功,然后打開串口監(jiān)視器,其會打印出現(xiàn)一個值(具體的數(shù)值要看可調電阻所處的位置),這是讀取到了模擬輸入的值,如圖所示。

二、實施步驟(三)模擬輸入讀取

步驟3:可通過旋轉可調電阻來改變模擬輸入的值(理論范圍是0-1024),逆時針旋轉模擬輸入值增大,反之減小。在串口監(jiān)視器都可讀取變化的模擬輸入值,如圖所示。

二、實施步驟(三)串口與數(shù)字輸出步驟4:控制程序解析:定義一個整數(shù)變量item,設置初始化函數(shù)中定義串口的波特率為9600,在loop函數(shù)中讀取A0的值并保存在item變量中,通過串口監(jiān)視器打印出item的值,然后延時1000ms。程序運行流程如圖3-5-8所示。

二、實施步驟(四)模擬輸出

步驟1:新建一個文檔,//后的代號可刪除;在【代碼編寫區(qū)域】中的輸入“intitem=255;”,隨后在“voidsetup(){”的下方輸入“pinMode(11,OUTPUT);”,最后在voidloop(){的下方輸入“analogWrite(11,iteam);”,完成的代碼如圖所示。

二、實施步驟(四)模擬輸出

步驟2:點擊上傳,如果操作順利,就會顯示上傳成功,然后可發(fā)現(xiàn)3號LED非常的亮,是因為此時的模擬輸出電壓值為最大的255,如圖所示。可以通過改變模擬輸出電壓來控制3號LED的亮度,模擬輸出電壓越大LED越亮,模擬輸出電壓值范圍是0-255。

二、實施步驟(四)模擬輸出

步驟3:控制程序解析:定義一個整數(shù)型變量item并賦值為255,在初始化函數(shù)中設置11號引腳為輸出模式,在loop函數(shù)中設置11號引腳輸出值為item的模擬量。程序運行流程如圖所示。

二、實施步驟(五)模擬輸出與呼吸燈

步驟1:新建一個文檔,//后的代號可刪除;在【代碼編寫區(qū)域】中的“voidsetup(){”下方輸入“pinMode(11,OUTPUT);”,再在“voidsetup(){”下方輸入如圖所示代碼。點擊上傳,如果操作順利,就會顯示上傳成功,然后可發(fā)現(xiàn)3號LED的亮度由弱變強,以此形式進行循環(huán),跟呼吸一樣,因此稱其為呼吸燈。

二、實施步驟(五)模擬輸出與呼吸燈

步驟2:控制程序解析:在初始化函數(shù)中設置11號引腳為輸出模式,在loop函數(shù)中使用for循環(huán)函數(shù)使11號引腳輸出值為i的模擬量并延時6ms,i的值從0到255,每次循環(huán)加1,當i大于255時退出for循環(huán),進入下一個for循環(huán),設置11號引腳輸出值為i的模擬量并延時6ms,i的值從255到0,每次循環(huán)減1。當i小于0的時候退出循環(huán)。程序運行流程如圖3-5-13所示。

二、實施步驟(五)模擬輸出與呼吸燈

步驟4:控制程序解析:定義一個整數(shù)變量item,設置初始化函數(shù)中定義串口的波

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論