OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2593|回复: 4

开发板例程DAC疑问?

[复制链接]

1

主题

4

帖子

0

精华

新手入门

积分
12
金钱
12
注册时间
2019-1-17
在线时间
2 小时
发表于 2019-1-23 10:46:26 来自手机 | 显示全部楼层 |阅读模式
原子哥,我正在看原子的例程,DAC部分,在函数Dac1_Set_Vol(u16 vol)中,有一句
temp=temp*4096/3.3;
这一句有点疑问,为什么12位的DAC最大值是4095,为什么不写城temp=temp*4095/3.3;呢?
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

55

主题

1232

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2624
金钱
2624
注册时间
2014-2-13
在线时间
514 小时
发表于 2019-1-23 13:37:32 | 显示全部楼层
0~4095,一共4096份,这里区别不大
技术交流,Sell 中颖单片机,欢迎私信骚扰
回复 支持 反对

使用道具 举报

1

主题

4

帖子

0

精华

新手入门

积分
12
金钱
12
注册时间
2019-1-17
在线时间
2 小时
 楼主| 发表于 2019-1-23 16:52:19 来自手机 | 显示全部楼层
感觉在这里0不能算作是一份,DACx输出电压=Vref*(DORx/4095),句
回复 支持 反对

使用道具 举报

4

主题

33

帖子

0

精华

新手上路

积分
48
金钱
48
注册时间
2018-8-23
在线时间
14 小时
发表于 2019-1-23 22:23:27 | 显示全部楼层
qinshuai 发表于 2019-1-23 16:52
感觉在这里0不能算作是一份,DACx输出电压=Vref*(DORx/4095),句

0为啥不能算一份,数组还把第0个元素当首地址呢,0~4095就是4096份,对应3.3v,再看你现在的份数来判断电压
回复 支持 反对

使用道具 举报

1

主题

4

帖子

0

精华

新手入门

积分
12
金钱
12
注册时间
2019-1-17
在线时间
2 小时
 楼主| 发表于 2019-1-24 08:56:48 来自手机 | 显示全部楼层
如果0算作1份,那么写0到DAC相应的寄存器中,应该会输出1份电压,但是应该不会有这种情况吧
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-6-10 05:10

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表