看了探索者开发板上的DS18B20例程,试着将程序移植到自己的 板子,一直提示检测失败,求各位大神帮忙看看

2019-07-20 09:27发布

原子的例程 数据管脚接到PG9上,我自个的板子是PA15 程序烧写进去后串口提示一直自检出错,移植的话就改了以下几个地方,其他的没修改,这样改是否有错,DS18B20.h文件
//IO·方向设置
#define DS18B20_IO_IN()  {GPIOA->MODER&=~(3<<(15*2));GPIOG->MODER|=0<<15*2;}        //PA15输入模式
#define DS18B20_IO_OUT() {GPIOA->MODER&=~(3<<(15*2));GPIOG->MODER|=1<<15*2;}         //PA15输出模式


//IO操作函数                                                                                  
#define        DS18B20_DQ_OUT PAout(15) //数据端口PA15
#define        DS18B20_DQ_IN  PAin(15)  //数据端口PA15

DS18B20.C文件 在18B20初始化函数修改了管脚接口 如下所示
u8 DS18B20_Init(void)
{
        GPIO_InitTypeDef  GPIO_InitStructure;

  RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE);

  //GPIOA15
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_15;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;//50MHz
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//
  GPIO_Init(GPIOA, &GPIO_InitStructure);//       
        DS18B20_Rst();
        return DS18B20_Check();
}  

求各位坛友指点迷津!!!


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。