色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何在設(shè)計中使用Arduino的模擬功能

電子設(shè)計 ? 來源:郭婷 ? 作者:電子設(shè)計 ? 2019-03-08 08:47 ? 次閱讀

模擬而生

Arduino 秉承讓數(shù)字技術(shù)輕松地運用到現(xiàn)實應(yīng)用中這一理念,推出 Arduino 硬件平臺,以實現(xiàn)將大多數(shù)模擬功能植入 Atmel 多功能 ATmega 8 位 MCU 系列。 在 Arduino 平臺上使用的所有 ATmega 變體均有一個片載多通道模數(shù)轉(zhuǎn)換器ADC)。 該 ADC 具有 10 位分辨率,能以 0 到 1023 的整數(shù)方式實現(xiàn)高達每秒 15,000 次的采樣速率。 大多數(shù) AVR MCU 支持 6 個模擬輸入通道,而一些變體則可支持 8 和 16 個輸入。 盡管模擬引腳的主要功能是讀取模擬輸入,但也可配置成數(shù)字式通用輸入/輸出 (GPIO) 引腳。 可根據(jù)需要為模擬引腳配備可選擇上拉電阻器,且采用與 MCU 數(shù)字引腳相同的上拉配置方法。

雖然一些 AVR MCU 采用了數(shù)模轉(zhuǎn)換器DAC),但在現(xiàn)有的這一代 Arduino 板上的 MCU 系列均能通過快速轉(zhuǎn)換其數(shù)字 I/O 引腳來產(chǎn)生脈寬調(diào)制 (PWM) 信號,以提供模擬輸出。 每個 PWM 輸出的 490 Hz(大約)方波的占空比經(jīng)過編程后,能提供一個大小為 0 至 5 V、周期為 256 毫秒、增量為 2 毫秒的等效 RMS 電壓(圖 1)。 Arduino 的輸出功能盡管在某種程度上受到一定限制,但可執(zhí)行如驅(qū)動 LED 或控制電機等許多任務(wù)。

如何在設(shè)計中使用Arduino的模擬功能

圖 1:利用脈寬調(diào)制 (PWM) 技術(shù), Arduino 的數(shù)字 GPIO 引腳可用作模擬輸出(感謝 Arduino.cc 提供數(shù)據(jù))。

通過板邊緣的母頭引腳連接器,大多數(shù) Arduino 板能輕松連接 MCU 的模擬(和數(shù)字)I/O 信號。 模擬通道數(shù)及其物理引腳分配會隨正在使用的特定 MCU 以及板的外形發(fā)生變化,但許多變體還是遵循常見的“官方”設(shè)計所采用的引腳布局慣例,如 Uno(圖 2)、Mega 和 Nano。

圖 2:Arduino Uno 板(第 3 版)的模擬輸入 (A0-A5) 和模擬 PWM 輸出(數(shù)字式:3、5、6、9、10 和 11)) 可通過板邊緣的標(biāo)準(zhǔn)針座引腳進行物理連接(感謝 Arduino.cc 提供數(shù)據(jù))。

因為 Arduino IDE 支持的編程語言中含有一組原生模擬 I/O 命令,因此采用模擬 I/O 功能開發(fā)代碼也易于進行。 通過這些指令可讀取模擬輸入、生成模擬 (PWM) 輸出以及配置 A/D 轉(zhuǎn)換器的基準(zhǔn)電壓。

讀取模擬輸入

我們能輕而易舉地將 Arduino 的模擬輸入與實際應(yīng)用連接,但需要為 AVR 的 A/D 轉(zhuǎn)換器選擇合適的基準(zhǔn)電壓源。 此時,可以用默認(rèn) (DEFAULT)、內(nèi)部 (INTERNAL) 或者外部 (EXTERNAL) 基準(zhǔn)電壓來確定輸入電壓上限。 默認(rèn)模式下,MCU 采用板載電源穩(wěn)壓器的輸出作為基準(zhǔn)電壓。 根據(jù)所使用的特定 Arduino 板,基準(zhǔn)電壓可以是 5 V 或者 3.3 V。

