STM8L的DAC能跑多快(一)

最近做了一个试验。这次了lstm8l152c8t6的dac到底能跑多快?

下面是dac带buff的代码。带buff可以提高io的驱动能力。感觉可以提高10-20%的峰值输出电压。但是buff最大,最小输出电压无法做到轨到轨(电源和地)。IAR调试状态,我用示波器实测为117.6khz。STM8L的DAC能跑多快(一)_第1张图片STM8L的DAC能跑多快(一)_第2张图片

void CLK_set(void)
{   
  CLK_DeInit();
  CLK_HSEConfig(CLK_HSE_OFF); 
  //启动LSI时钟源
  CLK_LSICmd(ENABLE); 
  //使能时钟切换
  CLK_SYSCLKSourceSwitchCmd(ENABLE);
  //选择内部低速时钟作为时钟源
  CLK_SYSCLKSourceConfig(CLK_SYSCLKSource_HSI);
  //设置系统时钟分频
  CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_1);
  //等待时钟稳定
  while (CLK_GetSYSCLKSource() != CLK_SYSCLKSource_HSI)
  {}
}

void DAC_ConfigBuff(void)

{  
  CLK_PeripheralClockConfig(CLK_Peripheral_DAC, ENABLE);  
  DAC_DeInit();
  DAC_Cmd(DAC_Channel_1, ENABLE);
  DAC_SetChannel1Data(DAC_Align_12b_R,2048);  
}

void main( void )
{
  CLK_set();//内部时钟,全速
  DAC_ConfigBuff(); 
  while(1)
  {           
      DAC_SetChannel1Data(DAC_Align_12b_R, 4095);         
      DAC_SoftwareTriggerCmd(DAC_Channel_1, ENABLE);
      DAC_SetChannel1Data(DAC_Align_12b_R,0);         
      DAC_SoftwareTriggerCmd(DAC_Channel_1, ENABLE);
       
  }

你可能感兴趣的:(嵌入式,dac)