【Raspberry Pi Pico】TCA9548A的Micropython

通过UART下发命令,然后使用Raspberry Pi Pico的I2C接口与TCA9548A进行通信,并通过UART返回读取到的值,打开通道7,关闭其它通道。

from machine import Pin, I2C, UART
import time

# 设置UART
uart = UART(0, baudrate=9600, tx=Pin(0), rx=Pin(1))

# 设置I2C
i2c = I2C(0, scl=Pin(3), sda=Pin(2), freq=400000)  # 使用GPIO2和GPIO3

# TCA9548A的I2C地址
TCA9548_ADDRESS = 0x70

# 打开通道7并关闭其他通道
def open_channel_7():
    i2c.writeto(TCA9548_ADDRESS, bytes([1 << 7]))  # 打开通道7
    time.sleep(0.1)  # 等待足够的时间以确保设置成功
    # 关闭其他通道
    for channel in range(7):
        i2c.writeto(TCA9548_ADDRESS, bytes([0]))
        time.sleep(0.1)

# 主函数
def main():
    while True:
        if uart.any():
            command = uart.readline().strip()
            if command == b"OPEN_CHANNEL_7":
                open_channel_7()
                uart.write("Channel 7 opened and others closed\n")
            else:
                uart.write("Invalid command\n")

if __name__ == "__main__":
    main()

  • 15
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值