STM32 PA6引脚输出低电平不正常的问题

在STM32F103C8T6的项目中,PA6引脚输出低电平为2.1v而非0v。通过检查硬件和代码,发现初始化GPIOA引脚为GPIO_Pin_6时存在问题,而改为GPIO_Pin_All则正常。进一步排查发现SPI初始化函数中的SPI_CPOL和SPI_CPHA设置导致问题,注释相关语句后PA6引脚恢复正常。原因是PA6与SPI通信相关,未使用的SPI通信产生了冲突。
摘要由CSDN通过智能技术生成

使用环境(蓝色粗体字为特别注意内容)

1、软件环境:Keil uv5.15

2、硬件环境:STM32F103C8T6 最小系统

在一个项目中需要用到STM32 的PA6引脚,发现工作异常。由于是自己做的最小系统,所以检查了芯片引脚,并没有发现虚焊、或者跟其他引脚连在一起的情况,初步判断是单片机或者程序的问题,硬件电路应该没有问题,硬件电路如下所示。

 手工做的板子,电路还在调试,还没来得及清洁,所以有点脏。拿出示波器观察波形输出

从示波器可以看出,PA6引脚输出低电平无法到0v,而是2.1v左右。查看引脚初始化代码如下

void gpioInit()
{
	GPIO_InitTypeDef g;
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
	g.GPIO_Pin = GPIO_Pin_6;
	g.GPIO_Speed = GPIO_Speed_5
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值