ESP32 DAC
ESP32有两个DAC通道,通道1链接GPIO25, 通道2链接GPIO26;
当DAC设置为 “built-in DAC mode”的时候,I2S可以通过DAC发送数据;
使用示例:
dac_output_enable(DAC_CHANNEL_1);
dac_output_voltage(DAC_CHANNEL_1, 200);
dac一共有8位,将3.3V电压按照255均分之后,就是dac的精度的最小单位;
API函数如下:
esp_err_tdac_pad_get_io_num
(dac_channel_tchannel, gpio_num_t *gpio_num)
获取指定的DAC通道的GPIO口;
esp_err_tdac_output_voltage
(dac_channel_tchannel, uint8_t dac_value)
设置DAC的输出电压;
esp_err_tdac_output_enable
(dac_channel_tchannel)
DAC的输出使能;
esp_err_tdac_output_disable
(dac_channel_tchannel)
DAC的输出失能;
esp_err_tdac_i2s_enable
()
DAC 的I2S使能;
esp_err_tdac_i2s_disable
()
DAC的I2S失能;
下面是关于量程的理解:
esp_err_tadc1_config_channel_atten
(adc1_channel_tchannel, adc_atten_tatten)
该函数设定制定通道的量程范围atten;
默认量程是1.1伏特,如果想测量更高的范围的话,更改atten来更改测量量程,最高测量3.3伏特;
- Note
- 在adc1_get_raw()读值之前,确定atten的函数必须执行完毕;
- Note
- This function can be called multiple times to configure multiple ADC channels simultaneously. adc1_get_raw() can then be called for any configured channel.
- 如果想更改量程,这个函数可以多次被调用来更改量程范围;
When VDD_A is 3.3V:
0dB attenuaton (ADC_ATTEN_DB_0) gives full-scale voltage 1.1V
- 2.5dB attenuation (ADC_ATTEN_DB_2_5) gives full-scale voltage 1.5V
- 6dB attenuation (ADC_ATTEN_DB_6) gives full-scale voltage 2.2V
- 11dB attenuation (ADC_ATTEN_DB_11) gives full-scale voltage 3.9V (see note below)
Due to ADC characteristics, most accurate results are obtained within the following approximate voltage ranges:
- Note
- 最大电压对应着最大数值, (depending on ADC1 configured bit width, this value is: 4095 for 12-bits, 2047 for 11-bits, 1023 for 10-bits, 511 for 9 bits.)
- Note
- At 11dB attenuation the maximum voltage is limited by VDD_A, not the full scale voltage.
0dB attenuaton (ADC_ATTEN_DB_0) between 100 and 950mV
- 2.5dB attenuation (ADC_ATTEN_DB_2_5) between 100 and 1250mV
- 6dB attenuation (ADC_ATTEN_DB_6) between 150 to 1750mV
- 11dB attenuation (ADC_ATTEN_DB_11) between 150 to 2450mV
For maximum accuracy, use the ADC calibration APIs and measure voltages within these recommended ranges.
Return
-
- ESP_OK success
- ESP_ERR_INVALID_ARG Parameter error
- Parameters
-
channel
: ADC1 channel to configureatten
: Attenuation level
ESP32 DAC的更多相关文章
- ESP32 I2S
I2S支持DMA; I2S可以直接利用DAC来输出模拟信号 (GPIO 25 & GPIO 26): 高精度时钟使能参数: .use_apll = true ESP32配置外设一般都是配置 ...
- ESP32引脚参考(转)
ESP32芯片配有48个具有多种功能的引脚.并非所有的引脚都暴露在所有的ESP32开发板中,有些引脚不能使用. 关于如何使用ESP32 GPIO有很多问题.你应该用什么pin?在项目中应该避免使用哪 ...
- STM32之DAC君
如花说得好:呃呃呃.是俗话说得好:有了ADC,怎可少了DAC..我觉得奇怪.今天我开头就直奔主题了.我想了想,总结了一句话:孙悟空纵然有七十二变.无论是变成猫也好,变成狗也罢.始终还是会变回他本身.所 ...
- DAC Usage4:从 Backup Package(.bacpac)还原DB
使用DAC,能够将database的schema 和 data 从一个server 或 cloud 上复制到另外一个server上,存储schema 和 data的文件是 .bacpac 文件. 方法 ...
- DAC Usage3:Monitor Data-tier Applications
If you deploy a DAC to a managed instance of the Database Engine, information about the deployed DAC ...
- DAC Usage2:通过DAC实现DB Schema的Migration和Upgrade
一,Introduce Extract DAC 是从现存的DB中创建DAC,抽取DB Object的definition 和 与之相关的实例级别的元素,比如Login,以及Login 和User之间的 ...
- 基于STM32Cube的DAC数模转化
1. STM32Cube配置 1.1 DAC配置 1.2 TIM6 配置 1.3 利用Cube产生工程程序,MDK打开软件 在主循环上添加语句: HAL_TIM_Base_S ...
- MS SQL专用管理员连接DAC
在SQL SERVER 2005中,微软引入了一个叫做数据库专用管理员连接方式(DAC Dedicated Administrator Connection)的特性,使用这个新特性,数据库管理员可以在 ...
- SQL Server DAC——专用管理员连接
今天打开数据库刚要连接时,看到“连接到服务器”窗口,突发的想到:要是SQL Server 不再响应正常的连接请求,又想使用数据库时,我们该怎么办? 其实我们还能通过“SQL Server D ...
随机推荐
- Java - BlockingQueue
https://juejin.im/post/5aeebd02518825672f19c546 https://www.infoq.cn/article/java-blocking-queue blo ...
- 自定义SharePoint2013 master page
SharePoint uses templates to define and render the pages that a site displays. The structure of a Sh ...
- imooc《JavaScript深入浅出》上的一个 arraysSimilar 函数
任务 请在 index.html 文件中,编写 arraysSimilar 函数,实现判断传入的两个数组是否相似.具体需求: 数组中的成员类型相同,顺序可以不同.例如 [1, true] 与 [fal ...
- 【代码笔记】Web-手机端的meta
一,天猫 <title>天猫触屏版</title> <meta content="text/html; charset=utf-8" http-equ ...
- 【工具相关】Web-Sublime Text2的用法(一)
一,打开Sublime Text2--->出现如下所示界面. 二,在编辑区域可以随便输入数字.如图所示. 三,File--->Save. 四,将名字加上后缀,使其成为我们希望编辑的文件类型 ...
- 【读书笔记】iOS-xib,自动布局(二)
我们紧接着上面的文章来写. 一,此时没有选择自动布局的时候 . 二,选中Use Auto Layout.如下图所示. 三,自动布局与不自动布局最明显的区别是右下角多了4个按钮.如图所示. 四,设置On ...
- Salesforce的翻译工作台
翻译工作台 Salesforce提供了翻译工作台.在这里管理员可以对各种数据进行翻译设置,包括对象信息.字段信息.验证规则.错误信息等. 翻译工作台集中了翻译的内容,从而使得管理员或开发者不需要在其他 ...
- 一个Web页面的问题分析
几个月之前我接到一个新的开发任务,要在一个旧的Web页面上面增添一些新的功能.在开发的过程中发现旧的代码中有很多常见的不合适的写法,结合这些问题,如何写出更好的,更规范的,更可维护的代码,就是这篇文章 ...
- 原生js实现二级联动下拉列表菜单
二级联动下拉列表菜单的难点在于对后台返回的数据进行解析,不多逼逼,直接上代码 上图是后台返回的数据 实现代码如下: var deviceNotExist = true;//防止数据重复 if(data ...
- 【Java入门提高篇】Day33 Java容器类详解(十五)PriorityQueue详解
今天要介绍的是基础容器类(为了与并发容器类区分开来而命名的名字)中的另一个成员——PriorityQueue,它的大名叫做优先级队列,想必即使没有用过也该有所耳闻吧,什么?没..没听过?emmm... ...