在內(nèi)部模式下,采用 AVR 的片載精密基準(zhǔn)電壓源。 器件不同,基準(zhǔn)源電壓也不同,但通常為 1.1 V(適用于 ATmega168 或 ATmega328)或者 2.56 V(在 ATmega8 和 Mega 系列中)。 在外部模式下,您可用一個 5K 電阻器將一個外部基準(zhǔn)電壓連接至 AREF 引腳。 AREF 引腳內(nèi)置一個 32K 保護電阻器,與 5K 外部電阻器一起作為分壓器。 所以,如果通過該外部電阻器施加 2.5 V 電壓,就會在 AREF 引腳上產(chǎn)生一個約為 2.2 V 的電壓,具體計算為 2.5 * 32 / (32 + 5) = 2.2 V。

利用 Aegunio 編程語言讀取模擬電壓時,需用 analogReference(type) 命令選擇基準(zhǔn)電壓源,然后引用一個 analogRead(pin) 讀數(shù)命令,其中,(pin) 表示您希望采樣的針座引腳編號。 基準(zhǔn)電壓一旦選定,基準(zhǔn)類型便不再改變,除非進行另外編程。 雖然 AVR MCU 能支持高達每秒 15k 次采樣的轉(zhuǎn)換率,但 Arduino 的軟硬件環(huán)境通常將其限制在每秒 10k 次采樣左右。

構(gòu)建 PWM 模擬輸出

在某一個 Arduino PWM 引腳上生成模擬電壓的具體做法是,用 pinMode(pin, mode) 命令將該引腳配置成輸出引腳,然后引用一個 analogWrite(pin, value) 命令,其中,(pin) 表示您希望用于輸出的針座引腳,(value) 表示將要產(chǎn)生的基準(zhǔn)電壓的一部分(增量為 1/255)。 配置完成后,該引腳將連續(xù)產(chǎn)生一個具有規(guī)定占空比的 490 Hz 穩(wěn)定方波,直至收到下一個 analogWrite() 請求(或者針對該引腳發(fā)出的一個 digitalRead() 或 digitalWrite() 請求)。

這些 I/O 引腳支持高達 40 mA 驅(qū)動電流,因此可直接驅(qū)動中型 LED 陣列。 對于功率較高的照明或者直流電機,模擬輸出可用于驅(qū)動功率晶體管或橋式電路。 對于要求更苛刻的應(yīng)用,這種輸出可通過簡單的 R/C 網(wǎng)絡(luò)濾波,且可用作放大器或者電流源的控制電壓。

更多的模擬技巧

一些 AVR MCU(包括 MEGA8 和 MEGA168)內(nèi)置了比較器,能將一個輸入電壓與另一個外部輸入進行比較,如與某個 PWM 輸出產(chǎn)生的電壓或者基準(zhǔn)器件的內(nèi)部基準(zhǔn)電壓比較。 比較器的電壓可以被輪詢或者用于觸發(fā)一個中斷。 盡管涉及了更多的軟件, 但中斷驅(qū)動式排列能讓處理器直接檢測欠壓和過壓條件,無需再對模擬通道進行重復(fù)采樣。 對于從可調(diào)閾值的運動探測器、沖擊傳感器到生物醫(yī)學(xué)監(jiān)視的每一種應(yīng)用,這都是一項非常方便的功能。

對于 MCU 無內(nèi)置比較器的 Arduino 板,可相對容易地在一些 Arduino 板上的 “Kluge” 區(qū)域添加一個外部器件,如 LM741、LM339N 或 TLC3704。 如您的板子上沒有用戶電路安裝空間,則可通過一塊價格低廉的原型設(shè)計擴展卡添加用戶電路(圖 3)。

圖 3:利用原型設(shè)計擴展卡,您能方便地將自己的模擬或者數(shù)字 I/O 添加到幾乎任何一塊標(biāo)準(zhǔn)的 Arduino 板上。

總結(jié)

