《單片機基礎(chǔ)與Arduino應(yīng)用(第2版)》全套教學(xué)課件_第1頁
《單片機基礎(chǔ)與Arduino應(yīng)用(第2版)》全套教學(xué)課件_第2頁
《單片機基礎(chǔ)與Arduino應(yīng)用(第2版)》全套教學(xué)課件_第3頁
《單片機基礎(chǔ)與Arduino應(yīng)用(第2版)》全套教學(xué)課件_第4頁
《單片機基礎(chǔ)與Arduino應(yīng)用(第2版)》全套教學(xué)課件_第5頁
已閱讀5頁,還剩350頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

單片機基礎(chǔ)全套可編輯PPT課件

單片機基礎(chǔ)本課件是可編輯的正常PPT課件單片機基礎(chǔ)Arduino單片機創(chuàng)新作品本課件是可編輯的正常PPT課件Blink閃燈單片機基礎(chǔ)函數(shù)控制IO口定時器中斷串口SPIIIC本課件是可編輯的正常PPT課件Arduino模塊編程應(yīng)用-幫助同學(xué)快速入門,以經(jīng)典系統(tǒng)構(gòu)建為例,初步建立系統(tǒng)設(shè)計和創(chuàng)新能力。單片機結(jié)構(gòu)與運行機制-幫助同學(xué)建立程序與硬件、C語言與單片機的關(guān)系,培養(yǎng)系統(tǒng)設(shè)計和實現(xiàn)能力。單片機基礎(chǔ)本課件是可編輯的正常PPT課件51單片機點亮發(fā)光二極管單片機基礎(chǔ)本課件是可編輯的正常PPT課件單片機基礎(chǔ)本課件是可編輯的正常PPT課件單片機基礎(chǔ)本課件是可編輯的正常PPT課件Arduino之入門Arduino之入門Arduino是什么?硬件標(biāo)準化、軟件代碼開源的單片機模塊在藝術(shù)創(chuàng)作、業(yè)余愛好者、創(chuàng)客群體等領(lǐng)域應(yīng)用廣泛本課件是可編輯的正常PPT課件Arduino之入門Arduino的誕生這個最經(jīng)典的開源硬件項目,誕生于意大利的一間設(shè)計學(xué)校幾乎任何人,即使不懂電腦編程,也能用Arduino做出很酷的東西,比如對感測器作出回應(yīng),閃爍燈光,還能控制馬達G.Martino,ItalyD.Molis,ItalyD.Cuartielles,SpainT.Igoo,USAM.Banzi,Italy本課件是可編輯的正常PPT課件Arduino之入門Arduino的優(yōu)勢成熟的生態(tài)圈:Arduino中文社區(qū)供討論硬件標(biāo)準化:設(shè)計規(guī)范,有完整的手冊支持,做工精湛軟件代碼開源:文檔齊全,寫法規(guī)范,范例程序易上手本課件是可編輯的正常PPT課件Arduino之入門接口標(biāo)準化開源硬件模塊Arduino硬件平臺軟件工具本課件是可編輯的正常PPT課件Arduino之入門ArduinoUNO組成LED復(fù)位按鍵本課件是可編輯的正常PPT課件Arduino之入門Arduino常用產(chǎn)品ArduinoUNOR3ArduinoMega2560ArduinoNano詳見https://www.arduino.cc/en/Main/Products本課件是可編輯的正常PPT課件Arduino之入門硬件Arduino實驗板與下載線LED燈杜邦線330歐姆電阻面包板本課件是可編輯的正常PPT課件Arduino之入門軟件:ArduinoIDE打開網(wǎng)頁輸入網(wǎng)址:http://arduino.cc/en/Main/Software進入頁面,如下圖所示本課件是可編輯的正常PPT課件Arduino之入門ArduinoIDE先簡單認識看一下Arduino的這個編譯器界面本課件是可編輯的正常PPT課件Arduino之入門Arduino開發(fā)USB連接ArduinoUNO和計算機在IDE中編寫程序點擊編譯程序生成可執(zhí)行文件Arduino加載可執(zhí)行文件加載完成后,Arduino即可運行本課件是可編輯的正常PPT課件Arduino之IO口Arduino之IO口使用數(shù)字I/O的13號引腳控制LED亮滅。輸出高電平點亮,輸出低電平熄滅LED燈Blink實驗單片機驅(qū)動發(fā)光二極管本課件是可編輯的正常PPT課件發(fā)光二極管工作原理二極管具有單向?qū)щ娦訟rduino之IO口N型電子與P型空穴碰撞,產(chǎn)生光子光子發(fā)出能量,形成光本課件是可編輯的正常PPT課件發(fā)光二極管工作原理直插式:短腳為負級貼片式:綠點標(biāo)志為負極Arduino之IO口本課件是可編輯的正常PPT課件發(fā)光二極管節(jié)壓降與額定電流Arduino之IO口導(dǎo)通電壓:2.0-2.2V額定電流:20mA導(dǎo)通電壓:1.8-2.0V額定電流:20mA導(dǎo)通電壓:3.0-3.2V額定電流:20mA導(dǎo)通電壓1.82-1.88V1.75-1.82V1.7-1.8V3.1-3.3V3.0-3.2V額定電流5-8mA3-5mA3-5mA8-10mA10-15mA本課件是可編輯的正常PPT課件Arduino之IO口本課件是可編輯的正常PPT課件LED工作原理

Arduino之IO口LED工作原理高發(fā)光低不發(fā)光高不發(fā)光低發(fā)光灌入電流本課件是可編輯的正常PPT課件Arduino之IO口本課件是可編輯的正常PPT課件數(shù)字I/O的常用函數(shù):pinMode(pin,MODE)指定引腳的輸出模式MODE為指定引腳的輸出模式INPUT(輸入),INPUT_PULLUP(輸入帶內(nèi)部上拉電阻)OUTPUT(輸出模式)digitalWrite(pin,value)指定引腳的輸出電平value為輸出電壓HIGH或LOWdigitalRead(pin)讀取指定引腳的邏輯電平返回值為輸入電壓HIGH或LOWArduino之IO口程序說明Arduino程序結(jié)構(gòu)包含兩部分:setup()函數(shù)和loop()函數(shù)先執(zhí)行這里的內(nèi)容再循環(huán)執(zhí)行這里的內(nèi)容本課件是可編輯的正常PPT課件Arduino之IO口Blink實驗連接硬件程序內(nèi)容本課件是可編輯的正常PPT課件Arduino之IO口點擊編譯點擊上傳板子連接電腦后點擊上傳,將程序燒錄到板子中本課件是可編輯的正常PPT課件單片機基礎(chǔ)定時器概念定時器和計數(shù)器物理器件相同*計數(shù)器(Counter)記錄外部脈沖定時器(Timer)記錄內(nèi)部晶振兩者本質(zhì)上都是“數(shù)脈沖”計數(shù)器數(shù)門控信號范圍內(nèi)外部引腳脈沖的個數(shù)定時器通過內(nèi)部晶振計數(shù)脈沖的個數(shù)(N),定義了的單片機中的“時間”概念單片機之定時器*兩者本質(zhì)上是同一物理器件的兩種工作狀態(tài),為防止混淆,統(tǒng)稱物理器件位定時器T0/T1N個脈沖本課件是可編輯的正常PPT課件

