らずぱいでIoT 第10回(C言語で制御するために、その1)
こんばんわ川瀬です。
すみません、最近更新をさぼってました。
らずぱいでIoTを書き始めてはや10回を迎えました。
今回から数回はC言語で使って温度、気圧、湿度センサーを使ってみたいと考えています。
その前に!
C言語でラズパイを使うにあたっては様々なライブラリが用意されています。
なかでも、ライブラリを使わずにメモリーマップドIOで配置されているレジスタへのアクセスする方法は最もハードウエアを直接制御する方法ということができます。
そのためには、ラズパイで使用されているチップセットの情報が必要となります。
調べ方は以下の通り
root@raspberrypi:~# cat /proc/cpuinfo
processor : 0
model name : ARMv6-compatible processor rev 7 (v6l)
BogoMIPS : 697.95
Features : half thumb fastmult vfp edsp java tls
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xb76
CPU revision : 7
Hardware : BCM2835
Revision : 9000c1
Serial : 000000003b4523d6
catで/proc/cpuinfoを読んでみると上のような情報が得られチップセットは、BCM2835というタイプであることがわかります。
で、BCM2835をネットで検索してみると
https://www.raspberrypi.org/documentation/hardware/raspberrypi/bcm2835/README.md
が先頭に出てきて、内容を読んでみるとBCM2835がModel A、A+、B および Zeroで使われていることがわかります。
更に、このページからチップセットの細かい内容が解説されたPDFを得ることも可能です。
ただし、文章はすべて英語です。