1 由于树莓派默认不打开I2C,所以要在配置文件中打开
修改/boot/config.txt
pi@raspberrypi:~ $ sudo vim /boot/config.txt
加入下面两行,注意顺序
dtparam=i2c1=on
dtparam=i2c_arm=on
2: 启动刚打开的IIC
sudo modprobe i2c-dev
sudo modprobe i2c-bcm2708
3:安装IIC工具
sudo apt-get install i2c-tools
4:插入IIC设备,将OLED的两个IIC引脚插入到对应的IIC1中
5:查看IIC设备地址
pi@raspberrypi:~ $ sudo i2cdetect -y -a 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- 3c -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
这里就一个I2C地址 0x3C
6:对IIC设备的所有数据读出
sudo i2cdump -y 1 0x3C
-y 代表取消用户交互过程,直接执行命令
1 代表I2C设备号
0x3C代表I2C设备地址
7:数据写入
sudo i2cset -y 1 设备地址 写入位置 写入内容
sudo i2cset -y 1 0x3C 0x1a 0x55
pi@raspberrypi:~ $ sudo i2cset -y 1 0x3c 0x00 0x55 //向寄存器0x00 写入0x55
pi@raspberrypi:~ $ sudo i2cget -y 1 0x3c 0x00 //读寄存器0x00
0x48 //读出结果
最后如果一直使用IIC的话,最好把启动文件加入到启动文件中
sudo modprobe i2c-dev
sudo modprobe i2c-bcm2708
echo "OLED013 0x3c" | sudo tee /sys/class/i2c-adapter/i2c-1/new_device
加入到/etc/rc.local里面
8: OLED013-C 保存在
javascript:void(0) 烤包到树莓派中
运行编译命令和运行命令就开始显示了
sudo gcc oled.c -o oled -lwiringPi
./oled