1、machine.I2C(id,scl ,sda ,freq = 40000) #I2C对象构造函数,作用为初始化对应的I2C通道和引脚 #id :标识特定的 I2C 外设。如果填入 id = -1,即选择软件模拟的方式实现 I2C,这时可以使用任意引脚来模拟 I2C 总线 ,这样在初始化时就必须指定 scl 和 sda 。 软件 I2C 的初始化方式可参考 软件 I2C 示例。
I2C (Inter-Integrated Circuit) 集成电路总线是I2CBus的简称, 是一种串行通信总线, 使用多主从架构. 飞利浦公司在1980年代为了让主板, 嵌入式系统或手机用以连接低速周边设备而发展. I2C的正确读法为"I-squared-C"。 I2C只使用两条双向漏极开路(Open Drain): 串行数据SDA及串行时钟频率SCL总线, 且利用上拉电阻...
这块128x64 OLED的裸屏是由SSD1306驱动的. 该芯片专为共阴极 OLED 面板设计, SSD1306 中嵌入了对比度控制器, 显示 RAM 和晶振, 并因此减少了外部器件和功耗. 有 256级亮度控制, 数据/命令的发送有三种接口可选择: 6800/8000串口, I2C接口或 SPI 接口. 适用于多数简单的应用, 移动电话的屏显, MP3播放器和...
I2C_InitStructure.I2C_ClockSpeed = 400000; // 设置I2C时钟频率为400kHz I2C_InitStructure.I2C_Mode = I2C_Mode_I2C; // 设置为I2C模式 I2C_InitStructure.I2C_DutyCycle = I2C_DutyCycle_2; // 设置占空比为2 I2C_InitStructure.I2C_OwnAddress1 = 0x00; // 设置自己的地址 I2C_InitStructure.I2C_Ack =...
I2C_InitTypeDef I2C_InitStructure;I2C_InitStructure.I2C_ClockSpeed = 400000; // 设置I2C时钟频率为...
< Internal GPIO pull mode for I2C scl signal*/union{struct{uint32_tclk_speed;/*!< I2C clock frequency for master mode, (no higher than 1MHz for now) */}master;struct{uint8_taddr_10bit_en;/*!< I2C 10bit address mode enable for slave mode */uint16_tslave_addr;/*!< I2C address...
开发板的外设I2C是常用的外设之一,温湿度传感器、OLED等都是经过i2c的总线驱动,今天驱动常用的OLED ssd1306。 1、硬件接线如下图,J14的19脚为SDA,20脚为SCL: (备注)手册上有误,手册上写的是i2c2,但是在设备管理器里面是i2c1。 2、在ubuntu上创建ssd1306.c、ssd1306.h、main.c,以及字库。
首先通过orangepi-config命令打开i2c功能 命令安装i2c-tools,非管理员加入sudo前缀 apt-get update apt-get install -y i2c-tools 然后使用i2cdetect -y 3检测设备,如果发现设备地址,说明屏幕和i2c都没问题。 3.安装必要库 apt-get update apt-get upgrade apt-get install python3-dev python3-pip pip install...
I2C_InitTSturcture.I2C_ClockSpeed = bound;I2C_InitTSturcture.I2C_Mode = I2C_Mode_I2C;I2C_Init...
ssd1306",direction = 0,mode="i2c_hw",i2c_id=0,i2c_speed = i2c.FAST}) -- direction 可选0...