單片機之定時器N個脈沖內(nèi)部晶振CLK本課件是可編輯的正常PPT課件工作原理(計數(shù)器)累加計數(shù)器記錄計數(shù)脈沖(定時器)個數(shù)N僅在門控信號為1時工作單片機之定時器外部引腳Px.x門控信號TRx溢出位TFxN=2本課件是可編輯的正常PPT課件組成定時器(T0/T1)各由2個8位特殊功能寄存器組成(TH0/TH1/TL0/TL1)工作方式寄存器TMOD:用于設(shè)置工作模式和工作方式控制寄存器TCON,用于啟動和停止定時器計數(shù),并控制其狀態(tài)寄存器THx/TLx,用于存儲計數(shù)值單片機之定時器*THx/TLx/TCON/TMOD都通過總線與CPU相連*當(dāng)單片機復(fù)位時候,TMOD/TCON內(nèi)的值都被清零本課件是可編輯的正常PPT課件

設(shè)定定時器流程1.對TMOD賦值以確定定時器的工作模式(定時器/計數(shù)器)2.對TMOD賦值以確定定時器的工作方式3.置定時器的初值,直接將其寫入THx/TLx4.對TCON寄存器中的TRx進行置位,啟動定時器/計數(shù)器完成以上步驟之后,定時/計數(shù)器將按照規(guī)定的工作模式與初值進行計數(shù)/開始定時單片機之定時器Value+2Value+N本課件是可編輯的正常PPT課件

單片機之定時器…Init初值Max最大值每個時鐘周期增加1t觸發(fā)中斷定時時間t本課件是可編輯的正常PPT課件

單片機之定時器本課件是可編輯的正常PPT課件如何確定定時器以何種方式工作?改變工作方式寄存器TMOD四種工作方式

方式0(M1=0,M0=0):13位定時器(TH8位TL低5位)方式1(M1=0,M0=1):16位定時器方式2(M1=1,M0=0):自動重裝入初值的8位計數(shù)器方式3(M1=1,M0=1):(T0)分成兩個獨立的8位定時器;(T1)停止工作單片機之定時器M1/M0控制TH/TL的計數(shù)方式本課件是可編輯的正常PPT課件如何啟動定時器?確定用什么信號來啟動計數(shù)器(門控信號)

門控由TMOD寄存器中的GATE位(D7/D3)確定GATE=0,用TCON中運行控制位TRx來控制定時器的啟動與否GATE=1,用外部中斷引腳INTx來控制定時器的啟動與否單片機之定時器本課件是可編輯的正常PPT課件定時器如何反饋?控制寄存器TCON:低4位與外部中斷有關(guān)計數(shù)溢出標(biāo)志位(TF1/TF0):當(dāng)定時器T0/T1溢出時,硬件自動將此位置1TFx可以由程序查詢,也是定時中斷的請求源計數(shù)運行控制位(TR1/TR0):置1表示工作,置0表示停止數(shù)據(jù)寄存器THx/TLxTH0存放了定時器T0的初值或計數(shù)結(jié)果的高8位(TL0為低8位)TH1存放了定時器T1的初值或計數(shù)結(jié)果的高8位(TL1為低8位)單片機之定時器N=2本課件是可編輯的正常PPT課件例子讓引腳P1的LED燈每隔1s閃爍一次將TL0置初值0,將TR0置1以啟動定時器將Timer0是否溢出作為事件發(fā)生的指示主頻為11.0592M,每65536個脈沖溢出產(chǎn)生一個溢出的時間是71.1ms,14個則約為1s每計算14個溢出,則翻轉(zhuǎn)P1口狀態(tài)。單片機之定時器本課件是可編輯的正常PPT課件Arduino之中斷中斷機制設(shè)一個鬧鐘,鬧鐘響了,CPU才去查看,這就是中斷機制Arduino之中斷本課件是可編輯的正常PPT課件中斷的原理Arduino之中斷本課件是可編輯的正常PPT課件Command1主程序中斷服務(wù)程序(ISR)Command2Command3Command4Command5閃燈閃燈保護現(xiàn)場恢復(fù)現(xiàn)場Arduino之中斷內(nèi)部中斷函數(shù)Timer1.initialize(Period)用于初始化定時器,配置定時周期,以微秒為單位調(diào)用后自動啟動定時器Timer1.attachInterrupt(timerIsr)設(shè)置中斷回調(diào)函數(shù)本課件是可編輯的正常PPT課件Arduino之中斷內(nèi)部中斷函數(shù)Timer1.setPeriod(Period)配置定時周期,以微秒為單位Timer1.start()/Timer1.stop()/Timer1.restart()/Timer1.read()啟動/停止/重啟定時器/讀取定時器當(dāng)前值本課件是可編輯的正常PPT課件Arduino之中斷程序說明程序內(nèi)容初始化定時器設(shè)置中斷回調(diào)函數(shù)回調(diào)函數(shù)本課件是可編輯的正常PPT課件單片機基礎(chǔ)Arduino之串口Arduino使用TTL邏輯電平高電平:5V或3.3V,低電平:0V。RS-232串口的使用滿足RS-232電氣標(biāo)準,即-15V到-3V之間為邏輯1,3V到15V之間為邏輯0。本課件是可編輯的正常PPT課件Arduino之串口Arduino串口通信時需要連接收、發(fā)、地三根線。本課件是可編輯的正常PPT課件Arduino之串口ArduinoUno開發(fā)板的硬件串口位于RX(0)和TX(1)引腳,USB口通過轉(zhuǎn)換芯片與這兩個引腳連接。Arduino串口采用串行比特流方式發(fā)送數(shù)據(jù),每次發(fā)送一個比特的數(shù)據(jù)。本課件是可編輯的正常PPT課件Arduino之串口串口的常用函數(shù):Serial.begin(speed[,config])串口波特率定義函數(shù),用于開啟串口、設(shè)置串口的速率、數(shù)據(jù)位數(shù)、奇偶校驗、停止位等參數(shù)。通常置于setup()函數(shù)中。speed為波特率,一般取值9600,115200等。config取如下常量:SERIAL_8N1(缺省配置,8個數(shù)據(jù)位,無校驗位,1個停止位)。本課件是可編輯的正常PPT課件Arduino之串口串口的常用函數(shù):Serial.available()返回緩沖區(qū)可讀字節(jié)數(shù)目。Serial.read()從串口緩存中讀取一個字節(jié)的數(shù)據(jù)。Serial.write(val)將數(shù)據(jù)以二進制數(shù)據(jù)形式輸出。Serial.print(val)將數(shù)據(jù)以ASCII文本形式輸出。Serial.println(val)在函數(shù)Serial.print()的功能基礎(chǔ)之上輸出結(jié)束時跟上回車與換行。本課件是可編輯的正常PPT課件Arduino之串口實例:PC發(fā)送“R”,Arduino上傳“HelloWorld!”串口監(jiān)視器本課件是可編輯的正常PPT課件Arduino之串口發(fā)送接收本課件是可編輯的正常PPT課件Arduino之串口接收本課件是可編輯的正常PPT課件發(fā)送Arduino之串口本課件是可編輯的正常PPT課件Arduino之串口本課件是可編輯的正常PPT課件Arduino之串口—定時器中斷Blink實驗程序說明程序內(nèi)容本課件是可編輯的正常PPT課件Arduino的SPI通信串行通信異步模式—RS232同步模式—SPISPI傳輸速度快,不適合遠距離傳輸本課件是可編輯的正常PPT課件SPI通信主從工作模式(MasterSlave)一個主機和一個或多個從機主機通過CS線選一個從機進行通信未選擇的從機不會影響總線活動本課件是可編輯的正常PPT課件SPI通信主從工作模式連接方式MOSI(MasterOutputSlaveInput)MISO(MasterInputSlaveOutput)SCLK(時鐘信號)CS(從機選擇線)本課件是可編輯的正常PPT課件SPI通信工作過程本課件是可編輯的正常PPT課件SPI通信協(xié)議SPI時鐘控制SPI控制寄存器CPOL和CPHA,決定時鐘的4種工作模式CPOL時鐘極性CPOL=1,空閑時SCK為高電平CPOL=0,空閑時SCK為低電平CPHA時鐘相位CPHA=1,SCK偶數(shù)邊沿數(shù)據(jù)采樣CPHA=0,SCK奇數(shù)邊沿數(shù)據(jù)采樣本課件是可編輯的正常PPT課件Arduino中的SPI庫函數(shù)主機工作流程從機工作流程SPI.begin()SPI.setClockDivider(divider)SPI.setBitOrder(order)SPI.setDataMode(mode)digitalWrite(CS,LOW)SPI.transfer(val)/