Arduino 器件憑借自身的低成本、多功能優(yōu)勢,在商業(yè)硬件開發(fā)人員中培養(yǎng)了一批忠實擁躉。 Arduino 硬件平臺旨在將大多數(shù)模擬能力植入 Atmel 的 ATmega 8 位 MCU 系列中。 這些 MCU 的所有變體均有一個片載多通道模數(shù)轉(zhuǎn)換器 (ADC)。 本文旨在介紹 Arduino 模擬功能的基本軟硬件資源組成,為能夠用這些功能完成未來設(shè)計的工程師們提供一個新起點。 為此,我們討論了如何讀取模擬輸入、構(gòu)建 PWAM 模擬輸出和添加外部模擬 I/O。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 連接器
    +關(guān)注

    關(guān)注

    98

    文章

    14562

    瀏覽量

    136743
  • adc
    adc
    +關(guān)注

    關(guān)注

    98

    文章

    6512

    瀏覽量

    544991
  • Arduino
    +關(guān)注

    關(guān)注

    188

    文章

    6471

    瀏覽量

    187308
收藏 人收藏

    評論

    相關(guān)推薦

    何在Arduino中使用KY-037聲音檢測傳感器

    這個項目將教你如何在 Arduino 中使用 KY-037 聲音檢測傳感器,并且測量環(huán)境中聲音強度的變化。
    發(fā)表于 08-02 15:41 ?4853次閱讀
    如<b class='flag-5'>何在</b><b class='flag-5'>Arduino</b><b class='flag-5'>中使</b>用KY-037聲音檢測傳感器

    何在Linux中使用htop命令

    本文介紹如何在 Linux 中使用 htop 命令。
    的頭像 發(fā)表于 12-04 14:45 ?2046次閱讀
    如<b class='flag-5'>何在</b>Linux<b class='flag-5'>中使</b>用htop命令

    何在Arduino IDE中使用ESP-100進行開發(fā)?

    上沒有任何規(guī)范或驅(qū)動程序(請參閱 )。此外,搜索 ESP-100 并沒有讓我了解如何在 Arduino IDE 中使用這個東西進行開發(fā)的重要事實。 到目前為止,我已經(jīng)使用 Arduino
    發(fā)表于 05-12 08:06

    Arduino模擬功能:如何在您的下一個設(shè)計中使用這些模擬功能

    在嵌入式設(shè)計方面無論您是專家還是新手,您都會充分體會到 Arduino 開放式硬件平臺的模擬輸入和輸出通道是如何讓您的項目與“現(xiàn)實世界”輕松相連的。
    發(fā)表于 07-12 14:56 ?4次下載
    <b class='flag-5'>Arduino</b> 的<b class='flag-5'>模擬</b><b class='flag-5'>功能</b>:如<b class='flag-5'>何在</b>您的下一個設(shè)計<b class='flag-5'>中使</b>用這些<b class='flag-5'>模擬</b><b class='flag-5'>功能</b>

    何在Arduino中使用NRF24L01模塊

    電子發(fā)燒友網(wǎng)站提供《如何在Arduino中使用NRF24L01模塊.zip》資料免費下載
    發(fā)表于 10-19 09:16 ?13次下載
    如<b class='flag-5'>何在</b><b class='flag-5'>Arduino</b><b class='flag-5'>中使</b>用NRF24L01模塊

    何在Arduino中使用伺服電機

    電子發(fā)燒友網(wǎng)站提供《如何在Arduino中使用伺服電機.zip》資料免費下載
    發(fā)表于 10-24 09:46 ?3次下載
    如<b class='flag-5'>何在</b><b class='flag-5'>Arduino</b><b class='flag-5'>中使</b>用伺服電機

    何在arduino中使用I2c LCD模塊

    電子發(fā)燒友網(wǎng)站提供《如何在arduino中使用I2c LCD模塊.zip》資料免費下載
    發(fā)表于 10-26 14:29 ?1次下載
    如<b class='flag-5'>何在</b><b class='flag-5'>arduino</b><b class='flag-5'>中使</b>用I2c LCD模塊

    何在Arduino中使用LDR

    電子發(fā)燒友網(wǎng)站提供《如何在Arduino中使用LDR.zip》資料免費下載
    發(fā)表于 10-31 09:50 ?0次下載
    如<b class='flag-5'>何在</b><b class='flag-5'>Arduino</b><b class='flag-5'>中使</b>用LDR

    何在Arduino中使用Modbus

    電子發(fā)燒友網(wǎng)站提供《如何在Arduino中使用Modbus.zip》資料免費下載
    發(fā)表于 11-22 11:21 ?14次下載
    如<b class='flag-5'>何在</b><b class='flag-5'>Arduino</b><b class='flag-5'>中使</b>用Modbus

    何在Arduino中使用微型伺服

    電子發(fā)燒友網(wǎng)站提供《如何在Arduino中使用微型伺服.zip》資料免費下載
    發(fā)表于 11-28 09:50 ?1次下載
    如<b class='flag-5'>何在</b><b class='flag-5'>Arduino</b><b class='flag-5'>中使</b>用微型伺服

    何在Python中使用MQTT

    本文主要介紹如何在 Python 項目中使用?paho-mqtt?客戶端庫 ,實現(xiàn)客戶端與?MQTT?服務(wù)器的連接、訂閱、取消訂閱、收發(fā)消息等功能。
    的頭像 發(fā)表于 12-22 10:41 ?9847次閱讀
    如<b class='flag-5'>何在</b>Python<b class='flag-5'>中使</b>用MQTT

    何在Arduino中使用20x4 I2C字符LCD顯示器

    電子發(fā)燒友網(wǎng)站提供《如何在Arduino中使用20x4 I2C字符LCD顯示器.zip》資料免費下載
    發(fā)表于 06-28 15:57 ?0次下載
    如<b class='flag-5'>何在</b><b class='flag-5'>Arduino</b><b class='flag-5'>中使</b>用20x4 I2C字符LCD顯示器

    何在Arduino中使用APDS9960手勢傳感器

    電子發(fā)燒友網(wǎng)站提供《如何在Arduino中使用APDS9960手勢傳感器.zip》資料免費下載
    發(fā)表于 06-28 16:01 ?0次下載
    如<b class='flag-5'>何在</b><b class='flag-5'>Arduino</b><b class='flag-5'>中使</b>用APDS9960手勢傳感器

    何在測試中使用ChatGPT

    Dimitar Panayotov 在 2023 年 QA Challenge Accepted 大會 上分享了他如何在測試中使用 ChatGPT。
    的頭像 發(fā)表于 02-20 13:57 ?771次閱讀

    何在MSP430?MCU中使用智能模擬組合

    電子發(fā)燒友網(wǎng)站提供《如何在MSP430?MCU中使用智能模擬組合.pdf》資料免費下載
    發(fā)表于 09-14 10:19 ?0次下載
    如<b class='flag-5'>何在</b>MSP430?MCU<b class='flag-5'>中使</b>用智能<b class='flag-5'>模擬</b>組合
    主站蜘蛛池模板: 亚洲电影网址| 99久久免费国产精精品| www.av日韩| 日韩av国产av欧美天堂社区 | 九九久久国产精品大片| 91福利潘春春在线观看| 97久久无码精品AV| 青青青伊人| 国内精品七七久久影院| 在线观看a视频| 日本熟妇乱人伦A片精品软件| 国产私拍福利精品视频| 专干老肥熟女视频网站300部| 青青青青久久久久国产的| 国产一区亚洲| DASD-700美谷朱里| 亚洲精品第二页| 欧美性爱 成人| 极品少妇小泬50PTHEPON| qvod播放电影| 亚洲午夜久久久久久久久电影网| 欧美自拍亚洲综合图区| 果冻传媒视频在线播放| 99久久婷婷国产麻豆精品电影| 偷拍 自怕 亚洲 在线| 两个洞一起插哦!好刺激| 国产成人精品视频| 91av成年影院在线播放| 亚洲1卡二卡3卡4卡新区在线| 男女XX00上下抽搐动态图| 国产又粗又黄又爽的大片| yellow日本动漫观看免费| 一本久道视频无线视频| 手机毛片免费看| 欧美日韩中文国产一区发布| 黄色天堂网站| 国产精品久久久久久搜索 | 国产亚洲精品V在线观看一| 99久热这里精品免费| 亚洲伊人久久一次| 天堂岛www天堂资源在线|