”
MicroZed Chronicles: UIO をやってみる4”の続き。
”
MicroZed Chronicles: UIO Part One - Introduction and Set Up”と”
MicroZed Chronicles: UIO Part Two - Creating Software Applications”をやってみよう。なお、関連する MicroZed Chronicles のブログの”
MicroZed Chronicles: IOCTL SPI, I2C and PetaLinux”も参考にしている。
今回は、”
MicroZed Chronicles: UIO Part One - Introduction and Set Up”に沿ってやっていく。
前回は、生成された BOOT.BIN, boot.scr, image.ub を FAT32 でフォーマットされた MicroSD カードに書いて、ZUBoard 1CG に挿入し電源ONした。Petalinux 2022.2 が立ち上がって、I2C と UIO を確認することができた。今回は、uio にマップされた物理アドレスを確認してから、gpio_0 の GPIO の接続されている PL ボタンの割り込みを確認した。更に、gpio_0 の GPIO2 に接続された D4 の RGB LED の動作を確認した。
最初に /sys/class/uio/uio4/maps/map0/addr と /sys/class/uio/uio5/maps/map0/addr を確認した。
cat /sys/class/uio/uio4/maps/map0/addr
cat /sys/class/uio/uio5/maps/map0/addr/sys/class/uio/uio4/maps/map0/addr は
0x00000000a0030000
だった。
/sys/class/uio/uio5/maps/map0/addr は
0x00000000a0040000
だった。

次に、gpio_0 の GPIO の接続されている PL ボタンを押したときの割り込みを確認する。
cat /proc/interrupts を実行した。

gpio_0 の割り込みを設定して、PL ボタンを押すと、割り込みが入ることを確認する。
gpio_0 の割り込みを設定する。
sudo devmem 0xa003011c 32 0x80000000
sudo devmem 0xa0030128 32 0x3 SW3 の PL ボタンをクリックしてから、
cat /proc/interrupts を実行した。
63 の gpio の CPU0 が 1 になっているのが分かる。

gpio_0 の GPIO2 に接続された D4 の RGB LED の動作を確認する。
sudo devmem 0xa0030008 32 0x1 を実行すると D4 の RGB LED が青に点灯した。
sudo devmem 0xa0030008 32 0x2 を実行すると D4 の RGB LED が緑に点灯した。
sudo devmem 0xa0030008 32 0x4 を実行すると D4 の RGB LED が赤に点灯した。
- 2023年09月13日 05:29 |
- ZUBoard
-
| トラックバック:0
-
| コメント:0