PA5口用DAC输出,和例程一模一样,只是把通道改了,为什么输出值最小是0.66v,无法到零

2019-07-20 11:28发布


void Dac1_Init(void)
{
  
GPIO_InitTypeDef GPIO_InitStructure;
DAC_InitTypeDef DAC_InitType;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE );   
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_DAC, ENABLE );   
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4|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_InitType.DAC_Trigger=DAC_Trigger_None;
DAC_InitType.DAC_WaveGeneration=DAC_WaveGeneration_None;
DAC_InitType.DAC_LFSRUnmask_TriangleAmplitude=DAC_LFSRUnmask_Bit0;
DAC_InitType.DAC_OutputBuffer=DAC_OutputBuffer_Disable ;
  DAC_Init(DAC_Channel_1,&DAC_InitType);  
DAC_Init(DAC_Channel_2,&DAC_InitType);

DAC_Cmd(DAC_Channel_1, ENABLE);  
DAC_Cmd(DAC_Channel_2, ENABLE);  
  
  DAC_SetChannel1Data(DAC_Align_12b_R, 0);  
DAC_SetChannel2Data(DAC_Align_12b_R, 0);
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。