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

ST32F103 的DAC问题

[复制链接]
tangzhidao 提问时间:2015-6-24 11:46 /
我在用stm32f103的时侯需要用两的DAC, 写了如下的config程序,   本意是让 ADC1 , ADC2 都先归结为0电位,测试后发现,PA4 (ADC0)没问题,但 PA5 (ADC1) 量得却有 0.4V 的电压,请问大师们,程序有 bug吗?

void ConfigDAC(void)
{
  
{
  GPIO_InitTypeDef GPIO_InitStructure;
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
  GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_4;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
               
  GPIO_Init(GPIOA, &GPIO_InitStructure);
  GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_5;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_Init(GPIOA, &GPIO_InitStructure);
               
                GPIO_SetBits(GPIOA, GPIO_Pin_4);
                GPIO_SetBits(GPIOA, GPIO_Pin_5);
}

{
  DAC_InitTypeDef DAC_InitStructure;
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_DAC, ENABLE);
  DAC_InitStructure.DAC_Trigger = DAC_Trigger_None;
  DAC_InitStructure.DAC_WaveGeneration = DAC_WaveGeneration_None;
  DAC_InitStructure.DAC_OutputBuffer = DAC_OutputBuffer_Disable;
                DAC_InitStructure.DAC_LFSRUnmask_TriangleAmplitude = DAC_TriangleAmplitude_4095;
  DAC_Init(DAC_Channel_1, &DAC_InitStructure);
  DAC_Init(DAC_Channel_2, &DAC_InitStructure);
                DAC_Cmd(DAC_Channel_1, ENABLE);
                DAC_SetChannel1Data(DAC_Align_12b_R, 0);
                DAC_Cmd(DAC_Channel_2, ENABLE);
                DAC_SetChannel2Data(DAC_Align_12b_R, 0);
        }
        
}  

搜索
收藏 评论5 发布时间:2015-6-24 11:46

举报

5个回答
Mandelbrot_Set 回答时间:2015-6-24 15:10:48
没明白说的是ADC还是DAC...
黑溱郎 回答时间:2015-6-24 15:57:35
LS说的是,楼主是作ADC还是DAC?还是帮楼主顶一下吧。
tangzhidao 回答时间:2015-6-25 14:28:02
大师们,我说的是  DAC!
tangzhidao 回答时间:2015-6-25 14:29:02
我在用stm32f103的时侯需要用两的DAC, 写了如下的config程序,   本意是让 DAC1 , DAC2 都先归结为0电位,测试后发现,PA4 (DAC0)没问题,但 PA5 (DAC1) 量得却有 0.4V 的电压,请问大师们,程序有 bug吗?

tangzhidao 回答时间:2015-6-25 14:31:18
void ConfigDAC(void)
{

  
        {
                GPIO_InitTypeDef GPIO_InitStructure;

                RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);

                GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_4;
                GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
                GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
               
                GPIO_Init(GPIOA, &GPIO_InitStructure);

                GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_5;
                GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
                GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
                GPIO_Init(GPIOA, &GPIO_InitStructure);

               
                GPIO_SetBits(GPIOA, GPIO_Pin_4);
                GPIO_SetBits(GPIOA, GPIO_Pin_5);
        }


        {
                DAC_InitTypeDef DAC_InitStructure;

                RCC_APB1PeriphClockCmd(RCC_APB1Periph_DAC, ENABLE);
                DAC_InitStructure.DAC_Trigger = DAC_Trigger_None;
                DAC_InitStructure.DAC_WaveGeneration = DAC_WaveGeneration_None;
                DAC_InitStructure.DAC_OutputBuffer = DAC_OutputBuffer_Disable;
                DAC_InitStructure.DAC_LFSRUnmask_TriangleAmplitude = DAC_TriangleAmplitude_4095;

                DAC_Init(DAC_Channel_1, &DAC_InitStructure);
                DAC_Init(DAC_Channel_2, &DAC_InitStructure);

                DAC_Cmd(DAC_Channel_1, ENABLE);
                DAC_SetChannel1Data(DAC_Align_12b_R, 0);
                DAC_Cmd(DAC_Channel_2, ENABLE);
                DAC_SetChannel2Data(DAC_Align_12b_R, 0);
        }
        

}  

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版