OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7261|回复: 12

JTDO如何用作普通IO口,重定义以后还是控制不了

[复制链接]

9

主题

25

帖子

0

精华

初级会员

Rank: 2

积分
96
金钱
96
注册时间
2014-2-21
在线时间
12 小时
发表于 2021-2-2 11:19:55 | 显示全部楼层 |阅读模式
1金钱
如题,STM32F103RCT6    想把PB3和PB4用作普通IO,已经把管脚重定义了,还是不行,控制不了。例程如下
void SENSOR_Init(void)
{
        GPIO_InitTypeDef GPIO_InitStructure;

        RCC_APB2PeriphClockCmd( RCC_APB2Periph_AFIO,ENABLE);
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);         //打开GPIO时钟
        GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);

       
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
        GPIO_InitStructure.GPIO_Mode =  GPIO_Mode_Out_PP;                    //推挽输出
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7;   
   GPIO_Init(GPIOB, &GPIO_InitStructure);              //初始化传感器4051端口
        PBout(3)=0;
        delay_us(10);
        PBout(3)=0;
        delay_us(10);
}


正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

12

主题

3402

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8691
金钱
8691
注册时间
2020-5-11
在线时间
4183 小时
发表于 2021-2-2 11:37:00 | 显示全部楼层
专治疑难杂症
回复

使用道具 举报

7

主题

175

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1327
金钱
1327
注册时间
2019-7-11
在线时间
165 小时
发表于 2021-2-2 11:39:15 | 显示全部楼层
AFIO没打开
回复

使用道具 举报

18

主题

151

帖子

0

精华

高级会员

Rank: 4

积分
508
金钱
508
注册时间
2020-4-22
在线时间
241 小时
发表于 2021-2-2 11:50:52 | 显示全部楼层
这一段好像没啥问题
回复

使用道具 举报

9

主题

25

帖子

0

精华

初级会员

Rank: 2

积分
96
金钱
96
注册时间
2014-2-21
在线时间
12 小时
 楼主| 发表于 2021-2-2 12:21:37 | 显示全部楼层
LcwSwust 发表于 2021-2-2 11:37
https://blog.csdn.net/qinrenzhi/article/details/81875321
看是不是少了GPIO_Remap_SWJ_Disable

jtag关闭,SW使能啊,要不然没办法调试了
回复

使用道具 举报

9

主题

25

帖子

0

精华

初级会员

Rank: 2

积分
96
金钱
96
注册时间
2014-2-21
在线时间
12 小时
 楼主| 发表于 2021-2-2 12:22:03 | 显示全部楼层

打开AFIO时钟了啊
回复

使用道具 举报

34

主题

252

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
473
金钱
473
注册时间
2020-5-11
在线时间
217 小时
发表于 2021-2-2 14:11:34 | 显示全部楼层
本帖最后由 asshole 于 2021-2-2 14:13 编辑

        RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO ,  ENABLE);
        GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable , ENABLE);

我前几天也遇到了这个问题,写这两句就好了,我用的也是RCT6,但是我看你写的和我写的,没差别,唯一的差别是我先开时钟,后面才开了AFIO
回复

使用道具 举报

9

主题

25

帖子

0

精华

初级会员

Rank: 2

积分
96
金钱
96
注册时间
2014-2-21
在线时间
12 小时
 楼主| 发表于 2021-2-2 14:12:30 | 显示全部楼层
asshole 发表于 2021-2-2 14:11
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO ,  ENABLE);
        GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGD ...

在配置函数里已经写了啊,还是不行
回复

使用道具 举报

9

主题

25

帖子

0

精华

初级会员

Rank: 2

积分
96
金钱
96
注册时间
2014-2-21
在线时间
12 小时
 楼主| 发表于 2021-2-2 14:13:33 | 显示全部楼层
asshole 发表于 2021-2-2 14:11
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO ,  ENABLE);
        GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGD ...

对放在什么位置有要求吗
回复

使用道具 举报

34

主题

252

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
473
金钱
473
注册时间
2020-5-11
在线时间
217 小时
发表于 2021-2-2 14:14:41 | 显示全部楼层
kedangxing 发表于 2021-2-2 14:13
对放在什么位置有要求吗

void IO_Init(void)
{
        GPIO_InitTypeDef  GPIO_InitStructure;

        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOC, ENABLE);     //使能端口时钟

        RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO ,  ENABLE);
        GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable , ENABLE);  //JTAG-DP 禁用 + SW-DP 使能
        /*stm32有些管脚他上电默认的功能不是通用GPIO,比如JTAG与SWJ调试管脚,
        所以,如果你想使用这几个管脚作为通用IO的话,就必须将JTAG与SWJ功能关闭,顺便说一句不要忘记开启AFIO时钟。
        */

我前几句是这样子的,用起来没问题呀
回复

使用道具 举报

9

主题

25

帖子

0

精华

初级会员

Rank: 2

积分
96
金钱
96
注册时间
2014-2-21
在线时间
12 小时
 楼主| 发表于 2021-2-2 14:17:50 | 显示全部楼层
asshole 发表于 2021-2-2 14:14
void IO_Init(void)
{
        GPIO_InitTypeDef  GPIO_InitStructure;

完全一样啊,为啥不行。郁闷
回复

使用道具 举报

34

主题

252

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
473
金钱
473
注册时间
2020-5-11
在线时间
217 小时
发表于 2021-2-2 14:23:19 | 显示全部楼层
kedangxing 发表于 2021-2-2 14:17
完全一样啊,为啥不行。郁闷

那就检查一下别的吧
回复

使用道具 举报

7

主题

175

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1327
金钱
1327
注册时间
2019-7-11
在线时间
165 小时
发表于 2021-2-2 16:17:56 | 显示全部楼层

不好意思 没仔细看 单看配置这写的没啥问题 只是不明白最后输出低那样写 是有什么奥妙吗
世界和平
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-29 13:21

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表