OpenEdv-开源电子网

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

GT9147复位,INT浮空输入还是输出有什么区别?手册上说的浮空输入代码里的是浮空输出

[复制链接]

18

主题

149

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2015-11-28
在线时间
208 小时
发表于 2016-4-23 16:49:20 | 显示全部楼层 |阅读模式
1金钱
[mw_shl_code=c,true]u8 GT9147_Init(void)
{
        u8 temp[5];
        GPIO_InitTypeDef  GPIO_InitStructure;       
       
  RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB|RCC_AHB1Periph_GPIOC, ENABLE);//使能GPIOB,C时钟

  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1 ;//PB1设置为上拉输入
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;//输入模式
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽输出
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_DOWN;//上拉
  GPIO_Init(GPIOB, &GPIO_InitStructure);//初始化
               
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;//PC13设置为推挽输出
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;//输出模式
        GPIO_Init(GPIOC, &GPIO_InitStructure);//初始化       
       
        CT_IIC_Init();              //初始化电容屏的I2C总线  
        GT_RST=0;                                //复位
        delay_ms(10);
        GT_RST=1;                                //释放复位                    
        delay_ms(10);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;//PB1设置为浮空输入
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;//输出模式
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
        GPIO_Init(GPIOB, &GPIO_InitStructure);//初始化       
        delay_ms(100);  
        GT9147_RD_Reg(GT_PID_REG,temp,4);//读取产品ID
        temp[4]=0;
        printf("CTP ID:%s\r\n",temp);        //打印ID
        if(strcmp((char*)temp,"9147")==0)//ID==9147
        {
                temp[0]=0X02;                       
                GT9147_WR_Reg(GT_CTRL_REG,temp,1);//软复位GT9147
                GT9147_RD_Reg(GT_CFGS_REG,temp,1);//读取GT_CFGS_REG寄存器
                if(temp[0]<0X60)//默认版本比较低,需要更新flash配置
                {
                        printf("Default Ver:%d\r\n",temp[0]);
                        GT9147_Send_Cfg(1);//更新并保存配置
                }
                delay_ms(10);
                temp[0]=0X00;         
                GT9147_WR_Reg(GT_CTRL_REG,temp,1);//结束复位   
                return 0;
        }
        return 1;
}[/mw_shl_code]

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;//PB1设置为浮空输入
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;//输出模式
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
GPIO_Init(GPIOB, &GPIO_InitStructure);//初始化       
delay_ms(100);
QQ截图20160423163350.jpg
也没看到后面有哪里操作INT  那么这个浮空输入和浮空输出有什么影响呢,引脚分别呈现什么状态呢?我以前的理解是不管是浮空输入还是浮空输出引脚都是高阻状态相当于什么都没接,但是这里浮空输出可以正常运行浮空输入就不行,所以这浮空输入和输出引脚呈现的状态还是不一样的吧?那是怎么样的呢?渴望大神赐教!

最佳答案

