hai325-289934 发表于 2017-8-21 17:07:43

STM32 的PB0-15接收并行16位AD输出出现错误

STM32 PB0-15脚接收16位AD并行输出,PB3和PB4是默认为JTAG管脚            RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB| RCC_APB2Periph_AFIO,ENABLE);
               GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE);
                GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0| GPIO_Pin_1 | GPIO_Pin_2| GPIO_Pin_3 | GPIO_Pin_4|
                GPIO_Pin_5 | GPIO_Pin_6| GPIO_Pin_7 | GPIO_Pin_8| GPIO_Pin_9 | GPIO_Pin_10| GPIO_Pin_11| GPIO_Pin_12| GPIO_Pin_13| GPIO_Pin_14| GPIO_Pin_15;
                GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
                GPIO_Init(GPIOB, &GPIO_InitStructure);



             调节输入电压时就会周期性的出现跳变,
            怀疑是PB3和PB4复用没成功,但是如果设置PB3和PB4输出高低电平时又是正确的,大家帮忙看看把PB3h和PB4配置成普通IO输入脚,上面的配置是否正确?


hai325-289934 发表于 2017-8-21 17:10:49

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB| RCC_APB2Periph_AFIO,ENABLE);
               GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE);
                GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);

而且这条命令有和没有,得到得结果是一样的,所以怀疑是PB3和PB4没有配置成普通IO管脚

努力的人 发表于 2017-8-21 21:04:27

做不了16路AD并行输出吧,想要并行同时可以ADC1,ADC2,ADC3并行,你看看野火的教程

hai325-289934 发表于 2017-8-21 21:05:29

不是16路AD,是接收外置16位AD的数据

hai325-289934 发表于 2017-8-24 10:46:04

有么有人遇到这种情况啊

hai325-289934 发表于 2017-8-25 10:16:05


有么有人遇到这种情况啊:'(

hai325-289934 发表于 2017-8-31 13:53:14

:(:(:(

幸福好嘞 发表于 2017-9-1 12:46:27

PB2是不是也要注意一下,示波器看波形是正常的么,实在不行就只能算法进行处理了
页: [1]
查看完整版本: STM32 的PB0-15接收并行16位AD输出出现错误