头像-86239

ever since

  • 上海市上海市
  • 单片机 嵌入式
  • 消费电子

个人成就

获得 0 次赞

帮助过0人

STM32L152 DAC输出摆幅

问题:                           STM32L152RC 在使用DAC时,最低电压总是到不了0V ,刚开始以为是自己板子问题,后来用discovery板子还是到不了0V。                比如我用是这个语句过后         DAC_SetChannel1Data(DAC_Align_12b_R,2);         输出为50mV,而且只有在DAC设定值大于某个值的时候,DAC的输出才随着DAC 寄存器的值增加而增加。 开发环境:STM32CUBE + KEIL + STM32L152RC discovery 请问板上的大神们有没有遇到这样的问题,烦请赐教,谢谢! 配置过程:void DAC_Config(void) {   /* Enable GPIOA clock */   RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);   /* Configure PA.04 (DAC_OUT1) in analog mode -------------------------*/   GPIO_InitStructure.GPIO_Mode  = GPIO_Mode_AN;   GPIO_InitStructure.GPIO_PuPd  = GPIO_PuPd_NOPULL;   GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;   GPIO_Init(GPIOA, &GPIO_InitStructure);   /* Enable DAC clock */   RCC_APB1PeriphClockCmd(RCC_APB1Periph_DAC, ENABLE);   /* DAC channel1 Configuration */   DAC_InitStructure.DAC_Trigger = DAC_Trigger_None;   DAC_InitStructure.DAC_WaveGeneration = DAC_WaveGeneration_None;   DAC_InitStructure.DAC_OutputBuffer = DAC_OutputBuffer_Enable;   /* DAC Channel1 Init */   DAC_Init(DAC_Channel_1, &DAC_InitStructure);   /* Enable DAC Channel1 */   DAC_Cmd(DAC_Channel_1, ENABLE); } 配置好过后调用下面语句设置dac值:         DAC_SetChannel1Data(DAC_Align_12b_R,2);