STM32驱动数字电位器M62429出问题,求帮助

2019-12-20 21:38发布

程序如下:
  1. void VoiceSetValue(uint16_t Value)
  2. {
  3.         GPIO_InitTypeDef GPIO_InitStructure;
  4.         uint8_t i=0;
  5.         uint32_t j=0,VolDate=0x7D7;
  6.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD , ENABLE);
  7.         /* 设置音量引脚*/
  8.         GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_0|GPIO_Pin_1;  
  9.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_OD;
  10.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;   
  11.         GPIO_Init(GPIOD, &GPIO_InitStructure);

  12.         GPIO_WriteBit(GPIOD,GPIO_Pin_0,Bit_RESET);
  13.         GPIO_WriteBit(GPIOD,GPIO_Pin_1,Bit_SET);
  14.         for(i=0;i<11;i++){
  15.                 for(j=0;j<10000;j++);
  16.                 if((VolDate>>i)&0x01){
  17.                         GPIO_WriteBit(GPIOD,GPIO_Pin_1,Bit_SET);
  18.                 }else{
  19.                         GPIO_WriteBit(GPIOD,GPIO_Pin_1,Bit_RESET);
  20.                 }
  21.                 for(j=0;j<10000;j++);
  22.                 GPIO_WriteBit(GPIOD,GPIO_Pin_0,Bit_SET);//上升沿锁存数据
  23.                 for(j=0;j<10000;j++);
  24.                 if(i==10){
  25.                         GPIO_WriteBit(GPIOD,GPIO_Pin_1,Bit_SET);
  26.                 }else{
  27.                         GPIO_WriteBit(GPIOD,GPIO_Pin_1,Bit_RESET);
  28.                 }
  29.                 for(j=0;j<10000;j++);
  30.                 GPIO_WriteBit(GPIOD,GPIO_Pin_0,Bit_RESET);//下降沿锁存0
  31.                 for(j=0;j<10000;j++);
  32.         }
  33.         GPIO_WriteBit(GPIOD,GPIO_Pin_1,Bit_RESET);
  34. }
复制代码我用逻辑分析仪采集到的时序如下:
123.jpg (21.46 KB, 下载次数: 0) 下载附件 2013-1-21 15:16 上传

芯片没任何音量输出,不知道为什么,求解答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。