542|11

8

帖子

0

TA的资源

一粒金砂(中级)

关于GD32F103RCT6 GPIO输出输入 输出最大速度设置不同出现BUG的问题 [复制链接]

 
本帖最后由 夕口山关 于 2024-5-21 15:04 编辑

测试的输出IO口有 PA4  PA5 PA6  PA7 PC4 PC5 PB0 PB1 PB2 PB10 PB11 PB12 PB13 PB14

输出IO口 全部设置初始低电平 推挽输出 下拉模式 输出最大速度作为观测变量测试的

输入IO口有 PA12 PA11 PA10 PA9 PA8 PC9 PC8 PC7

输入IO口全部设置 下拉模式

低速模式 输出口输出经过一个1k电阻到另一个输入口全部正常通过 输入高电平能接收到高电平

中速模式  PC4 PC5输出高电平 PA10没获取到高电平

高速模式 PB2 PB10输出高电平 PA9 PB11 PB12输出高电平 PA8

使用的是STM32CubeMx工具直接生成代码

有没有人知道为什么会出现这个BUG

此帖出自GD32 MCU论坛

最新回复

1K电阻是模拟线材的阻抗吗?   详情 回复 发表于 2024-5-22 11:12

回复
举报

8

帖子

0

TA的资源

一粒金砂(中级)

这个是描述的电路图 2个IO一个输出一个输入 中间加个1k电阻

微信图片编辑_20240521150322.jpg

 

此帖出自GD32 MCU论坛

回复

6398

帖子

2

TA的资源

版主

如果把1K电阻去了呢

此帖出自GD32 MCU论坛

点评

这是用到的部分代码 for(i=0; i<ucSetWireNum; i++){ HAL_GPIO_WritePin(gpioOutPorts, gpioOutPins, GPIO_PIN_SET); HAL_Delay(100); if(HAL_GPIO_ReadPin(gpioInPorts, gpioInPins) == GPIO_PIN_SET  详情 回复 发表于 2024-5-21 15:17
不知道 没试过 不过1k电阻3.3v应该够吧 我并不是全部输出高电平  然后另一边再去ReadPin的 而是输出端第一个输出一个高电平 输入端读取电平 然后输出端第一个再输出低电平 再输出端第二个输出一个高  详情 回复 发表于 2024-5-21 15:15

回复

8

帖子

0

TA的资源

一粒金砂(中级)

wangerxian 发表于 2024-5-21 15:11 如果把1K电阻去了呢

不知道 没试过 不过1k电阻3.3v应该够吧 我并不是全部输出高电平  然后另一边再去ReadPin的

而是输出端第一个输出一个高电平 输入端读取电平 然后输出端第一个再输出低电平

再输出端第二个输出一个高电平 输入端读取电平 然后输出端第二个再输出低电平

再输出端第三个输出一个高电平 输入端读取电平 然后输出端第三个再输出低电平

以此类推

应该不会出现电源不够用的情况

此帖出自GD32 MCU论坛

点评

那你设置输出端为上拉呢。话说你这是要做什么?  详情 回复 发表于 2024-5-21 16:53

回复

8

帖子

0

TA的资源

一粒金砂(中级)

wangerxian 发表于 2024-5-21 15:11 如果把1K电阻去了呢

这是用到的部分代码

for(i=0; i<ucSetWireNum; i++){

HAL_GPIO_WritePin(gpioOutPorts[i], gpioOutPins[i], GPIO_PIN_SET);

HAL_Delay(100);

if(HAL_GPIO_ReadPin(gpioInPorts[i], gpioInPins[i]) == GPIO_PIN_SET){

printf("\n输出%d和%d导通!", i, i);

}

HAL_GPIO_WritePin(gpioOutPorts[i], gpioOutPins[i], GPIO_PIN_RESET);

}

此帖出自GD32 MCU论坛

回复

6398

帖子

2

TA的资源

版主

夕口山关 发表于 2024-5-21 15:15 不知道 没试过 不过1k电阻3.3v应该够吧 我并不是全部输出高电平  然后另一边再去ReadPin的 而是 ...

那你设置输出端为上拉呢。话说你这是要做什么?

此帖出自GD32 MCU论坛

点评

我用低速模式能实现我的功能 我是想搞明白 为什么中高速模式 部分io会出现问题 是芯片问题还是什么其他问题  详情 回复 发表于 2024-5-21 17:08
测试线材两端是否导通  详情 回复 发表于 2024-5-21 17:05

回复

8

帖子

0

TA的资源

一粒金砂(中级)

wangerxian 发表于 2024-5-21 16:53 那你设置输出端为上拉呢。话说你这是要做什么?

测试线材两端是否导通

此帖出自GD32 MCU论坛

点评

1K电阻是模拟线材的阻抗吗?  详情 回复 发表于 2024-5-22 11:12

回复

8

帖子

0

TA的资源

一粒金砂(中级)

wangerxian 发表于 2024-5-21 16:53 那你设置输出端为上拉呢。话说你这是要做什么?

我用低速模式能实现我的功能

我是想搞明白 为什么中高速模式 部分io会出现问题

是芯片问题还是什么其他问题

此帖出自GD32 MCU论坛

点评

有可能不同速度内部设置有所不同。  详情 回复 发表于 2024-5-22 11:11

回复

6398

帖子

2

TA的资源

版主

夕口山关 发表于 2024-5-21 17:08 我用低速模式能实现我的功能 我是想搞明白 为什么中高速模式 部分io会出现问题 是芯片问题还是什么 ...

有可能不同速度内部设置有所不同。

此帖出自GD32 MCU论坛

点评

我的描述中 中速模式  PC4 PC5输出高电平 PA10没获取到高电平 高速模式 PB2 PB10输出高电平 PA9 PB11 PB12输出高电平 PA8 PC4 PC5输出中速模式不正常 PA10是输入脚 没有做改变 应该没问题 PB2 P  详情 回复 发表于 2024-5-22 11:42

回复

6398

帖子

2

TA的资源

版主

夕口山关 发表于 2024-5-21 17:05 测试线材两端是否导通

1K电阻是模拟线材的阻抗吗?

此帖出自GD32 MCU论坛

点评

1k电阻是用来限流的  详情 回复 发表于 2024-5-22 11:40

回复

8

帖子

0

TA的资源

一粒金砂(中级)

wangerxian 发表于 2024-5-22 11:12 1K电阻是模拟线材的阻抗吗?

1k电阻是用来限流的

此帖出自GD32 MCU论坛

回复

8

帖子

0

TA的资源

一粒金砂(中级)

wangerxian 发表于 2024-5-22 11:11 有可能不同速度内部设置有所不同。

我的描述中

中速模式  PC4 PC5输出高电平 PA10没获取到高电平

高速模式 PB2 PB10输出高电平 PA9 PB11 PB12输出高电平 PA8

PC4 PC5输出中速模式不正常

PA10是输入脚 没有做改变 应该没问题

PB2 PB10 PB11 PB12输出高速模式不正常

PA9和PA8是输入脚 没有做改变应该没问题

 

此帖出自GD32 MCU论坛

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表