SPI.transfer16(val16)SPCR|=_BV(SPE)SPI.attachInterrupt()本課件是可編輯的正常PPT課件Arduino中的SPI庫函數(shù)SPI庫函數(shù)SPI.begin()初始化SPI總線的參數(shù)將SCLK和MOSI初始化為低電平,CS初始化為高電平。SPI.setClockDivider(divider)指定SCLK時鐘信號的頻率,SCLK時鐘信號的頻率為系統(tǒng)時鐘頻率除以分頻系數(shù)。分頻系數(shù)可以為2,4,8,16,32,64,128divider默認設(shè)置為SPI_CLOCK_DIV4,即4分頻.SPI.setBitOrder(order)設(shè)置SPI的字節(jié)傳輸順序order:MSBFIRST(從高位到低位發(fā)送),LSBFIRST(從低位到高位發(fā)送)本課件是可編輯的正常PPT課件Arduino中的SPI庫函數(shù)SPI庫函數(shù)SPI.setDataMode(mode)設(shè)置SPI的工作模式mode:SPI_MODE0,SPI_MODE1,SPI_MODE2,SPI_MODE3SPI.transfer(val)/SPI.transfer16(val16)val:要傳輸?shù)淖止?jié)數(shù)據(jù)SPI.transfer()函數(shù)一次通信傳輸一個字節(jié)數(shù)據(jù)SPI.transfer16()函數(shù)一次通信傳輸兩個字節(jié)數(shù)據(jù)本課件是可編輯的正常PPT課件Arduino之按鍵Arduino之按鍵一個簡單的按鍵電路通過IO口操作的函數(shù):pinMode(pin,MODE)、digitalWrite(pin)、digitalRead(pin),通過digitalRead(pin),Arduino即可得到按鍵的狀態(tài)。第一種按鍵電路第二種按鍵電路按下01松開10本課件是可編輯的正常PPT課件Arduino之按鍵示波器觀察抖動我們用示波器看一下按鍵按下去,在IO口電平的變化:用示波器觀察實際波形理想按鍵波形實際按鍵波形<10ms本課件是可編輯的正常PPT課件Arduino之按鍵硬件去抖和軟件去抖硬件去抖:用電容搭建濾波器。軟件去抖:首先讀取按鍵狀態(tài),當(dāng)檢測到按鍵摁下后,等待10ms,再次讀取按鍵狀態(tài),若此時仍然是摁下狀態(tài),則說明是按鍵摁下了。否則,即為抖動。<10ms本課件是可編輯的正常PPT課件Arduino之按鍵本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤Arduino之矩陣鍵盤矩陣鍵盤結(jié)構(gòu)3X4鍵盤內(nèi)部線路內(nèi)部線路4X4鍵盤本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤掃描法本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤掃描法00001111本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤掃描法00000111本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤掃描法01110111本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤掃描法01111011本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤掃描法01111111本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤掃描法10111111本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤掃描法11011111本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤掃描法11101111本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤反轉(zhuǎn)法00001111本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤反轉(zhuǎn)法00000111本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤反轉(zhuǎn)法01110000本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤安裝庫文件Keypad.h為了確定按下了哪個鍵,我們需要連續(xù)掃描行和列。幸運的是,庫文件Keypad.h的編寫減少了這種不必要的復(fù)雜性。矩陣鍵盤所需庫文件Keypad.h在ArduinoIDE1.8.0或者以上版本中,項目->加載庫->管理庫中搜索Keypad,然后安裝即可。本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤安裝庫文件Keypad.h本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤硬件準備4x4矩陣鍵盤Uno開發(fā)板USB數(shù)據(jù)線杜邦線硬件準備本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤電路連接Keypad正面從左到右pin為1-8,對應(yīng):KeypadPin1–>ArduinoPin9KeypadPin2–>ArduinoPin8KeypadPin3–>ArduinoPin7KeypadPin4–>ArduinoPin6KeypadPin5–>ArduinoPin5KeypadPin6–>ArduinoPin4KeypadPin7–>ArduinoPin3KeypadPin8–>ArduinoPin2電路連接本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤程序說明在本次實驗中,我們調(diào)用函數(shù)Keypad(makeKeymap(keys),rowPins

,colPins,ROWS,COLS),函數(shù)中五個參數(shù)說明如下:然后,我們采用ROWS、COLS兩個參數(shù)來

定義要使用的鍵盤上的行數(shù)和列數(shù)。constbyteROWS=4;//四行constbyteCOLS=4;//四列接著,我們采用rowPins、colPins兩個參數(shù)來定義Arduino引腳與鍵盤引腳的連接方式

byterowPins[ROWS]={9,8,7,6};//連接到矩陣鍵盤的行引腳 bytecolPins[COLS]={5,4,3,2};//連接到矩陣鍵盤的列引腳本課件是可編輯的正常PPT課件Arduino之矩陣鍵盤程序說明首先,參數(shù)makeKeymap(keys)用于將鍵盤上的第幾行第幾列,

