[技术问题解答] 如何写控制GPIO_PinInput的代码啊

[复制链接]
1827|13
 楼主| s380691662 发表于 2015-8-28 12:16 | 显示全部楼层 |阅读模式
GPIO_Init(GPIOB, GPIO_PTE5_MASK, GPIO_PinInput);
uint32_t GPIO_Read(GPIOB);
怎么样才能让软件读出外部的高低电频呢?
后面该怎么写
FSL_TICS_Jeremy 发表于 2015-8-28 14:23 | 显示全部楼层
最简单的方法是直接去读GPIOB_PDIR寄存器
東南博士 发表于 2015-8-28 14:29 | 显示全部楼层
去读GPIOB_PDIR寄存器
東南博士 发表于 2015-8-28 14:30 | 显示全部楼层
unsigned int READ_PIN=1;
READ_PIN=GPIO_Read(GPIOB);
 楼主| s380691662 发表于 2015-8-28 15:56 | 显示全部楼层
FSL_TICS_Jeremy 发表于 2015-8-28 14:23
最简单的方法是直接去读GPIOB_PDIR寄存器

出现这样的错误应该怎么办
Unknown or ambiguous symbol. g_pinState
 楼主| s380691662 发表于 2015-8-28 16:04 | 显示全部楼层
東南博士 发表于 2015-8-28 14:30
unsigned int READ_PIN=1;
READ_PIN=GPIO_Read(GPIOB);

出现这样的错误应该怎么办
Unknown or ambiguous symbol. g_pinState
ccw1986 发表于 2015-8-28 22:07 | 显示全部楼层
去读GPIOB_PDIR寄存器
FSL_TICS_Jeremy 发表于 2015-8-31 08:37 | 显示全部楼层
s380691662 发表于 2015-8-28 15:56
出现这样的错误应该怎么办
Unknown or ambiguous symbol. g_pinState

那你到底写了什么样的语句呢?
東南博士 发表于 2015-9-1 14:23 | 显示全部楼层
找不到这样的数据?
你看看用寄存器的方法可以成功吗?
 楼主| s380691662 发表于 2015-9-2 09:02 | 显示全部楼层
東南博士 发表于 2015-9-1 14:23
找不到这样的数据?
你看看用寄存器的方法可以成功吗?

按照您的方法我已经成功了,但是我想知道的是,如果我想单独控制一个IO口为输出的话,那么我需不需要先读取之后再取反,在与原来的数据相与,在写到寄存器中,我需不需要进行这样的操作,还是他的gpio_write就已经进行了这样的操作?
東南博士 发表于 2015-9-8 08:13 | 显示全部楼层
这个问题,你可以先试一下!
另外,可能是头文件的预定义不一样。
按道理来说,取反是不需要提前预读的。
FSL_TICS_ZJJ 发表于 2015-9-8 09:35 | 显示全部楼层
s380691662 发表于 2015-9-2 09:02
按照您的方法我已经成功了,但是我想知道的是,如果我想单独控制一个IO口为输出的话,那么我需不需要先读 ...

你可以不读,直接给值,但是前提是你知道其他IO的状态。
所以,正常是读出来,只控制你需要输出的那个IO,也就是或一下,再写回。
 楼主| s380691662 发表于 2015-9-9 16:16 | 显示全部楼层
FSL_TICS_ZJJ 发表于 2015-9-8 09:35
你可以不读,直接给值,但是前提是你知道其他IO的状态。
所以,正常是读出来,只控制你需要输出的那个IO ...

给力!!
舒斯特尔 发表于 2015-9-9 16:31 | 显示全部楼层
去读GPIOB_PDIR寄存器
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

23

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部