乐鑫技术交流
直播中

李波

7年用户 1411经验值
私信 关注
[问答]

用一根跳线把GPIO23,22连接,如何才能让GPIO22随着GPIO23的输出值而变动?

pin23 = Pin(23,Pin.OUT,value = 1)
pin22 = Pin(22,Pin.IN)

>>> print(pin23.value())
1
>>> print(pin22.value())
1
用一根跳线把GPIO23,22连接

>>> pin23.value(0)

>>> print(pin23.value())
0
>>> print(pin22.value())
1
如何才能让GPIO22随着GPIO23的输出值而变动?
                                                                                                                                                   

回帖(1)

小香干

2024-6-27 17:04:38
要让GPIO22随着GPIO23的输出值而变动,你需要使用一个非反相器(例如:74HC04)来实现这个功能。以下是实现这个目标的步骤:

1. 首先,确保你有一个非反相器(例如:74HC04)和一些跳线。

2. 将GPIO23连接到非反相器的一个输入端。在这个例子中,我们将使用74HC04的1号引脚。

3. 将GPIO22连接到非反相器的输出端。在这个例子中,我们将使用74HC04的2号引脚。

4. 现在,当你改变GPIO23的输出值时,GPIO22的值将会是GPIO23的反相值。

以下是修改后的代码示例:

```python
from machine import Pin

# 初始化GPIO23为输出
pin23 = Pin(23, Pin.OUT, value=1)

# 初始化GPIO22为输入
pin22 = Pin(22, Pin.IN)

# 打印GPIO23和GPIO22的初始值
print(pin23.value())  # 输出1
print(pin22.value())  # 输出1(反相)

# 改变GPIO23的值
pin23.value(0)

# 打印GPIO23和GPIO22的值
print(pin23.value())  # 输出0
print(pin22.value())  # 输出1(反相)
```

请注意,这个示例假设你已经将GPIO23和GPIO22通过非反相器连接。如果你没有使用非反相器,那么GPIO22的值将不会随着GPIO23的值而改变。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分