映射為有意義的字符: charkeys[ROWS][COLS]={ {'1','2','3','A'}, {'4','5','6','B'}, {'7','8','9','C'}, {'*','0','#','D'} };定義所有字符后,我們可以發(fā)出一個簡單的命令getKey()來檢查按下了哪個鍵。本課件是可編輯的正常PPT課件Arduino之?dāng)?shù)碼管Arduino之?dāng)?shù)碼管數(shù)碼管數(shù)碼管是最常用的一種顯示方法,由數(shù)個LED燈組成“8”字型數(shù)碼管本課件是可編輯的正常PPT課件Arduino之?dāng)?shù)碼管8段數(shù)碼管結(jié)構(gòu)分類共陽極數(shù)碼管共陰極數(shù)碼管本課件是可編輯的正常PPT課件Arduino之?dāng)?shù)碼管8段數(shù)碼管顯示共陽極本課件是可編輯的正常PPT課件Arduino之?dāng)?shù)碼管電路連接本課件是可編輯的正常PPT課件Arduino之?dāng)?shù)碼管代碼編寫本課件是可編輯的正常PPT課件Arduino之?dāng)?shù)碼管Arduino之?dāng)?shù)碼管如何控制多位數(shù)碼管?靜態(tài)顯示動態(tài)顯示所需IO口數(shù)目:所需IO口數(shù)目:本課件是可編輯的正常PPT課件Arduino之?dāng)?shù)碼管動態(tài)顯示循環(huán)交替點亮多個數(shù)碼管,往復(fù)刷新本課件是可編輯的正常PPT課件Arduino之?dāng)?shù)碼管動態(tài)顯示的機理亮度時間電源斷開“余暉效應(yīng)”示意圖“視覺暫留”示意圖1~10ms40ms數(shù)碼管掃描周期應(yīng)小于10ms,每個數(shù)碼管通電時間應(yīng)大于1ms本課件是可編輯的正常PPT課件Arduino之?dāng)?shù)碼管動態(tài)顯示的實現(xiàn)電路圖使用分立多個數(shù)碼管使用集成多位數(shù)碼管本課件是可編輯的正常PPT課件Arduino之?dāng)?shù)碼管動態(tài)顯示的實現(xiàn)邏輯實現(xiàn)選通高位顯示1顯示2選通低位本課件是可編輯的正常PPT課件Arduino之?dāng)?shù)碼管動態(tài)顯示的優(yōu)勢動態(tài)顯示可以極大節(jié)省IO口占用,但亮度相對較低段選復(fù)用位選選擇動態(tài)顯示IO口占用數(shù)目IO口占用數(shù)目段選靜態(tài)顯示本課件是可編輯的正常PPT課件Arduino之?dāng)?shù)碼管動態(tài)顯示的實現(xiàn)實驗現(xiàn)象(放實驗結(jié)果錄像)本課件是可編輯的正常PPT課件Arduino之旋鈕Arduino之旋鈕旋鈕旋鈕電位器旋轉(zhuǎn)編碼器旋鈕電位器旋轉(zhuǎn)編碼器本課件是可編輯的正常PPT課件Arduino之旋鈕旋鈕電位器的引腳電位器(滑動變阻器)旋鈕電阻體動觸點電位器等效電路R1R2本課件是可編輯的正常PPT課件Arduino之旋鈕ArduinoUno引腳電位器引腳5VVCCGNDGNDA0OUT

電位器的接線方式本課件是可編輯的正常PPT課件Arduino之旋鈕本課件是可編輯的正常PPT課件旋轉(zhuǎn)編碼器旋轉(zhuǎn)編碼器電路原理Arduino之旋鈕ArduinoUno引腳旋轉(zhuǎn)編碼器引腳5VVCCGNDGNDD2CLK(Clock時鐘)D3DT(Data數(shù)據(jù))D4SW

(按鈕開關(guān))

