打印

GPIO 读状态改变IDR问题!!召唤香水.

[复制链接]
4046|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
mzscg|  楼主 | 2008-9-11 14:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
 如下配置IO口,或者将输出配置为PP.

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_15|GPIO_Pin_9|GPIO_Pin_8|GPIO_Pin_11|GPIO_Pin_10|GPIO_Pin_13|GPIO_Pin_12;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_Init(GPIOE, &GPIO_InitStructure);

其中,以上配置的所有的GPIO口通过2.5K的上拉电阻上拉到5V.用IAR的view->register查看GPIOE值显示以上所胡脚为高电平.

但一读取GPIOE的状态:Value=(int)GPIOE->IDR;
或者读取输出寄存器:Value=GPIOE->ODR;

奇怪的事情发生,所有上拉的脚8--15全部拉低..

百思不得其解..读取状态也能影响电平??

沙发
mzscg|  楼主 | 2008-9-11 14:17 | 只看该作者

最近人MS少了些..

遇到这样的问题的兄弟过来吼一声啊.

使用特权

评论回复
板凳
mzscg|  楼主 | 2008-9-11 15:29 | 只看该作者

等了好长时间了.

香水兄弟,,看看吧.

使用特权

评论回复
地板
浪淘沙| | 2008-9-11 21:41 | 只看该作者

IDR和ODR是不同的寄存器

配置为GPIO_Mode_Out_PP的管脚的状态受芯片控制,上拉应该不起作用。

但是你的连接有很大问题!! 配置为GPIO_Mode_Out_PP的管脚根本不能上拉到5V,更不能用这种强上拉,这样容易损坏芯片的输出电路!!

说说看,你为什么要这样非常规地连接。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

51

主题

234

帖子

0

粉丝