i2c 7segを繋ごうと思ったら、CentOSが入ってた。
# uname -a
Linux rpi2 4.1.11-v7+ #822 SMP PREEMPT Fri Oct 23 16:22:18 BST 2015 armv7l armv7l armv7l GNU/Linux
# cat /etc/centos-release
CentOS Linux release 7.7.1908 (AltArch)
i2cの設定がされてなかった。。。
以下設定内容
/boot/config.txt
dtparam=i2c1=on
dtparam=i2c_arm=on
/etc/modules-load.d/i2c.conf
i2c-bcm2708
i2c-dev
# yum install -y i2c-tools
で、見えた
# i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- UU -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: 70 -- -- -- -- -- -- --
python script 動いた
# cat ./ht16k33_7seg_cpu-temp.py
#!/usr/bin/env python
import time
from Adafruit_LED_Backpack import SevenSegment
def get_cpu_temp():
with open("/sys/class/thermal/thermal_zone0/temp", "r") as f:
t=f.read()
return int(t)/1000
segment = SevenSegment.SevenSegment(address=0x70)
segment.begin()
print "Press CTRL+Z to exit"
while(True):
cpu_temp=get_cpu_temp()
# print cpu_temp
segment.clear()
segment.set_digit(0, int(cpu_temp / 10))
segment.set_digit(1, cpu_temp % 10, decimal=True)
segment.set_digit(2, 'C')
segment.set_digit(3, '-')
segment.set_colon(0)
segment.write_display()
time.sleep(0.25)
0 件のコメント:
コメントを投稿