旋轉(zhuǎn)編碼器的接線方式本課件是可編輯的正常PPT課件Arduino之旋鈕代碼-讀取旋轉(zhuǎn)編碼器定義連接引腳啟動串口通訊當(dāng)前的旋轉(zhuǎn)編碼器讀數(shù)>先前數(shù)據(jù)→CW。當(dāng)前的旋轉(zhuǎn)編碼器讀數(shù)<先前數(shù)據(jù)→CCW本課件是可編輯的正常PPT課件Arduino之LED點陣Arduino之LED點陣LED點陣介紹共陽LED點陣本課件是可編輯的正常PPT課件Arduino之LED點陣LED點陣介紹共陽LED點陣1(+)本課件是可編輯的正常PPT課件Arduino之LED點陣LED點陣介紹共陽LED點陣1(+)0(-)本課件是可編輯的正常PPT課件Arduino之LED點陣LED點陣介紹共陽LED點陣1(+)0(-)本課件是可編輯的正常PPT課件Arduino之LED點陣LED點陣介紹共陽LED點陣1(+)0(-)本課件是可編輯的正常PPT課件Arduino之LED點陣LED點陣介紹共陽LED點陣0(-)0(-)0(-)0(-)0(-)0(-)0(-)0(-)1(+)1(+)1(+)1(+)1(+)1(+)1(+)1(+)本課件是可編輯的正常PPT課件Arduino之LED點陣LED點陣介紹共陽LED點陣0(-)0(-)0(-)0(-)0(-)0(-)0(-)0(-)1(+)1(+)1(+)1(+)0(-)0(-)1(+)0(-)本課件是可編輯的正常PPT課件Arduino之LED點陣LED點陣介紹共陽LED點陣0(-)0(-)0(-)0(-)0(-)0(-)0(-)1(+)1(+)1(+)1(+)0(-)0(-)1(+)0(-)1(+)本課件是可編輯的正常PPT課件Arduino之LED點陣LED點陣介紹共陽LED點陣0(-)0(-)0(-)0(-)0(-)0(-)0(-)1(+)1(+)1(+)1(+)0(-)0(-)1(+)0(-)0(-)本課件是可編輯的正常PPT課件Arduino之LED點陣LED點陣介紹共陽LED點陣0(-)0(-)0(-)0(-)0(-)0(-)0(-)0(-)1(+)1(+)1(+)1(+)0(-)0(-)1(+)0(-)本課件是可編輯的正常PPT課件Arduino之LED點陣LED點陣介紹共陽LED點陣0(-)0(-)0(-)0(-)0(-)0(-)0(-)1(+)1(+)1(+)1(+)0(-)0(-)1(+)0(-)1(+)本課件是可編輯的正常PPT課件Arduino之LED點陣使用ArduinoUno點亮一個8×8的LED點陣不同點陣屏封裝不同,8×8點陣內(nèi)部結(jié)構(gòu)、管腳定義圖如下:8x8內(nèi)部結(jié)構(gòu)點陣管腳定義本課件是可編輯的正常PPT課件Arduino之LED點陣使用ArduinoUno點亮一個8×8的LED點陣根據(jù)點陣屏管腳定義,下表為引腳連接表(行H列L)及原理圖行點陣屏開發(fā)板列點陣屏開發(fā)板H11310L196H2316L21411H3417L385H4107L4129H563L5114H6118L674H71512L7215H81613L852本課件是可編輯的正常PPT課件Arduino之LED點陣使用ArduinoUno點亮一個8×8的LED點陣連接開發(fā)板,設(shè)置好對應(yīng)端口號和開發(fā)板類型,進行程序下載。程序下載及實物連接圖如下所示:本課件是可編輯的正常PPT課件Arduino之LED點陣使用ArduinoUno點亮一個8×8的LED點陣實驗現(xiàn)象:LED點陣屏點亮然后熄滅,然后逐列、逐行點亮。通過兩個for循環(huán)嵌套來進行操作,外部循環(huán)控制列,內(nèi)部循環(huán)遍歷行,或者外部循環(huán)控制行,內(nèi)部循環(huán)遍歷列。當(dāng)逐行或者逐列掃描足夠快的時候,人眼就會因視覺暫存而看到動態(tài)點亮的畫面。本課件是可編輯的正常PPT課件Arduino之LCD顯示LCD屏基本概念A(yù)rduino之LCD由灰色的排列,非常小的灰色像素組成根據(jù)分辨率可分為1602、2004、12864等規(guī)格低電壓、低功耗、平板結(jié)構(gòu)、顯示信息大、壽命長等特點本課件是可編輯的正常PPT課件LCD1602引腳介紹Arduino之LCD注:VDD要求4.5-5.5V,所有數(shù)據(jù)口均為5VTTL電平。本課件是可編輯的正常PPT課件LCD1602引腳介紹Arduino之LCD注:VDD要求4.5-5.5V,所有數(shù)據(jù)口均為5VTTL電平。RS端口高代表數(shù)據(jù)選擇、低代表指令選擇本課件是可編輯的正常PPT課件LCD1602引腳介紹Arduino之LCD注:VDD要求4.5-5.5V,所有數(shù)據(jù)口均為5VTTL電平。RS端口高代表數(shù)據(jù)選擇、低代表指令選擇RW端高代表寫數(shù)據(jù)/指令,低代表讀數(shù)據(jù)指令本課件是可編輯的正常PPT課件LCD1602引腳介紹Arduino之LCD注:VDD要求4.5-5.5V,所有數(shù)據(jù)口均為5VTTL電平。RS端口高代表數(shù)據(jù)選擇、低代表指令選擇RW端高代表寫數(shù)據(jù)/指令,低代表讀數(shù)據(jù)指令E端口為使能端,當(dāng)E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令本課件是可編輯的正常PPT課件LCD1602指令碼Arduino之LCD根據(jù)需求寫入不同指令或者數(shù)據(jù)本課件是可編輯的正常PPT課件LCD1602指令碼Arduino之LCD根據(jù)需求寫入不同指令或者數(shù)據(jù)指令主要用于設(shè)置光標(biāo)、顯示模式等本課件是可編輯的正常PPT課件LCD1602指令碼Arduino之LCD根據(jù)需求寫入不同指令或者數(shù)據(jù)指令主要用于設(shè)置光標(biāo)、顯示模式等數(shù)據(jù)則會被顯示在屏幕上本課件是可編輯的正常PPT課件LCD1602地址映射Arduino之LCD00~0F第一行,40~4F為第二行本課件是可編輯的正常PPT課件LCD1602地址映射Arduino之LCD00~0F第一行,40~4F為第二行10~27和50~67為緩沖區(qū)本課件是可編輯的正常PPT課件LCD1602地址映射Arduino之LCD00~0F第一行,40~4F為第二行10~27和50~67為緩沖區(qū)指令格式為:0X80+地址碼本課件是可編輯的正常PPT課件LCD1602寫操作時序Arduino之LCD1.將RS端配置為數(shù)據(jù)/指令選擇,即高/低電平digitalWrite(rs,HIGH/LOW)本課件是可編輯的正常PPT課件LCD1602寫操作時序Arduino之LCD1.將RS端配置為數(shù)據(jù)/指令選擇,即高/低電平digitalWrite(rs,HIGH/LOW)2.將RW控制端配置為寫操作,即低電平digitalWrite(rw,LOW)本課件是可編輯的正常PPT課件LCD1602寫操作時序Arduino之LCD1.將RS端配置為數(shù)據(jù)/指令選擇,即高/低電平digitalWrite(rs,HIGH/LOW)2.將RW控制端配置為寫操作,即低電平digitalWrite(rw,LOW)3.將數(shù)據(jù)或命令送達數(shù)據(jù)線上本課件是可編輯的正常PPT課件LCD1602寫操作時序Arduino之LCD1.將RS端配置為數(shù)據(jù)/指令選擇,即高/低電平digitalWrite(rs,HIGH/LOW)2.將RW控制端配置為寫操作,即低電平digitalWrite(rw,LOW)3.將數(shù)據(jù)或命令送達數(shù)據(jù)線上4.給E端口一個高脈沖,將命令或數(shù)據(jù)送至液晶顯示屏digitalWrite(en,HIGH)本課件是可編輯的正常PPT課件ArduinoLiquidCrystal庫函數(shù)Arduino之LCD定義LCD接口——LCD=LiquidCrystal(rs,en,d4,d5,d6,d7)本課件是可編輯的正常PPT課件ArduinoLiquidCrystal庫函數(shù)Arduino之LCD定義LCD接口——LCD=LiquidCrystal(rs,en,d4,d5,d6,d7)LCD.begin(16,2) //指定顯示屏為16列*2行LCD.clear() //清除LCD屏幕上的內(nèi)容,并將光標(biāo)置于左上角LCD.setCursor(3,1) //將光標(biāo)設(shè)置在第二行第四列處LCD.write(0) //向當(dāng)前光標(biāo)處寫入數(shù)字0LCD.print(“helloworld”)//在當(dāng)前光標(biāo)處顯示字符串本課件是可編輯的正常PPT課件Arduino之LCDLCD顯示實驗電路連接本課件是可編輯的正常PPT課件Arduino之LCDLCD顯示實驗電路連接本課件是可編輯的正常PPT課件Arduino之LCD程序內(nèi)容本課件是可編輯的正常PPT課件Arduino之LCD程序內(nèi)容本課件是可編輯的正常PPT課件Arduino之LCD程序內(nèi)容本課件是可編輯的正常PPT課件Arduino之LCD程序內(nèi)容本課件是可編輯的正常PPT課件Arduino之LCD程序內(nèi)容本課件是可編輯的正常PPT課件Arduino之模擬IOArduino之模擬IO數(shù)字IO與模擬IO的區(qū)別數(shù)字IO只有High、Low兩種狀態(tài)以ArduinoUNO5V參考電壓為例High-5V高電平Low–0V低電平模擬IO是0-5V之間的任意值本課件是可編輯的正常PPT課件Arduino之模擬IO數(shù)字IO與模擬IO的區(qū)別數(shù)字IO口可設(shè)定輸入輸出模擬IO口的輸入輸出是固定的以ArduinoUNO為例A0-A5為模擬IO輸入口3,5,6,9,10,11為模擬IO輸出口模擬IO輸入模擬IO輸出本課件是可編輯的正常PPT課件Arduino之模擬IO模擬IO的輸入模擬IO的輸入引腳帶有10bitADC0-5V模擬電壓0-1023整數(shù)0V0;5V1023;analogRead(pin)函數(shù)pin為被讀取的引腳編號pin必須為模擬IO的輸入引腳讀取pin的輸入電壓并轉(zhuǎn)換為數(shù)字信號返回數(shù)字信號,即0-1023之間的整數(shù)

analogRead(A0):讀入引腳A0的模擬電壓,轉(zhuǎn)化為數(shù)字信號本課件是可編輯的正常PPT課件Arduino之模擬IO模擬IO的輸出模擬IO輸出沒有DAC功能脈沖寬度調(diào)制PWM通過數(shù)字方式獲得模擬結(jié)果的技術(shù)表現(xiàn)為占空比可變的脈沖矩形波Arduino的PWM周期約為2ms注意:PWM是數(shù)字信號,僅有0和1兩種狀態(tài)本課件是可編輯的正常PPT課件Arduino之模擬IOLED亮燈實驗視覺暫留效應(yīng)占空比為1LED100%亮度5V模擬電壓

占空比為0.5LED50%亮度2.5V模擬電壓

本課件是可編輯的正常PPT課件Arduino之模擬IO模擬IO的輸出通過輸出PWM達到模擬信號的效果analogWrite(pin,value)函數(shù)pin為模擬IO輸出引腳value控制PWM占空比,取值范圍0-2550%占空比value=050%占空比value=127100%占空比value=255

