完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
先看看基本用法:
from pyb import I2C i2c = I2C(1) # create on bus 1 i2c = I2C(1, I2C.MASTER) # create and init as a master i2c.init(I2C.MASTER, baudrate=20000) # init as a master i2c.init(I2C.SLAVE, addr=0x42) # init as a slave with given address i2c.deinit() # turn off the peripheral i2c.init(I2C.MASTER) i2c.send('123', 0x42) # send 3 bytes to slave with address 0x42 i2c.send(b'456', addr=0x42) # keyword for address i2c.is_ready(0x42) # check if slave 0x42 is ready i2c.scan() # scan for slaves on the bus, returning # a list of valid addresses i2c.mem_read(3, 0x42, 2) # read 3 bytes from memory of slave 0x42, # starting at address 2 in the slave i2c.mem_write('abc', 0x42, 2, timeout=1000) # write 'abc' (3 bytes) to memory of slave 0x42 # starting at address 2 in the slave, timeout after 1 second I2C的用法: class pyb.I2C(bus, ...) bus,I2C总线的序号 i2c.deinit(),解除I2C定义 i2c.init(mode, *, addr=0x12, baudrate=400000, gencall=False),初始化 mode,只能是 I2C.MASTER 或 I2C.SLAVE addr,7位I2C地址 baudrate,时钟频率 gencall,通用调用模式 i2c.is_ready(addr),检测I2C设备是否响应,只对主模式有效 i2c.mem_read(data, addr, memaddr, *, timeout=5000, addr_size=8),读取数据 data,整数或者缓存 addr,设备地址 memaddr,内存地址 timeout,读取等待超时时间 addr_size,memaddr的大小。8位或16位 i2c.mem_write(data, addr, memaddr, *, timeout=5000, addr_size=8),写入数据,参数含义同上 i2c.recv(recv, addr=0x00, *, timeout=5000),从总线读取数据 recv,需要读取数据数量,或者缓冲区 addr,I2C地址 timeout,超时时间 i2c.send(send, addr=0x00, *, timeout=5000) send,整数或者缓冲区 addr,I2C地址 timeout,超时时间 i2c.scan(),搜索I2C总线上设备。 |
|
相关推荐
|
|
277 浏览 0 评论
【敏矽微ME32G070开发板免费体验】之原厂2812测试例程解析
368 浏览 0 评论
766 浏览 2 评论
《DNESP32S3使用指南-IDF版_V1.6》第二十六章 INFRARED_RECEPTION实验
592 浏览 0 评论
879 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12039 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 08:58 , Processed in 0.799913 second(s), Total 62, Slave 45 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号