OpenEdv-开源电子网

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

亲,今天我在写个程序中,谢了一条语句: DAC->DHR12R1里写入和DAC->DOR1写如时,得到的效果一样,为什么啊,原子哥,能给解释一下吗?

[复制链接]

16

主题

70

帖子

0

精华

初级会员

Rank: 2

积分
154
金钱
154
注册时间
2013-9-23
在线时间
0 小时
发表于 2013-10-28 09:52:22 | 显示全部楼层 |阅读模式

void Dac1_Set_Vol(u16 vol){
 float temp;
 temp=vol/1000;
 temp=temp*(4096/3.3);
 DAC->DHR12R1=temp;
// DAC->DOR1=temp;

}

我自信,我努力,我成功
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

38

主题

2061

帖子

6

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3273
金钱
3273
注册时间
2012-1-16
在线时间
37 小时
发表于 2013-10-28 12:53:24 | 显示全部楼层
DHR12R1会自动传入DOR1,所以设置效果一样
站在巨人的肩膀上不断的前进。。。
回复 支持 反对

使用道具 举报

16

主题

70

帖子

0

精华

初级会员

Rank: 2

积分
154
金钱
154
注册时间
2013-9-23
在线时间
0 小时
 楼主| 发表于 2013-10-28 15:50:51 | 显示全部楼层
回复【2楼】xiaoyan:
---------------------------------
这个明白,我的疑问,他们2个为什么不能等同,或者说什么时候可以取代,什么时候不能,或者干脆说不能取代,有没有专业点的理论支持呢?
我自信,我努力,我成功
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-10-28 18:41:50 | 显示全部楼层
回复【3楼】一通无阻:
---------------------------------
看<stm32 参考手册>DAC章节,对这两个寄存器的描述.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

16

主题

70

帖子

0

精华

初级会员

Rank: 2

积分
154
金钱
154
注册时间
2013-9-23
在线时间
0 小时
 楼主| 发表于 2013-10-28 20:30:53 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
谢了,原子哥,可能是自己太钻牛角尖了,其实自己原来还是很明白的。嘻嘻
我自信,我努力,我成功
回复 支持 反对

使用道具 举报

2

主题

11

帖子

0

精华

初级会员

Rank: 2

积分
53
金钱
53
注册时间
2015-10-8
在线时间
5 小时
发表于 2018-8-3 15:12:00 | 显示全部楼层
正点原子 发表于 2013-10-28 18:41
回复【3楼】一通无阻:
---------------------------------
看&lt;stm32&nbsp;参考手册&gt;DAC章节,对这两个寄 ...

原子哥你好,我用DMA搬用DAC数据怎么不行啊?

void DAC_DMA1_Stream5_Config(void)
{
        DMA_InitTypeDef DMA_InitStructure;

        RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_DMA1, ENABLE);       

           /* DMA1_Stream5 channel7 configuration **************************************/     
        DMA_DeInit(DMA1_Stream5);
        while (DMA_GetCmdStatus(DMA1_Stream5) != DISABLE);
       
        DMA_InitStructure.DMA_Channel = DMA_Channel_7;  
        DMA_InitStructure.DMA_PeripheralBaseAddr = (u32)&DAC->DHR12R1;
        DMA_InitStructure.DMA_Memory0BaseAddr = (u32)(&ADC_ConvertorValue[ADC_BusVoltage]);
        DMA_InitStructure.DMA_BufferSize =1;
        DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_Word;
        DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_Word;
        DMA_InitStructure.DMA_DIR = DMA_DIR_MemoryToPeripheral;
        DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable;
        DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Disable;
        DMA_InitStructure.DMA_Mode = DMA_Mode_Circular;
        DMA_InitStructure.DMA_Priority = DMA_Priority_High;
        DMA_InitStructure.DMA_FIFOMode = DMA_FIFOMode_Disable;         
        DMA_InitStructure.DMA_FIFOThreshold = DMA_FIFOThreshold_Full;
        DMA_InitStructure.DMA_MemoryBurst = DMA_MemoryBurst_Single;
        DMA_InitStructure.DMA_PeripheralBurst = DMA_PeripheralBurst_Single;
        DMA_Init(DMA1_Stream5, &DMA_InitStructure);   

  /* Enable DMA1_Stream5 */
  DAC_Cmd(DAC_Channel_1, ENABLE);
  DAC_DMACmd(DAC_Channel_1, ENABLE);
        DMA_Cmd(DMA1_Stream5, ENABLE);
       
  
  /* Enable DMA for DAC Channel1 */
        //DAC_DMACmd(DAC_Channel_1, ENABLE);
//        DAC_SoftwareTriggerCmd(DAC_Channel_1, ENABLE);
}
回复 支持 反对

使用道具 举报

2

主题

11

帖子

0

精华

初级会员

Rank: 2

积分
53
金钱
53
注册时间
2015-10-8
在线时间
5 小时
发表于 2018-8-3 15:12:32 | 显示全部楼层
楼主还在吗,麻烦看看我遇到的问题
回复 支持 反对

使用道具 举报

9

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
124
金钱
124
注册时间
2019-3-24
在线时间
37 小时
发表于 2020-7-16 13:09:28 | 显示全部楼层
正点原子 发表于 2013-10-28 18:41
回复【3楼】一通无阻:
---------------------------------
看&lt;stm32&nbsp;参考手册&gt;DAC章节,对这两个寄 ...

原子哥,我想问一下能不能读取 dac寄存器里的数据?例如
if(DAC->DHR12R1==0)
        {
          。。。。。。//数据处理
        }
以次来做判断?
或者读取当前da的输出值?
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-29 23:01

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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