【经验】8位单片机EFM8LB中DAC初始化输出值为0的解决方法
SILICON LABS公司推出的EFM8LB系列8位单片机,主频高达72MHz,最多集成4路DAC功能,具有体积小,集成度高的特点,在各行业得到广泛应用。特别是在光模块产品上,大部分产品都采用EFM8LB系列作为控制MCU。
EFM8LB系列的DAC功能是常用的功能。在使用时,细心的工程师会发现,DAC在上电时,输出电压为VIO电压,然后会有变为0V输出,最后输出DAC初始化值。如图一所示:
图1 DAC上电时序
这是因为在DAC接口初始化之前,IO口为开漏模式,输出高电平。当DAC输出对应的IO口配置为模拟接口时,端口电压变为0V。DAC使能并赋值后,则输出配置电压。
为了减小DAC输出值变动大对外部设备的影响,希望DAC输出值直接从VIO变为DAC初始化值。这可以通过修改初始化流程解决。实现步骤如下:
第一步:DAC赋初始值再使能DAC,如果先使能再赋值,任然会出现0V输出。
图2 DAC初始化代码
第二步:将DAC输出接口配置为模拟端口。
图3 DAC输出IO口配置代码
如果在IO口配置为模拟端口之前先使能DAC功能,会不会没有DAC电平输出?这个不用担心,Silicon Labs的DAC例程中,就是采用的数字接口输出DAC电平。那为什么又需要设置为模拟接口呢?因为配置为模拟接口时,其弱上拉上,数字驱动器和数字接收器被禁用, 可以节省功率,并减少模拟信号上的噪声。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由东方的风提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关推荐
【经验】如何下载、安装、设置Silicon Labs 8位单片机集成开发环境IDE?
Silicon Labs的8位单片机集成开发环境IDE,简单、容易、强大,是C8051F及EFM8等8位单片机软件开发的强大利器!为了让新手能够快速上手IDE,本将详细接收Silicon Labs IDE的下载、安装、设置等方法。
【经验】芯科8位单片机EFM8BB51与EFM8BB21的对比分析
由于EFM8BB51的寄存器相对于EFM8BB21做了较多的调整,使用EFM8BB51来替换EFM8BB21,程序将做修改才能在新的MCU上运行,为了方便修改程序,本文针对寄存器进行对比,方便客户有针对性的调整程序。
【经验】8位单片机EFM8BB21 串口UART1的配置与调试
UART是单片机中经常要使用到的外设, Silicon Labs EFM8BB21系列8位单片机中有两个UART,分别UART0和UART1,本片文章主要介绍UART1的配置与调试。使用芯科官方推出的开发软件Simplicity Studio配置工具可以很方便的进行寄存器的初始化配置,省去了繁杂的计算。
SILICON LABS 8-bit Microcontroller选型表
SILICON LABS 8位MCU选型,MCU Core 8051,频率20MHz~100MHz,Flash存储2kB~120kB,RAM存储0.25kB~8kB。
产品型号
|
品类
|
系列
|
Frequency(MHz)
|
Flash (kB)
|
RAM (kB)
|
Vdd min(V)
|
Vdd max(V)
|
Package Type
|
Package Size (mm)
|
Internal Osc.
|
Dig I/O Pins
|
ADC 1
|
Temp Sensor
|
Timers (16-bit)
|
PCA Channels
|
DAC
|
Comparators
|
UART
|
SPI
|
I2C
|
HS I2C Slave
|
EMIF
|
CAN
|
LIN
|
VREF
|
Debug Interface
|
C8051F392-A-GM
|
8位MCU
|
C8051F39x Small Form Factor
|
50
|
16
|
1
|
1.8
|
3.6
|
QFN20
|
4x4
|
±2
|
17
|
10-bit, 16-ch., 500 ksps
|
Temp Sensor
|
6
|
3
|
10-bit, 2-ch.
|
1
|
1
|
1
|
2
|
0
|
0
|
0
|
0
|
VREF
|
C2
|
选型表 - SILICON LABS 立即选型
【经验】8位单片机EFM8系列的SFR Page操作
Silicon Labs的8位单片机EFM8系列,集成丰富的外设,高性能,小封装。软件开发时,由于外设多,寄存器操作引入了SFR Page机制,注意SFR Page设置,防止程序错误,让EFM8系列芯片设计出稳定的优质产品。
【经验】8位单片机EFM8BB51正确初始化ADC后不工作的问题处理经验
芯科最新推出的8位单片机EFM8BB51,EFM8BB51使用模拟部分功能(比如ADC,比较器),客户往往会忽略AMUXCP的初始化,导致模拟功能不能使用。本文介绍AMUXCP功能的使用。
【经验】如何计算8位单片机EFM8LB系列PWM最高输出频率?
在电机驱动、电源发生、可调电压发生等应用中,经常需要PWM波,Silicon Labs推出的高性能、高集成度、小体积、高性价比的EFM8LB系列8位单片机,可广泛应用光模块、电机控制等领域,它支持输出PWM波。本文将详细讲解如何计算EFM8LB系列8位单片机PWM最高输出频率。
【经验】8位单片机C2自制烧录器不能用于EFM8问题分析及解决
Silicon Labs公司推出的8位单片机,采用独特的C2调试接口,在占用极少的引脚资源的情况下,实现在线仿真调试,烧录功能,方便软件的开发设计。客户自制C2烧录器,可以更好的用于批量生产。以前用于C8051F系列的自制烧录器如果在EFM8烧写时出现问题,可以根据文章内容进行简单修改,解决烧写问题。
【经验】解决8位单片机EFM8BB51驱动三相电机过零检测不灵敏的问题
对于简单的8位MCU实现,块换向用于驱动电动机。这种驱动方法需要逆变器电路对根据霍尔传感器给出的转子位置,电机相位电角度每120度的电流或者无传感器方法。本文主要解决8位单片机EFM8BB51F16I-QFN20驱动三相电机过零检测不灵敏的问题。
【经验】如何基于Simplicity Studio快速配置EFM8LB 8位单片机串口波特率?
对于嵌入式的代码开发,大家经常会用到串口,而串口的波特率,是串口配置中重要的参数。本文基于Silicon Labs提供的功能强大的软件开发平台Simplicity Studio,讲解如何正确、快速地配置串口波特率,籍此让大家对软件开发平台Simplicity Studio的GUI配置功能以及EFM8LB单片机串口配置流程有所熟悉。
【经验】对EFM8系列8位单片机可编程逻辑单元CLU的作用及应用的理解
Silicon Labs的EFM8系列8位单片机,集成了独特数字外设可编程逻辑单元CLU,让EFM8单片机的功能更加强大。那么,这个CLU的作用及应用是什么呢?本文将详细为你解读。
【经验】解析Silicon Labs的8位单片机EFM8SB10休眠时如何处理GPIO口降低功耗
Silicon Labs的8位单片机EFM8SB10采用C8051内核,主频25MHz,集成12BIT的ADC、模拟比较器、触摸按键、UART、SPI、I2C等功能,休眠功耗低至50nA。本文将介绍EFM8SB10休眠时如何处理GPIO口降低功耗。
【经验】如何基于Production Programmer实现EFM8系列8位单片机HEX文件下载?
当软件工程师调试并测试完毕代码后,下一个步骤,就是交给生产进入下载、生产环节。对于Silicon Labs的8位单片机,产线上下载方式有多种多样。本文将为你介绍一种简单、高效、低成本的下载方式,即基于原厂提供的通用软件“Production Programmer”+ U-EC6的方式。
【经验】8位单片机EFM8系列的ADC对参考电压Vref引脚设计要求
Silicon Labs的8位单片机EFM8系列,高精度ADC功能时该芯片的一大特点,为了ADC获得准确的采用值,除了正确操作ADC外设外,还需要正确设计参考电压,结合EFM8芯片的特点,介绍参考电压设计需要注意的事项。
【经验】8位单片机C8051F360如何实现多个SPI通信?
快速与不同配置的多个从设备进行通信,已经成为当前MCU芯片设计中的核心技术点之一。在现有微控制器芯片中spi接口一般只有1个,如何实现多个SPI通信是个问题。本文将介绍Silicon Labs的8位单片机C8051F360实现多个SPI通信的方法。
电子商城
品牌:SILICON LABS
品类:Wireless Gecko SoC
价格:¥8.1764
现货: 103,878
现货市场
服务
可定制ATD TE Dehumidifier的冷却功率:20~220W;工作电压:12V(DC)/ 220V(AC);控温精度:≤±0.5℃;尺寸:冷面:20*20~500*300;热面:60*60~540*400(长*宽;单位mm)。
最小起订量: 1 提交需求>
拥有IC烧录机20余款,100余台设备,可以烧录各种封装的IC;可烧录MCU、FLASH、EMMC、NAND FLASH、EPROM等各类型芯片,支持WIFI/BT模组PCBA烧录、测试。
最小起订量: 1 提交需求>
登录 | 立即注册
提交评论