今天,我們將討論兩個主題。第一個是DAC,來自英文數模轉換器,將其翻譯成葡萄牙語將是模擬數字轉換器。我認為這非常重要,例如,通過它在ESP32上進行音頻輸出。
我的ESP32實做書籍:我出書了 ESP32 物聯網專題
博客來網址:https://www.books.com.tw/products/0010901195
資料來源:https://www.fernandok.com/2018/08/esp32-voce-sabe-o-que-e-dac.html(本文只是翻譯該文)
ESP32:您知道什麼是DAC嗎?
今天,我們將討論兩個主題。第一個是DAC,來自英文數模轉換器,將其翻譯成葡萄牙語將是模擬數字轉換器。我認為這非常重要,例如,通過它在ESP32上進行音頻輸出。
今天我們要處理的第二個問題是示波器。然後,我們將在ESP32上編譯基本的DAC代碼,並通過示波器將此類微控制器生成的波形模擬信號可視化。
![](https://i0.wp.com/3.bp.blogspot.com/-23PIQyIBiNk/W2tI_POAlII/AAAAAAAADYI/UZJT23yHFgMfcxGZNI5p1WdlWMZargwAgCLcBGAs/s640/1.png?resize=841%2C283&ssl=1)
今天的設置非常簡單,以至於我什至沒有錄製演示,因為這可能就是我在這裡留下的印象。
基本上,我們有一個ESP32,它可以通過程序生成各種類型的波形。
我們使用GPIO25作為輸出,並使用GND作為參考。
![](https://i0.wp.com/1.bp.blogspot.com/-LxdgexdU4Pk/W2tJD_uIBZI/AAAAAAAADYM/diTrYIUKJdoyhA83RwwOoKoS314tjHjbwCLcBGAs/s640/3.png?resize=839%2C455&ssl=1)
使用的針腳
![](https://i0.wp.com/1.bp.blogspot.com/-q1y9-PqlYm0/W2tJPINhn6I/AAAAAAAADYU/mChr8ZKAQvgRqdf7T-cgSssU8o8kFyBOwCLcBGAs/s640/6.png?resize=841%2C444&ssl=1)
在此示例中,我們將使用 與DAC_1對應的GPIO 25。
可以使用的另一個是與DAC_2對應的GPIO 26。
代碼ESP32-波矩陣
我們有一個源代碼,它將生成四種類型的波形。
首先,我們建立一個二維矩陣。
![](https://i0.wp.com/2.bp.blogspot.com/-BuKRlt7L3gA/W2tJcuNAFZI/AAAAAAAADYg/twE5w6xnnjQ0QKgJVbdklRzVFpUPMi2MwCLcBGAs/s640/7.png?resize=840%2C446&ssl=1)
![](https://i0.wp.com/2.bp.blogspot.com/-ArDsnLuneUA/W2tJhof4z4I/AAAAAAAADYk/XcsOwwlK6D4ueofaC-rTe1seSwDejQv6QCLcBGAs/s640/8.png?resize=840%2C445&ssl=1)
![](https://i0.wp.com/1.bp.blogspot.com/-BJ1parbNoPk/W2tJoPAvzPI/AAAAAAAADYo/tVpO7-iKZncdOhGGwEP6OFqQDPmvLuT3gCLcBGAs/s640/9.png?resize=841%2C435&ssl=1)
至於源代碼,在 安裝程序中無需執行任何操作。在Loop中,我確定與波類型相對應的矩陣位置,並以方波為例。
我們在引腳25上寫入矩陣保存的數據。我檢查“ i”是否在矩陣的最後一列。如果是這樣,“ i”將被重置並返回到開頭。
伙計們,我想澄清一下,這種具有ESP32,STM32的DAC,也就是說,這些芯片通常容量較小,可以用於更多通用用途。為了產生高頻波,有DAC芯片本身,例如來自Texas或Analog Devices的DAC芯片。
示波器獲得的波
首先,我們捕獲了正弦波。
![](https://i0.wp.com/1.bp.blogspot.com/-XH4valQ2Yek/W2tKFCgMFCI/AAAAAAAADZI/4_sxgCjX9NM4NLloFpGF-f16AgFaWL0KwCLcBGAs/s640/13.png?resize=839%2C329&ssl=1)
![](https://i0.wp.com/3.bp.blogspot.com/-2XDUVOchp54/W2tKK01h0wI/AAAAAAAADZQ/8dyH318RpCgbSNcoTd_u8wifRUDvwlyugCLcBGAs/s640/14.png?resize=840%2C324&ssl=1)
![](https://i0.wp.com/1.bp.blogspot.com/-4BY_VtRxGrM/W2tKPsYZU_I/AAAAAAAADZY/1vQ8aV9eR8E6ooi7WGo8Ep8tQ-jGKAcRgCLcBGAs/s640/15.png?resize=839%2C329&ssl=1)
最後,廣場
![](https://i0.wp.com/3.bp.blogspot.com/-pbhnjFqhc5A/W2tKUtrwVfI/AAAAAAAADZc/Y0lPhl1WfV4c-PXbTvU59railoj4EyGogCLcBGAs/s640/16.png?resize=840%2C344&ssl=1)
程式碼請參閱本文作者Github:https://github.com/G6EJD/ESP32-DAC-Examples