历史上的今天
返回首页

历史上的今天

今天是:2025年04月21日(星期一)

正在发生

2020年04月21日 | STM32 DAC简单介绍

2020-04-21 来源:eefocus

1.DAC模块


1.数模转换功能


2.可以配置为8位和12位模式(8位右对齐,12位左对齐,12位右对齐)


3.DAC模块有两个单独的控制器,每个通道有着单独的转换器,可以独立转换,也可以同时转换


4.可以实现噪声波形和三角波形的生成


5.每个通道有着DMA功能


6.图示:

PS:左上方为一些触发的条件,左下方为一些数字电源(VDDA,VSSA)


Vref+为参考电压,DAC_OUT_x为DAC的输出通道,(2.4v

数据并不是直接传入DORx的,需要先传入DHRx(如果没有选择硬件触发(TENx=0),在一个时间周期后传入DORx),同时,又经过Tsetting(大约3us)后传入DHRx,如果选择硬件触发(TENx=1),则在3个时间周期后传入DORx

2.细节部分


1.DAC的输出电压 


DAC输出=(Vref)x(DOR/4095)


2.DAC的输出缓存


虽然可以提高输出能力,但是达不到输出为0的效果,所以基本不用


3.配置步骤


1.开启GPIO口的时钟,设置GPIO口


2.使能DAC的时钟


3.初始化DAC


4.使能DAC的转化通道


5.设置输出值


PS:


typedef struct {  


uint32_t DAC_Trigger;  //触发方式


uint32_t DAC_WaveGeneration;  //是否形成波形


uint32_t DAC_LFSRUnmask_TriangleAmplitude;   //屏蔽/幅值选择器(在选择波形后使用)


uint32_t DAC_OutputBuffer;   //输出缓存(一般不用)


}


DAC_InitTypeDef; 


GPIO_InitTypeDef GPIO_InitStructure;//定义结构体

DAC_InitTypeDef DAC_InitType;

 

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE );   //使能PORTA通道时钟

RCC_APB1PeriphClockCmd(RCC_APB1Periph_DAC, ENABLE );   //使能DAC通道时钟 

 

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4; // 端口配置

  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN; //模拟输入

  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

  GPIO_Init(GPIOA, &GPIO_InitStructure);

GPIO_SetBits(GPIOA,GPIO_Pin_4) ;//PA.4 输出高

DAC_InitType.DAC_Trigger=DAC_Trigger_None;//无触发功能

DAC_InitType.DAC_WaveGeneration=DAC_WaveGeneration_None;//无波形发生

DAC_InitType.DAC_LFSRUnmask_TriangleAmplitude=DAC_LFSRUnmask_Bit0;//作为屏蔽/幅值选择器,在无波形时,不使用

DAC_InitType.DAC_OutputBuffer=DAC_OutputBuffer_Disable;//一般不使用输出缓存

DAC_Init(DAC_Channel_1,&DAC_InitType);//初始化DAC通道1

DAC_Cmd(DAC_Channel_1,ENABLE);//通道使能

DAC_SetChannel1Data(DAC_Align_12b_R,0); //初始化数据格式

}

设置电压值(vol*4096/3.3)


void Dac1_Set_Vol(u16 vol)

{

float temp=vol;

temp/=1000;

temp=temp*4096/3.3;//公式

DAC_SetChannel1Data(DAC_Align_12b_R,0); //初始化数据格式

}


注意设置数据对齐的方式

推荐阅读

史海拾趣

ACI [Applied Concepts, Inc.]公司的发展小趣事

为了进一步提升市场影响力,ACI公司积极寻求与其他行业领导者的战略合作。通过与知名电子产品制造商、芯片供应商等建立紧密的合作关系,ACI得以获取更优质的资源和技术支持。这些合作不仅提升了ACI的产品质量和技术水平,还扩大了公司的市场影响力,为公司的长远发展奠定了坚实基础。

ELNA(依娜)公司的发展小趣事

在数字化转型和智能化升级的趋势下,ELNA开始积极探索新技术和新模式。公司加强了与互联网和人工智能技术的融合,推动产品和服务的智能化升级。同时,ELNA还加强了对大数据和云计算技术的应用,提升生产效率和管理水平。

以上是对ELNA公司在电子行业中的部分发展历程的概述。您可以根据这些故事的开头进一步扩展和完善内容以满足字数要求。

ECS公司的发展小趣事

为了进一步扩大市场份额,ECS公司开始积极拓展全球市场。他们与全球各地的云服务提供商建立了紧密的合作关系,共同为客户提供更加全面、便捷的服务。同时,ECS公司还积极参加国际云计算展会和论坛,与国际同行交流经验和技术,不断提升自身的竞争力。通过这些努力,ECS公司的品牌知名度和市场份额得到了显著提升。

