日曜技術者のメモ

趣味でやった事のメモ書きです。

Terasic SoCKitのデモを実行してみた-HPS-

SoCKit System CD(Terasicのページからダウンロード)にデモが入っているので実行してみた。

HPS側は以下デモが入っています。

  • hps_gpio
  • hps_gsensor
  • hps_lcd
  • my_first_hps

デモ実行方法は「My_First_HPS.pdf]に記載されています。

my_first_hps実行方法

  1. C:\altera\13.0sp1\embedded\Embedded_Command_Shell.batを実行 「C:\altera\13.0sp1\embedded」はインストール先とバージョンによって変わるので注意

2.コマンドプロンプトが立ち上がるので「my_first_hps」があるディレクトリまで移動する
 ベースはCygwinなので「cd /cygdrive/<ドライブレター>/」でドライブを移動できる。

3.移動後makeを実行
 コンパイル済みのmy_first_hpsが入っているので一度make cleanした方がコンパイルの様子が見れます。

arm-linux-gnueabihf-gcc -g -Wall  -I C:/altera/13.0sp1/embedded/ip/altera/hps/al
tera_hps/hwlib/include -c main.c -o main.o
arm-linux-gnueabihf-gcc -g -Wall    main.o -o my_first_hps

4.ボードの電源を入れてLinuxを起動しTeraTermを接続する。
 「Terasic SoCKitでLinuxをブートしてみた」と同じ
 LAN経由でプログラムをSoCKitへ転送するので同一ネットワーク内にLANを接続する。

5.SoCKitのipアドレスを確認する
 ifconfigでIPを確認する。
 DHCP環境でIPが割り当てられない場合はudhcpcで割り当ててもらう
 固定IP環境では多分以下コマンドでいけるはず
 ifconfig eth0 <固定IPアドレス>
 ifconfig eth0 netmask <サブネットマスク>

6.SocKit側のLinuxにパスワードを設定する
 ファイル転送にscpを使うのでpasswdコマンドでパスワードを設定する。

7.SocKit側のLinuxにプログラムを転送する。
 scpで実行バイナリを転送する
 コマンドプロンプト上で以下コマンドを実行する
 scp my_first_hps root@<Soc Kit側のIPアドレス>:/home/root
 「my_first_hps」が転送するファイルで「/home/root」が転送先ディレクトリ

8.実行バイナリを実行する。
 TeraTerm上で./my_first_hps

root@socfpga_cyclone5:~# ./my_first_hps 
Hello World!

hps_gpio
H_SW0~3でONになっているSWに対応するLEDD10~13が点灯する

f:id:ginnyu-tei:20131106233701j:plain


hps_gsensor Gセンサーの測定結果を出力する

root@socfpga_cyclone5:~# ./gsensor 
===== gsensor test =====
id=E5h
[1]X=-52 mg, Y=-84 mg, Z=932 mg
[2]X=-20 mg, Y=-92 mg, Z=924 mg
[3]X=44 mg, Y=-80 mg, Z=828 mg
[4]X=-56 mg, Y=-900 mg, Z=552 mg
[5]X=-20 mg, Y=-1096 mg, Z=-52 mg
・・・

hps_lcd
LCDに文字と図形を表示する

root@socfpga_cyclone5:~# ./hps_lcd 
Graphic LCD Demo

f:id:ginnyu-tei:20131106235427j:plain