本課件是可編輯的正常PPT課件Arduino之模擬IO本課件是可編輯的正常PPT課件1.讀取引腳A0的模擬輸入電壓2.將數(shù)值0-1023等比映射至0-2553.在9號引腳輸出PWM波控制LED亮度LED亮燈實驗代碼Arduino之模擬IOLED亮燈實驗實驗流程analogRead函數(shù)讀取模擬輸入值map函數(shù):0-10230-255analogWrite函數(shù)輸出PWM波控制LED本課件是可編輯的正常PPT課件Arduino之搖桿Arduino之搖桿雙軸按鍵搖桿模塊也叫游戲搖桿、控制桿傳感器,經(jīng)常用作航模遙控,游戲手柄。搖桿模塊由兩個高精度電位計和一個按鍵開關(guān)構(gòu)成,用于控制鍵盤等,可以自由地控制方向。本課件是可編輯的正常PPT課件Arduino之搖桿工作原理撥動搖桿,阻值發(fā)生變化,對應(yīng)的X/Y電壓值也發(fā)生變化,而用力按下?lián)u桿就會觸發(fā)按鍵按下,對應(yīng)的SW信號變?yōu)榈碗娖健ND:接地VCC:供電VRx:X軸電壓Vry:Y軸電壓SW:Z軸開關(guān)本課件是可編輯的正常PPT課件Arduino之搖桿電路連接本課件是可編輯的正常PPT課件Arduino之搖桿代碼編寫啟用上拉電阻、初始化串口模擬讀取X軸電壓模擬讀取Y軸電壓讀取Z軸開關(guān)狀態(tài)本課件是可編輯的正常PPT課件Arduino之PWMArduino之PWMPWM簡介脈沖寬度調(diào)制PWM通過數(shù)字方式獲得模擬結(jié)果的技術(shù)在時域上表現(xiàn)為高低變化的矩形脈沖PWM是數(shù)字信號,僅有0/1兩種狀態(tài)本課件是可編輯的正常PPT課件Arduino之PWMPWM參數(shù)幅度以ArduinoUNO為例1代表5V高電平0代表0V低電平周期Arduino的PWM周期約為2ms占空比脈沖寬度占整個周期百分比占空比為1,保持高電平占空比為0.5,高低電平均勻切換本課件是可編輯的正常PPT課件Arduino之PWMArduino輸出PWM輸出引腳只有模擬IO可以輸出PWM信號analogWrite(pin,value)函數(shù)pin為模擬IO輸出引腳value控制占空比,取值范圍0-2550%占空比,value=050%占空比,value=127100%占空比,value=255本課件是可編輯的正常PPT課件PWM應(yīng)用-SPWM用等幅不等寬的脈沖來代替一個正弦波將正弦波在時域等間隔劃分,脈沖寬度按正弦規(guī)律變化正弦波幅度為0時,脈沖占空比為0;幅度為1時,占空比為1Arduino之PWM本課件是可編輯的正常PPT課件PWM應(yīng)用-SPWM根據(jù)面積等效原理,SPWM的平均電壓接近正弦曲線脈沖越精確,切換頻率越高,曲線越平滑Arduino之PWM本課件是可編輯的正常PPT課件Arduino之蜂鳴器Arduino之蜂鳴器蜂鳴器計算機行業(yè)(主板蜂鳴器)打印機(控制板蜂鳴器)報警器(警報蜂鳴器)電子玩具(音樂蜂鳴器)汽車電子(車載蜂鳴器)……本課件是可編輯的正常PPT課件Arduino之蜂鳴器蜂鳴器分類——構(gòu)造方式壓電式蜂鳴器、電磁式蜂鳴器本課件是可編輯的正常PPT課件Arduino之蜂鳴器蜂鳴器分類——驅(qū)動方式有源蜂鳴器、無源蜂鳴器本課件是可編輯的正常PPT課件Arduino之蜂鳴器有源蜂鳴器引腳長度不同,塑封無源蜂鳴器引腳長度相同,能夠看到電路板有源蜂鳴器無源蜂鳴器本課件是可編輯的正常PPT課件Arduino之蜂鳴器Tone(pin,frequency,duration)pin:輸出引腳Frequency:輸出頻率(單位Hz)Duration:聲音持續(xù)時間(單位ms)noTone(pin)pitches.h本課件是可編輯的正常PPT課件Arduino之蜂鳴器電路連接——無源蜂鳴器本課件是可編輯的正常PPT課件Arduino之蜂鳴器代碼編寫——無源蜂鳴器不同音調(diào)對應(yīng)的頻率樂譜的音調(diào)樂譜的節(jié)拍控制程序本課件是可編輯的正常PPT課件Arduino之電機Arduino之電機電機簡介電機又稱電動機、馬達實現(xiàn)電能轉(zhuǎn)換和傳遞的電磁裝置產(chǎn)生驅(qū)動轉(zhuǎn)矩,作為機械的動力源電機的分類工作電源:直流、交流、交直流電機用途:直流電機、伺服電機、步進電機本課件是可編輯的正常PPT課件Arduino之電機SG90電機簡介伺服電機工作在直流電壓下工作原理將電壓信號轉(zhuǎn)換為轉(zhuǎn)矩和轉(zhuǎn)速內(nèi)置電路對輸出軸進行角度反饋可以控制模型運行方向,又稱舵機本課件是可編輯的正常PPT課件Arduino之電機SG90電機工作原理角度控制線脈沖寬度決定輸出軸的角度以180°舵機為例1.5ms脈沖長度90°(中性位置)小于1.5ms更接近0°大于1.5ms更接近180°脈沖寬度不變轉(zhuǎn)軸角位置不變

長度可變的脈沖信號:PWM波本課件是可編輯的正常PPT課件Arduino之電機直流電機工作原理正負極兩根引線連接電源,電機轉(zhuǎn)動引線交換,反向旋轉(zhuǎn)平均電壓決定轉(zhuǎn)速PWM占空比越高,轉(zhuǎn)速越快H橋電路無需交換引線,控制旋轉(zhuǎn)方向Q1,Q4打開,左引線接電源Q2,Q3打開,右引線接電源電機正轉(zhuǎn)電機反轉(zhuǎn)本課件是可編輯的正常PPT課件Arduino之電機PWM簡介脈沖寬度調(diào)制PWM表現(xiàn)為占空比可變的脈沖矩形波通過數(shù)字方式獲得模擬結(jié)果的技術(shù)Arduino的PWM周期約為2msanalogWrite(pin,value)函數(shù)pin為模擬IO輸出引腳value控制占空比,取值范圍0-255注意:PWM是數(shù)字信號,僅有0和1兩種狀態(tài)本課件是可編輯的正常PPT課件Arduino之電機電機控制實驗實驗器材ArduinoUNO開發(fā)板電位器SG90舵機面包板以及杜邦線若干電路連接電機VCC接5V直流電電位器輸出接模擬輸入A0引腳電機輸出軸接數(shù)字IO7號引腳本課件是可編輯的正常PPT課件Arduino之電機本課件是可編輯的正常PPT課件1.讀取引腳analogPin的模擬輸入電壓2.將數(shù)值0-1023等比映射至0-2553.在7號引腳輸出PWM波控制電機角度電機控制實驗代碼Arduino之電機電機控制實驗實驗流程電位器控制輸入電壓值analogRead函數(shù)讀取模擬輸入值map函數(shù):0-10230-255analogWrite函數(shù)輸出PWM波控制電機本課件是可編輯的正常PPT課件Arduino之電機電機控制實驗實驗結(jié)果電位器控制模擬輸入電壓Arduino等比例輸出PWM波PWM波占空比改變電機角度改變

本課件是可編輯的正常PPT課件Arduino之傳感器Arduino之傳感器Arduino作品組成模塊實現(xiàn)功能傳感器傳感器(transducer/sensor)是能夠檢測外部物理量變化的裝置。本課件是可編輯的正常PPT課件器件參數(shù)測量范圍溫度:0~50℃濕度:20%~90%RH誤差溫度:±2℃濕度:±5%RHRelativeHumidity:相對濕度本課件是可編輯的正常PPT課件DHT11溫濕度傳感器器件管腳①:VDD