查看完整内容[请看2#楼]

看IO结构图, 上拉电阻和下拉电阻,其实与管脚的方向无关。 所以,也许注释应当这样说:使能上拉电阻,或者使能下拉电阻,或者浮空。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

58

主题

6294

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11546
金钱
11546
注册时间
2014-4-1
在线时间
1315 小时
发表于 2016-4-23 16:49:21 | 显示全部楼层


无标题.png


看IO结构图,
上拉电阻和下拉电阻,其实与管脚的方向无关。

所以,也许注释应当这样说:使能上拉电阻,或者使能下拉电阻,或者浮空。


回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2016-4-23 20:29:34 | 显示全部楼层
只有浮空输入,没有浮空输出。。。。
回复

使用道具 举报

5

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
176
金钱
176
注册时间
2016-4-13
在线时间
57 小时
发表于 2017-3-29 11:02:43 | 显示全部楼层
正点原子 发表于 2016-4-23 20:29
只有浮空输入,没有浮空输出。。。。

那原子哥,例程代码中这句是不是有误啊?
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;//输出模式
回复

使用道具 举报

0

主题

16

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2017-8-22
在线时间
5 小时
发表于 2017-8-23 21:05:06 来自手机 | 显示全部楼层
正点原子 发表于 2016-4-23 20:29
只有浮空输入,没有浮空输出。。。。

确也发现同样问题,有的例程,是浮空输出
回复

使用道具 举报

9

主题

40

帖子

0

精华

初级会员

Rank: 2

积分
70
金钱
70
注册时间
2018-11-11
在线时间
35 小时
发表于 2019-3-12 17:59:51 | 显示全部楼层
[ 本帖最后由 八蹄马 于 2019-3-12 18:04 编辑 ]\n\n正点原子 发表于 2016-4-23 20:29
只有浮空输入,没有浮空输出。。。。
原子哥,我也遇到这个问题,虽然2楼讲了差不多,但还是要问,既然没有浮空输出,那么这里这几句配置程序是不是有误或者说误导人呀!

解释文字说的是浮空输入,那么配置成输入有没有问题?为什么?

还有就是这里的INT只是配置而用吗?有没有用到真实的中断?

[mw_shl_code=c,true]u8 GT9147_Init(void)
{
        u8 temp[5];
        GPIO_InitTypeDef  GPIO_InitStructure;       
       
  RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB|RCC_AHB1Periph_GPIOC, ENABLE);//&Ecirc;&sup1;&Auml;&Uuml;GPIOB,C&Ecirc;±&Ouml;&Oacute;

  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1 ;//PB1&Eacute;è&Ouml;&Atilde;&Icirc;&ordf;&Eacute;&Iuml;&Agrave;&shy;&Ecirc;&auml;&Egrave;&euml;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;//&Ecirc;&auml;&Egrave;&euml;&Auml;&pound;&Ecirc;&frac12;
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//&Iacute;&AElig;&Iacute;ì&Ecirc;&auml;&sup3;&ouml;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//&Eacute;&Iuml;&Agrave;&shy;
  GPIO_Init(GPIOB, &GPIO_InitStructure);//&sup3;&otilde;&Ecirc;&frac14;&raquo;&macr;
               
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;//PC13&Eacute;è&Ouml;&Atilde;&Icirc;&ordf;&Iacute;&AElig;&Iacute;ì&Ecirc;&auml;&sup3;&ouml;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;//&Ecirc;&auml;&sup3;&ouml;&Auml;&pound;&Ecirc;&frac12;
        GPIO_Init(GPIOC, &GPIO_InitStructure);//&sup3;&otilde;&Ecirc;&frac14;&raquo;&macr;       
       
        CT_IIC_Init();              //&sup3;&otilde;&Ecirc;&frac14;&raquo;&macr;&micro;&ccedil;&Egrave;&Yacute;&AElig;&Aacute;&micro;&Auml;I2C×&Uuml;&Iuml;&szlig;  
        GT_RST=0;                                //&cedil;&acute;&Icirc;&raquo;
        delay_ms(10);
        GT_RST=1;                                //&Ecirc;&Iacute;·&Aring;&cedil;&acute;&Icirc;&raquo;                    
        delay_ms(10);
       
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;//PB1&Eacute;è&Ouml;&Atilde;&Icirc;&ordf;&cedil;&iexcl;&iquest;&Otilde;&Ecirc;&auml;&Egrave;&euml;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;//&Ecirc;&auml;&sup3;&ouml;&Auml;&pound;&Ecirc;&frac12;
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
        GPIO_Init(GPIOB, &GPIO_InitStructure);//&sup3;&otilde;&Ecirc;&frac14;&raquo;&macr;        [/mw_shl_code]
回复

使用道具 举报

9

主题

40

帖子

0

精华

初级会员

Rank: 2

积分
70
金钱
70
注册时间
2018-11-11
在线时间
35 小时
发表于 2019-3-12 19:21:57 | 显示全部楼层
楼主,为什么我的代码贴上去注释显示不出来,请问你的代码是怎么把中文注释也显示正确的?
回复

使用道具 举报

109

主题

5564

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
10572
金钱
10572
注册时间
2017-2-18
在线时间
1914 小时
发表于 2019-3-12 19:36:32 | 显示全部楼层
八蹄马 发表于 2019-3-12 17:59
[ 本帖最后由 八蹄马 于 2019-3-12 18:04 编辑 ]\n\n正点原子 发表于 2016-4-23 20:29
只有浮空输入,没有 ...

没有用到中断,用的轮询,中断有点问题
回复

使用道具 举报

18

主题

149

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2015-11-28
在线时间
208 小时
 楼主| 发表于 2019-3-13 11:00:41 | 显示全部楼层
八蹄马 发表于 2019-3-12 19:21
楼主,为什么我的代码贴上去注释显示不出来,请问你的代码是怎么把中文注释也显示正确的?

这个我也搞不懂呢。我贴上去就正常的啊。在你电脑上没有贴上去的时候正常吗?
回复

使用道具 举报

9

主题

40

帖子

0

精华

初级会员

Rank: 2

积分
70
金钱
70
注册时间
2018-11-11
在线时间
35 小时
发表于 2019-3-13 11:48:36 | 显示全部楼层
yconnor 发表于 2019-3-13 11:00
这个我也搞不懂呢。我贴上去就正常的啊。在你电脑上没有贴上去的时候正常吗?

是呀,应该就是复制粘贴吧,额,为什么就我不行?
回复

使用道具 举报

18

主题

149

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2015-11-28
在线时间
208 小时
 楼主| 发表于 2019-3-13 13:34:02 | 显示全部楼层
八蹄马 发表于 2019-3-13 11:48
是呀,应该就是复制粘贴吧,额,为什么就我不行?

你是设置的GB2312吗?如果不是的话复制过来应该也不是这个编码模式的应该就不行。
回复

使用道具 举报

9

主题

40

帖子

0

精华

初级会员

Rank: 2

积分
70
金钱
70
注册时间
2018-11-11
在线时间
35 小时
发表于 2019-3-13 13:55:40 | 显示全部楼层
本帖最后由 八蹄马 于 2019-3-13 14:05 编辑
yconnor 发表于 2019-3-13 13:34
你是设置的GB2312吗?如果不是的话复制过来应该也不是这个编码模式的应该就不行。

哪里设置GB2312?我的在keil里面显示是正常的汉字,但是一复制到别的地方就汉字部分乱码
回复

使用道具 举报

9

主题

40

帖子

0

精华

初级会员

Rank: 2

积分
70
金钱
70
注册时间
2018-11-11
在线时间
35 小时
发表于 2019-3-13 15:52:04 | 显示全部楼层
八蹄马 发表于 2019-3-13 13:55
哪里设置GB2312?我的在keil里面显示是正常的汉字,但是一复制到别的地方就汉字部分乱码

噢,没事了,我知道了,在keil--->edit--->configuration--->encoding选项里
回复

使用道具 举报

18

主题

149

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2015-11-28
在线时间
208 小时
 楼主| 发表于 2019-3-13 20:22:03 | 显示全部楼层
八蹄马 发表于 2019-3-13 15:52
噢,没事了,我知道了,在keil--->edit--->configuration--->encoding选项里

你是设置的GB2312吗?
回复

使用道具 举报

9

主题

40

帖子

0

精华

初级会员

Rank: 2

积分
70
金钱
70
注册时间
2018-11-11
在线时间
35 小时
发表于 2019-3-13 21:11:40 | 显示全部楼层
yconnor 发表于 2019-3-13 20:22
你是设置的GB2312吗?

本来不是,现在才懂在哪里只是,谢谢啦,我知道了,设置成chinese GB2312就行了
QQ截图20190313210843.png
回复

使用道具 举报

18

主题

149

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2015-11-28
在线时间
208 小时
 楼主| 发表于 2019-3-14 20:47:12 | 显示全部楼层
八蹄马 发表于 2019-3-13 21:11
本来不是,现在才懂在哪里只是,谢谢啦,我知道了,设置成chinese GB2312就行了

有的时候你不选这个在mdk里也是可以正常显示中文的。但有些时候就不行。必须要选这个才能显示中文。具体的我也搞不懂。
回复

使用道具 举报

9

主题

40

帖子

0

精华

初级会员

Rank: 2

积分
70
金钱
70
注册时间
2018-11-11
在线时间
35 小时
发表于 2019-3-14 22:14:28 | 显示全部楼层
yconnor 发表于 2019-3-14 20:47
有的时候你不选这个在mdk里也是可以正常显示中文的。但有些时候就不行。必须要选这个才能显示中文。具体 ...

QQ截图20190314221048.png
可以说一下你的keil编译器里con'figuration的encoding那里选的是啥吗,还有就是 colors and fonts那里你的字体选项是啥吗?我弄乱了,忘了原来的是啥?
回复

使用道具 举报

18

主题

149

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2015-11-28
在线时间
208 小时
 楼主| 发表于 2019-3-20 20:56:41 | 显示全部楼层
八蹄马 发表于 2019-3-14 22:14
可以说一下你的keil编译器里con'figuration的encoding那里选的是啥吗,还有就是 colors and fonts那里 ...

Courier New
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-10 15:07

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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