5928|16

13

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

LM3S8962 GPIO 带弱上拉的开漏 [复制链接]

这几天在看LM3S8962 的GPIO 方向和模式的时候 遇到一个问题

在配置GPIO 为输入做按键检测的时候 为什么只有在 配置为带弱上拉的推挽下 才能准确的检测按键

而配置为带弱上拉的开漏输出地时候 管脚输出一直为0呢?

最新回复

推挽和开漏指的是输出,直接设置为上拉输入就可以。  详情 回复 发表于 2011-9-24 22:23
 
点赞 关注

回复
举报

2751

帖子

0

TA的资源

裸片初长成(初级)

沙发
 

原帖由 new_redstar 于 2011-9-18 21:31 发表 这几天在看LM3S8962 的GPIO 方向和模式的时候 遇到一个问题 在配置GPIO 为输入做按键检测的时候 为什么只有在 配置为带弱上拉的推挽下 才能准确的检测按键而配置为带弱上拉的开漏输出地时候 管脚输出一直为0呢?

 

检测按键应该配置成输入模式吧,选择带上拉输入。

 
 

回复

1412

帖子

15

TA的资源

版主

板凳
 
管脚输出一直为0呢?


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~````

开漏外面最好接个上拉电阻
 
个人签名https://bbs.eeworld.com.cn/thread-471646-1-1.html
欢迎加入我的团队
 
 

回复

13

帖子

0

TA的资源

一粒金砂(中级)

4
 

回复 沙发 David_Lee 的帖子

我设置 的就是带弱上拉得开漏输入  但测得输出一直是0 (如配成 带上拉推挽输入就没问题)
程序:
int
main(void)
{
       
       
    // Set the clocking to run directly from the crystal.
    //
    SysCtlClockSet(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC | SYSCTL_OSC_MAIN |SYSCTL_XTAL_8MHZ);
        //
    //Enable GPIO CLOCK
        //
        SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF);
        SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOE);
        //
        //Set GPIO LED GPIO
        //
        GPIODirModeSet(GPIO_PORTF_BASE,GPIO_PIN_1,GPIO_DIR_MODE_OUT);
        GPIOPadConfigSet(GPIO_PORTF_BASE,GPIO_PIN_1,GPIO_STRENGTH_8MA,GPIO_PIN_TYPE_STD);
        //
        //Set Key GPIO
        //
        GPIODirModeSet(GPIO_PORTE_BASE,GPIO_PIN_0,GPIO_DIR_MODE_IN);
        GPIOPadConfigSet(GPIO_PORTE_BASE,GPIO_PIN_0,GPIO_STRENGTH_2MA,GPIO_PIN_TYPE_OD_WPD);
          while(1)
        {

         if(GPIOPinRead(GPIO_PORTE_BASE,GPIO_PIN_0)==0x00)        //按键按下
          {
          GPIOPinWrite(GPIO_PORTF_BASE,GPIO_PIN_1,GPIO_PIN_1);
          SysCtlDelay(150 * (6000000 / 3000));           //DELAY 150MS
          GPIOPinWrite(GPIO_PORTF_BASE,GPIO_PIN_1,~GPIO_PIN_1);
          SysCtlDelay(150* (6000000 / 3000));          //DELAY 150MS
          }
        }
}

大虾们 帮忙看看 难道是我 配置错了???
 
 
 

回复

13

帖子

0

TA的资源

一粒金砂(中级)

5
 

回复 板凳 youki12345 的帖子

我设置为开漏输入 管脚上外接了上拉电阻 输出仍然是0
 
 
 

回复

1803

帖子

0

TA的资源

五彩晶圆(高级)

6
 

回复 5楼 new_redstar 的帖子

为什么要设置为开漏呢,开漏和推挽区别在哪里?
 
 
 

回复

2751

帖子

0

TA的资源

裸片初长成(初级)

7
 

原帖由 Study_Stellaris 于 2011-9-19 22:10 发表 为什么要设置为开漏呢,开漏和推挽区别在哪里?

 

一般来说,推挽驱动能力比较大,开漏用于一些需要线与逻辑的场合那些。