給DHT11供電②:DATA

數(shù)據(jù)傳輸

通訊同步

本課件是可編輯的正常PPT課件DHT11溫濕度傳感器①②③④③:NC

懸空④:GND

接地DHT11溫濕度傳感器DHT11內(nèi)部結(jié)構(gòu)電阻式測濕元件濕度越高,電極間的電阻越小本課件是可編輯的正常PPT課件DHT11溫濕度傳感器DHT11內(nèi)部結(jié)構(gòu)NTC測溫元件溫度越高,電極間的電阻越小本課件是可編輯的正常PPT課件DHT11溫濕度傳感器DHT11內(nèi)部結(jié)構(gòu)高性能8位單片機模數(shù)轉(zhuǎn)換輸出帶有溫濕度的數(shù)字信號本課件是可編輯的正常PPT課件DHT11數(shù)據(jù)傳輸原理采用單總線協(xié)議與單片機通信本課件是可編輯的正常PPT課件DHT11溫濕度傳感器DHT11數(shù)據(jù)傳輸原理單片機發(fā)送開始信號本課件是可編輯的正常PPT課件DHT11溫濕度傳感器單片機發(fā)送開始信號DHT11數(shù)據(jù)傳輸原理DHT11傳輸數(shù)據(jù)8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bit溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)+8bit校驗和本課件是可編輯的正常PPT課件DHT11溫濕度傳感器DHT11傳輸數(shù)據(jù)DHT11溫濕度傳感器DHT11與Arduino連接VDD連接至3.3V電源口DATA連接到數(shù)字口的任意一個NC空接GND連接到接地口本課件是可編輯的正常PPT課件DHT11溫濕度傳感器DHT11程序?qū)崿F(xiàn)添加DHT庫函數(shù)用法#include<DHT.h>:加載DHT庫DHTTHSensor(6,DHT11):設(shè)置DATA連接引腳及傳感器型號THSnsor.begin():開啟DHT11的數(shù)據(jù)通信THSensor.readTemperature():讀取溫度數(shù)據(jù)THSensor.readHumidity():讀取濕度數(shù)據(jù)本課件是可編輯的正常PPT課件Arduino之超聲波測距Arduino之超聲波測距0Tt距離(s)=聲速(v)

×?xí)r間(T)/2距離(s)本課件是可編輯的正常PPT課件Arduino之超聲波測距超聲波模塊性能參數(shù):使用電壓:DC5V

靜態(tài)電流:小于2mA

高電平輸出:+5V

低電平輸出:0V

感應(yīng)角度:不大于15度 探測距離:2cm-450cm

精度:0.3cm引腳定義:Vcc:5V供電端

Trig:觸發(fā)信號端

Echo:回響信號輸出端

Gnd:供電接地端本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距距離(s)=高電平持續(xù)時間(T)×聲速(v)

/2本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距pulseln():檢測引腳的高低電平的脈沖寬度說明:讀取引腳上脈沖信號(高電平或低電平)的寬度。語法:pulseln(pin,value);

pulseln(pin,value,timeout);

參數(shù)pin:要讀取脈沖寬度的引腳序號

參數(shù)value:要讀取寬度的脈沖的形式,高/低電平脈沖參數(shù)timeout:超時時間,Arduino在超時時間timeout內(nèi)沒有讀到

脈沖信號,則該函數(shù)返回值為0返回值:

脈沖持續(xù)時間長,時間單位為微秒本課件是可編輯的正常PPT課件Arduino之超聲波測距高級IO控制tone():產(chǎn)生固定頻率的方波noTone():停止tone()觸發(fā)產(chǎn)生的方波pulseIn():檢測引腳脈沖寬度本課件是可編輯的正常PPT課件Arduino之超聲波測距tone():產(chǎn)生固定頻率的方波說明:

產(chǎn)生固定頻率的方波(占空比為50%),用來控制蜂鳴器等進行

發(fā)聲語法:tone(pin,frequency);tone(pin,frequency,duration);

參數(shù)pin:要輸出方波(發(fā)聲)的引腳序號

參數(shù)frequency:輸出方波(發(fā)聲)的頻率,單位為Hz

參數(shù)duration:輸出方波(發(fā)聲)的時長,單位為微秒返回值:無返回值本課件是可編輯的正常PPT課件Arduino之超聲波測距noTone():停止tone()觸發(fā)產(chǎn)生的方波輸出說明:

用來停止函數(shù)tone()產(chǎn)生的方波輸出

(注:如果需要多個引腳發(fā)聲,需要在調(diào)用函數(shù)tone()之前,通

過調(diào)用noTone()停止當(dāng)前的發(fā)聲)語法:noTone(pin);

參數(shù)pin:要停止tone()方波(發(fā)聲)的引腳序號返回值:無返回值本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距本課件是可編輯的正常PPT課件Arduino之超聲波測距

≈雙程時間(us)/58.8超聲波測距原理距離(cm)=(雙程時間(us)/1000000)×速度(340m/s)/2×100本課件是可編輯的正常PPT課件Arduino之時鐘芯片DS1302Arduino之時鐘芯片DS1302Arduino時鐘芯片DS1302內(nèi)含一個實時時鐘/日歷和31字節(jié)靜態(tài)RAM實時時鐘/日歷電路提供秒、分、時、日、星期、月、年的信息通過串行三線接口與單片機通信功耗低設(shè)置時間讀取時間本課件是可編輯的正常PPT課件器件管腳①主電源供電電壓2.0~5.5V②32.768KHz

晶振管腳③同②④接地管腳本課件是可編輯的正常PPT課件Arduino之時鐘芯片DS1302⑤復(fù)位管腳⑥數(shù)據(jù)輸入/輸出引腳⑦串行時鐘⑧備用電源Arduino之時鐘芯片DS1302DS1023的地址字節(jié)(控制字節(jié))控制字節(jié)總是從最低位開始傳輸位6:操作的寄存器是RAM(取1)或時鐘寄存器(取0)位0:進行讀(取1)或?qū)?取0)操作操作單元地址本課件是可編輯的正常PPT課件Arduino之時鐘芯片DS1302

地址字節(jié)數(shù)據(jù)字節(jié)本課件是可編輯的正常PPT課件Arduino之時鐘芯片DS1302

地址字節(jié)數(shù)據(jù)字節(jié)本課件是可編輯的正常PPT課件Arduino之時鐘芯片DS1302DS1302內(nèi)部寄存器寄存器名稱READWRITEBIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0RANGE秒寄存器81h80hCH10SecondsSeconds00-59分寄存器83h82h10MinutesMinutes00-59小時寄存器85h84h010HourHour1-12/

