def aa_i2c_write (aardvark, slave_addr, flags, data_out):
"""usage: int return = aa_i2c_write(Aardvark aardvark, u16 slave_addr, AardvarkI2cFlags flags, u08[] data_out)
All arrays can be passed into the API as an ArrayType object or as
a tuple (array, length), where array is an ArrayType object and
length is an integer. The user-specified length would then serve
as the length argument to the API funtion (please refer to the
product datasheet). If only the array is provided, the array's
intrinsic length is used as the argument to the underlying API
function."""
if not AA_LIBRARY_LOADED: return AA_INCOMPATIBLE_LIBRARY
# data_out pre-processing
(data_out, num_bytes) = isinstance(data_out, ArrayType) and (data_out, len(data_out)) or (data_out[0], min(len(data_out[0]), int(data_out[1])))
if data_out.typecode != 'B':
raise TypeError("type for 'data_out' must be array('B')")
# Call API function
return api.py_aa_i2c_write(aardvark, slave_addr, flags, num_bytes, data_out)
# Write a stream of bytes to the I2C slave device.
# This API function returns the number of bytes written into
# the num_written variable. The return value of the function
# is a status code.
aardvark_py.py 文件源码
python
阅读 18
收藏 0
点赞 0
评论 0
评论列表
文章目录