科通(COMTEK)公司的发展小趣事

随着公司业务的不断拓展,科通技术开始与国际知名品牌展开合作。通过与Xilinx、Intel、SanDisk等全球领先的芯片原厂建立紧密的合作关系,科通技术获得了这些品牌的产品线授权,并为其在中国市场的拓展提供了有力的支持。这些合作不仅提升了科通技术的品牌影响力,也为其带来了更多的市场机会。

比亚迪(BYD)公司的发展小趣事

近年来,比亚迪在电子行业的发展进入了新的阶段。为了巩固和扩大国内市场的发展优势,同时加速海外布局,比亚迪开始实施多品牌策略。通过推出不同定位、不同价格区间的产品系列,比亚迪满足了更多消费者的需求。同时,比亚迪还积极推进本地化生产进程,在海外设立生产基地,提高生产效率和降低成本。这些举措不仅提升了比亚迪在全球市场的竞争力,也为其未来的可持续发展奠定了坚实基础。

这些故事展示了比亚迪在电子行业中的发展历程和关键节点,从电池技术的突破、进军海外市场、新能源汽车转型、品牌形象更新到多品牌策略的实施,都体现了比亚迪不断创新、追求卓越的精神。

GainSpan ( Telit)公司的发展小趣事

风华高科自成立以来,一直注重技术创新和产品多元化发展。公司不断投入研发资源,成功开发出多种新型电子元器件和电子材料,如片式电阻器、片式电感器、超小型铝电解电容器等。这些产品广泛应用于通讯、消费、计算机、汽车电子等领域,满足了市场多样化的需求。同时,公司还建立了完善的质量管理体系,确保产品质量符合国际标准。

问答坊 | AI 解惑

用最新库玩转智林STM32开发板(之七)------让开发板发出SOUND

听说库又升级了哈,我的版本以是最新版,所以题目没改,我觉得ST这么升级下去对编程者没太大好处,大家都象智林老大,不用库算了. 唉,还得言归正传 智林板的喇叭接的是第TIM3的第3道,所以得编相应的程序. #include     // STM32F10x Librar ...…

查看全部问答>

X86学习之第一章以太网配置

本帖最后由 paulhyde 于 2014-9-15 08:56 编辑 1.3.3 Network scripts Using the network scripts To be able to access the network functions, you need to include the necessary shell scripts by running: . /etc/functions.sh # common fun ...…

查看全部问答>

IGBT管主要参数

IGBT三极管问世仅20余年,它是功率场效应管与普通双极型(PNP或NPN)管复合后的一种新型半导体器件,即绝缘栅、双极晶体管,简称IGBT管,它综合了场效应管开关速度快、控制电压低和双极晶体管电流大、反压高、导通时压降小的优点。目前,最高工作频率 ...…

查看全部问答>

怎样安装wince下的unimodem驱动

请问怎样手工装wince 5.0的unimodem驱动 我的ce下没有  怎样像装windows xp的驱动一样通过设备管理器装? …

查看全部问答>

ceshell.dll功能是什么?

请教大家个问题: ceshell.dll是做什么的?…

查看全部问答>

老师布置的 汇编作业不会啊!!帮帮忙啊

两个数相加 这两个数是单精度的浮点数 0.97570213004 ,-0.97702828142 采用IEEE的32位标浮点格式 ,就是每个浮点数都有3个部分,符号位,指数部分,尾数 …

查看全部问答>

RS232转485,485再转回232问题。急!!!高手进!在线等待

我们现在做考勤系统,软件已经完成。硬件用rs232读卡器读取卡信息,通过串口传入计算机。现在把读卡器直接连到计算机的串口能够读取到卡信息,但是,由于我们的计算机与读卡器的距离比较远,大于有效距离15米,大概有几百米,所以我们将计算机的串 ...…

查看全部问答>

XDS100可以调试tms320f28335吗?

手头只有调试TMS320F28027的XDS100,不知道该XDS100能不能调试tms320f28335   以前自己做的2407A用的是并口调试工具,现在有没有什么USB的,可以自己DIY的工具啊?…

查看全部问答>

参加研讨会,免费获取Zigbee开发套件(ADK-DK)及礼品一套!!!

http://www.mxchip.com/guanyuwomen/gongsixinwen/20110302/389.html…

查看全部问答>

燃烧器火焰探测和控制

有个程序,实在看不懂,哪位帮忙看下,帮我详细解释解释 \'( 故障代码: E0:燃气泄露 E1:风机 E2:点火器 E3:小火电磁阀(v1) E4:大火电磁阀(v2) E5:残火 E6:燃气超压 E7:意外熄火( ...…

查看全部问答>