但这两个都是针对输出来说的,楼主检测的是按键,应带是针对输入的模式来配置。

 
 
 

回复

13

帖子

0

TA的资源

一粒金砂(中级)

8
 

原帖由 David_Lee 于 2011-9-20 10:53 发表   一般来说,推挽驱动能力比较大,开漏用于一些需要线与逻辑的场合那些。但这两个都是针对输出来说的,楼主检测的是按键,应带是针对输入的模式来配置。

 也就说LM3S8962 配置输入模式的时候 不能是开漏模式

但是开漏模式和推挽模式电路等效的区别在于推挽多了上拉晶体管 在同时配置为输入模式下差别怎么就这么大 让人难以理解

难道是 配置为推挽的时候 默认管脚初始化为高电平?而配置为开漏的时候默认初始始电平为低电平?

如果是这样的话 开漏输入就没任何意义了。。。。

   

 

         

 
 
 

回复

1万

帖子

16

TA的资源

版主

9
 

设为开漏,电压是跟着管脚的外部电路电压走的,外部是零就是零,外部是高就是高

:carnation:
 
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
 
 

回复

1412

帖子

15

TA的资源

版主

10
 

原帖由 new_redstar 于 2011-9-19 22:08 发表 我设置为开漏输入 管脚上外接了上拉电阻 输出仍然是0

 

 

 

你设置为输入了为什么又要测试输出?

 

 

 

另外,上拉电阻你用了多大的?

 
个人签名https://bbs.eeworld.com.cn/thread-471646-1-1.html
欢迎加入我的团队
 
 

回复

2751

帖子

0

TA的资源

裸片初长成(初级)

11
 

原帖由 new_redstar 于 2011-9-20 13:05 发表  也就说LM3S8962 配置输入模式的时候 不能是开漏模式 但是开漏模式和推挽模式电路等效的区别在于推挽多了上拉晶体管 在同时配置为输入模式下差别怎么就这么大 让人难以理解难道是 配置为推挽的时候 默认管 ...

 

问得很好,希望TI的专家进来解答下,占帖等待。

 
 
 

回复

13

帖子

0

TA的资源

一粒金砂(中级)

12
 

回复 9楼 ddllxxrr 的帖子

说的不错 当我把别一管脚的值或直接把+3.3V电源作为输入时 开漏输入的管脚 确实变高了

但问题是为什么把3.3V 通过一个5.1K 的电阻接到管脚 其输入值又变成0了呢?
难道是 开漏输入的 输入电阻远远大于 5.1K 导致输入为0?
 
 
 

回复

13

帖子

0

TA的资源

一粒金砂(中级)

13
 
应该是 远远小于5.1K 导致输入为0???这样理解对吗? 
 
 
 

回复

18

帖子

0

TA的资源

一粒金砂(中级)

14
 
我的理解是推挽输入是高电平,开漏输入是低电平,我的4*4键盘矩阵程序中,单步运行调试得出的结论,那个程序我已调试成功了。
 
 
 

回复

13

帖子

0

TA的资源

一粒金砂(中级)

15
 

能看看你的键盘程序吗??

 
 
 

回复

18

帖子

0

TA的资源

一粒金砂(中级)

16
 

就是不要从51单片机角度看问题,认为弱上拉开漏输入就是高电平,其实刚开始我也没弄明白,不过现在明白了。

我就是用

GPIODirModeSet(GPIO_PORTE_BASE,GPIO_PIN_0,GPIO_DIR_MODE_IN);
GPIOPadConfigSet(GPIO_PORTE_BASE,GPIO_PIN_0,GPIO_STRENGTH_2MA,GPIO_PIN_TYPE_STD_WPD);

配置的。

[ 本帖最后由 uhhznb 于 2011-9-24 10:59 编辑 ]
 
 
 

回复

299

帖子

0

TA的资源

纯净的硅(高级)

17
 

回复 楼主 new_redstar 的帖子

推挽和开漏指的是输出,直接设置为上拉输入就可以。
 
 
 

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

随便看看
查找数据手册?

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
快速回复 返回顶部 返回列表