oywwen 发表于 2010-5-27 19:21:52

关于STM32的DAC功能请教

请问STM32F103VET6有没有DAC的功能啊?如果有,为什么会没有DAC输出啊?
这事搞了我两天了,自已实在找不出下面哪里错了,怎么会没有DA输出呢?
DAC输出引脚为PA4(DAC_OUT1)和PA5(DAC_OUT2),我设定的是由软件触发DA输出,基准为电源电压3.3V,下面是DAC输出的程序,还请哪位高人能帮忙看下问题出在哪里?谢谢了!!!
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;          //
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;    //
GPIO_Init(GPIOA, &GPIO_InitStructure);      //A端口
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;          //
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_OD;    //
GPIO_Init(GPIOA, &GPIO_InitStructure);      //A端口
DAC_DeInit();
DAC_Cmd(DAC_Channel_1,ENABLE); //
DAC_Cmd(DAC_Channel_2, ENABLE);
DAC_StructInit(&DAC_Struct);//将DAC_Struct的值设为默认
DAC_Struct.DAC_Trigger=DAC_Trigger_Software;//由软件触发
DAC_Struct.DAC_WaveGeneration=DAC_WaveGeneration_None;//关闭波形生成
DAC_Struct.DAC_LFSRUnmask_TriangleAmplitude=DAC_TriangleAmplitude_4095;
DAC_Struct.DAC_OutputBuffer=DAC_OutputBuffer_Enable;//使能DAC通道缓存   
DAC_Init(DAC_Channel_1,&DAC_Struct);
DAC_Init(DAC_Channel_2,&DAC_Struct);
    /* Enable DAC Channel1 */
DAC_Cmd(DAC_Channel_1, ENABLE);
/* Enable DAC Channel2 */
DAC_Cmd(DAC_Channel_2, ENABLE);

DAC_SetChannel1Data(DAC_Align_12b_R,0x7ff);//12位右对齐,输出一半的基准电压
DAC_SetChannel2Data(DAC_Align_12b_R,0x7ff);//输出一半的基准电压

DAC_DualSoftwareTriggerCmd(ENABLE);//使能软件触发,更新DAC的值

发表于 2010-5-28 09:00:54

RE:关于STM32的DAC功能请教

DAC_Cmd(DAC_Channel_1,ENABLE); //
DAC_Cmd(DAC_Channel_2, ENABLE);
应该先设置后激活,我认为是这个原因。

oywwen 发表于 2010-5-28 09:24:47

回复:关于STM32的DAC功能请教

我试过了先设置后激活,也不行,还试过在设置前后都激活一次,也不行
而且PA4和PA5,我设为输入浮空,模拟输入和复用开漏都试过了,还是不行
而且我还测量了 VREF+(输入正模拟参考电压),VSSA(输出负模拟参电压)都是对了.
 

oywwen 发表于 2010-5-28 17:33:29

回复:关于STM32的DAC功能请教

:L
结贴,我的DAC时钟没有打开,这种问题竟然害了我几天,我想跳楼了,谢谢各位了!

Chenzhe-330519 发表于 2011-11-25 15:09:52

回复:关于STM32的DAC功能请教

你好,我想请问下你的程序中DAC采集的电压值时保存在什么地方,怎么样才能实时动态显示电压,想赐教下,我的帖子,麻烦你看下,帮我下:P谢谢了哦。
下面是我帖子的链接
https://www.eefocus.com/bbs/article_244_189224.html

10192201 发表于 2012-10-2 14:56:56

回复:关于STM32的DAC功能请教

 您好,我想请问下,当你加入DAC使能之后,对于是先设置后激活DAC使能还是均可以没有先后顺序的问题又尝试过吗?谢谢,求交流
页: [1]
查看完整版本: 关于STM32的DAC功能请教