0-23日寄存器87h86h0010DateDate1-31月寄存器89h88h00010MonthMonth1-12星期寄存器8Bh8Ah00000Day1-7年寄存器8Dh8Ch10YearYear00-99寫保護寄存器8Fh8EhWP0000000-本課件是可編輯的正常PPT課件Arduino之時鐘芯片DS1302DS1302時鐘模塊與Arduino連接VCC連接至3.3V或5V電源口CLK、DAT、RST連接到數(shù)字口的任意一個GND連接到接地口本課件是可編輯的正常PPT課件Arduino之時鐘芯片DS1302庫函數(shù)安裝本課件是可編輯的正常PPT課件Arduino之時鐘芯片DS1302程序?qū)崿F(xiàn)引腳設(shè)置初始化主體程序ThreeWiremyWire(4,5,2);RtcDS1302<ThreeWire>Rtc(myWire);Serial.begin(57600);Rtc.Begin();voidloop(){RtcDateTimenow=Rtc.GetDateTime();printDateTime(now);delay(10000);}本課件是可編輯的正常PPT課件Arduino之運動傳感器MPU6050Arduino之運動傳感器MPU6050MPU6050介紹全球首例整合性6軸運動處理組件集成了三軸加速度計、三軸陀螺儀,以及一塊可擴展的數(shù)字運動處理器DMP免除了組合陀螺儀與加速度計時間軸之差的問題減少了大量的封裝空間本課件是可編輯的正常PPT課件Arduino之運動傳感器MPU6050運動傳感器應(yīng)用場景平衡車無人機智能手機手勢遙控(VR)慣導(dǎo)電子穩(wěn)像、光學(xué)穩(wěn)像本課件是可編輯的正常PPT課件Arduino之運動傳感器MPU6050MPU6050介紹MPU6050模塊引腳:VCC:5V供電端GND:供電接地端SCL:IIC通信協(xié)議的時鐘線SDA:IIC通信協(xié)議的數(shù)據(jù)線XDA:連接外部傳感器的IIC數(shù)據(jù)線XCL:連接外部傳感器的IIC時鐘線AD0:IIC從地址最低位INT:用于中斷模塊運行本課件是可編輯的正常PPT課件Arduino之運動傳感器MPU6050MPU6050介紹通過IIC通信協(xié)議進行數(shù)據(jù)傳輸三軸陀螺儀→16位三軸角速度數(shù)據(jù)→俯仰角、橫滾角、偏航角→姿態(tài)三軸加速度計→16位三軸加速度數(shù)據(jù)→三軸速度、位移→位置本課件是可編輯的正常PPT課件Arduino之運動傳感器MPU6050MPU6050主要寄存器介紹0x1A:Configuration本課件是可編輯的正常PPT課件Arduino之運動傳感器MPU6050MPU6050主要寄存器介紹0x1B:GyroscopeConfiguration本課件是可編輯的正常PPT課件Arduino之運動傳感器MPU6050MPU6050主要寄存器介紹0x1C:AccelerometerConfiguration本課件是可編輯的正常PPT課件Arduino之運動傳感器MPU6050MPU6050主要寄存器介紹0x3B-0x40:AccelerometerMeasurements

本課件是可編輯的正常PPT課件Arduino之運動傳感器MPU6050MPU6050主要寄存器介紹0x43-0x48:GyroscopeMeasurements

本課件是可編輯的正常PPT課件Arduino之運動傳感器MPU6050IIC通信協(xié)議介紹I2C總線具有兩根雙向信號線,一根是數(shù)據(jù)線SDA,另一根是時鐘線SCLIIC總線上可以掛很多設(shè)備:多個主設(shè)備,多個從設(shè)備(外圍設(shè)備)每個接到I2C總線上的器件都有唯一的地址本課件是可編輯的正常PPT課件Arduino之運動傳感器MPU6050IIC通信協(xié)議介紹時序介紹本課件是可編輯的正常PPT課件Arduino之運動傳感器MPU6050Arduino控制MPU6050MPU6050模塊與Arduino開發(fā)板連接方式:VCC→開發(fā)板5V電源端GND→開發(fā)板接地端SCL→開發(fā)板A5端口SDA→開發(fā)板A4端口本課件是可編輯的正常PPT課件Arduino之運動傳感器MPU6050Arduino控制MPU6050Arduino自帶Wire庫函數(shù)介紹本課件是可編輯的正常PPT課件Arduino之運動傳感器MPU6050Arduino控制MPU6050配置濾波器配置角速度量程配置加速度量程讀取三軸加速度數(shù)據(jù)讀取三軸角速度數(shù)據(jù)打印信息MPU6050在IIC總線中的地址一般為0x68本課件是可編輯的正常PPT課件Arduino之藍牙模塊Arduino之藍牙藍牙簡介一種短距離無線通訊技術(shù)無線電波替換電纜藍牙技術(shù)具備成本低、功耗低、體積小、通信距離短等技術(shù)特性“藍牙”技術(shù)的目的是使特定的移動電話、便攜式電腦以及各種便攜式通信設(shè)備的主機之間在近距離內(nèi)實現(xiàn)無縫的資源共享本課件是可編輯的正常PPT課件Arduino之藍牙模塊參數(shù)特點引出接口包括:VCC——電源GND——地TXD——藍牙模塊信息發(fā)送端RXD——藍牙模塊信息接收端EN——使能端,當(dāng)此引腳懸空或連接到3.3V時,模塊使能。如果此引腳連接到GND,模塊將被禁用STATE——狀態(tài)輸出腳,當(dāng)模塊未連接到任何設(shè)備時,此引腳為低電平;當(dāng)模塊成功配對時,此引腳為高電平,單片機可通過該腳判斷藍牙是否已經(jīng)連接BT04A實物圖本課件是可編輯的正常PPT課件Arduino之藍牙模塊參數(shù)特點發(fā)射功率:4dBm最大通信距離:10m板載LED燈指示藍牙連接狀態(tài),閃爍表示沒有藍牙連接,常亮表示藍牙已連接并打開了端口工作電壓3.6~6V,通信電平3.3V,未配對時電流約30mA,配對后約10mA在未建立藍牙連接時,支持通過AT指令設(shè)置波特率、名稱、配對密碼,設(shè)置的參數(shù)掉電保存,藍牙連接之后自動切換到透傳模式BT04A實物圖本課件是可編輯的正常PPT課件Arduino之藍牙模塊藍牙模塊與Arduino連接硬件準備BT04A藍牙模塊ArduinoUNO開發(fā)板燒寫線杜邦線電路連接VCC→Arduino的5VGND→Arduino的GNDTXD→Arduino的D3RXD→Arduino的D2本課件是可編輯的正常PPT課件Arduino之藍牙模塊藍牙模塊與Arduino連接線路連接成功后,藍牙模塊板載LED閃爍:藍牙配對成功后,藍牙模塊板載LED常亮:本課件是可編輯的正常PPT課件Arduino之藍牙模塊Arduino通過藍牙模塊與安卓手機通信首先安裝手機APP,有多種選擇,大家可以根據(jù)自己的喜好下載,這里我們以Arduinobluetoothcontroller為例(下方提供了安裝包)Arduinobluetoothcontroller下載:本課件是可編輯的正常PPT課件Arduino之藍牙模塊Arduino通過藍牙模塊與安卓手機通信程序說明本課件是可編輯的正常PPT課件Arduino之藍牙模塊Arduino通過藍牙模塊與安卓手機通信手機與藍牙模塊配對:打開Arduinobluetoothcontroller選擇”BT04A”進行配對輸入配對密碼‘1234’選擇’Controllermode’本課件是可編輯的正常PPT課件Arduino之藍牙模塊Arduino通過藍牙模塊與安卓手機通信步驟三:藍牙連接點擊右上角“設(shè)置”選項把前后左右四個按鈕的值分別設(shè)置為:f,b,l,r本課件是可編輯的正常PPT課件Arduino之GSM模

溫馨提示

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

評論

0/150

提交評論