与i2c的smbus给出一个错误,说明需要一个整数

时间:2015-04-21 09:49:09

标签: python i2c

我正在尝试使用smbus模块通过i2c总线对MCP23017的Gpios进行编程。但是我的写命令一直给出一个IO错误,说明需要一个整数..

这是我的代码:

import smbus
bus=smbus.SMBus(1)

ADDR=0x20
IODIRA=0x00
high=0xFF

bus.write_byte_data(ADDR, IODIRA, high)

我得到的错误是:

bus.write_byte_data(ADDR, IODIRA, high)
TypeError: an integer is required.

这里我不明白它在错误中引用的整数是值'high'还是IODIRA? 我也尝试将代码放入

bus.write_byte_data(ADDR, 0x00, 0xFF)

但它仍然给我一个山姆错误

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

Char与int不同。传递类似255的内容