你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

H743 DAC通道缓冲器的校准问题

[复制链接]
我要变胖 提问时间:2024-11-5 10:14 / 未解决

由于使用环境的问题H743的DAC输出值有偏差,我想对H743的DAC通道缓冲器进行校准,OTRIM[4:0]位的默认值是16,我尝试更改该位的值(1和31都有尝试),但是DAC的输出电压好像没有什么变化(通过示波器来测量DAC的输出电压)。后面会附上我的代码,有两个问题请教各位大佬:

1.有关缓冲器校准的程序是否有问题?

2.OTRIM[4:0]的范围是0到31,那么步进值是多少呢?我的理解:假如VDD=VDDA=VREFIN=3.3V,OTRIM[4:0]值设置为31,那么步进值 = 3.3/(4096),那么校准后的电压值 = 校准前的电压值 + 31*步进值。不知道我理解的是不是对的。麻烦大佬提供一些帮助。

下面是DAC的配置:

static void DAC_Ch1_Config(void) { DacHandle.Instance = DAC1; /##-1- Initialize the DAC peripheral ######################################/ if (HAL_DAC_Init(&DacHandle) != HAL_OK) { / DAC initialization Error / Error_Handler(); }

/##-2- DAC channel2 Configuration #########################################/ sConfig.DAC_Trigger = DAC_TRIGGER_T6_TRGO; sConfig.DAC_OutputBuffer = DAC_OUTPUTBUFFER_ENABLE; sConfig.DAC_ConnectOnChipPeripheral = DAC_CHIPCONNECT_BOTH; sConfig.DAC_UserTrimming = DAC_TRIMMING_USER; sConfig.DAC_TrimmingValue = 31;

if (HAL_DAC_ConfigChannel(&DacHandle, &sConfig, DAC_CHANNEL_1) != HAL_OK) { / Channel configuration Error / Error_Handler(); }

HAL_DACEx_SelfCalibrate(&DacHandle, &sConfig, DAC_CHANNEL_1);

/##-5- Set DAC channel1 DHR12RD register ################################################/ if (HAL_DAC_SetValue(&DacHandle, DAC_CHANNEL_1, DAC_ALIGN_12B_R, 0x7FF) != HAL_OK) { / Setting value Error / Error_Handler(); }

/##-4- Enable DAC Channel1 ################################################/ if (HAL_DAC_Start(&DacHandle, DAC_CHANNEL_1) != HAL_OK) { / Start Error / Error_Handler(); }

}

收藏 评论4 发布时间:2024-11-5 10:14

举报

4个回答
chenkh 回答时间:昨天 11:07

看RM0468手册1248页上说,OTRIMx:These bits are available only on dual-channel DACs

我要变胖 回答时间:昨天 13:18

chenkh 发表于 2024-11-5 11:07
看RM0468手册1248页上说,OTRIMx:These bits are available only on dual-channel DACs
...

我留意到这句话了,但是这句话是针对OTRIM2的,也适用OTRIM1吗?我使用的是Channel1。

image.png

chenkh 回答时间:昨天 16:42

我要变胖 发表于 2024-11-5 13:18
我留意到这句话了,但是这句话是针对OTRIM2的,也适用OTRIM1吗?我使用的是Channel1。</p>
<p>![image.png] ...

[md]这就不清楚了,没用过

butterflyspring 回答时间:昨天 17:38
从手册上看,通道1 的buffer 是可以单独校准的,并且须按照手册介绍的步骤来实施的。

校准是调整额外的偏移量,这个电压很小,估计示波器可能很难量测出来变化。

STM32H743 DAC CHANNEL CALIBRATION 1.PNG STM32H743 DAC CHANNEL CALIBRATION 2.PNG
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版