2017-04-28 17:26 | カテゴリ:コンピュータ
PICのドットマトリクスLED駆動にトライしていましたが、久しぶりにRaspberryPiに戻ってきました。
もうすっかり忘れています(笑)

PCからリモートウィンドウでログオンして、RaspberryPi(ラズパイ)をPCから操作する際の「ログオンパス」や、共有フォルダーにアクセスする「パスワード」など忘れて、以前のメモを探し回りました。(汗)
ラズパイは、PICと比較しても強力なパワーで、本格OS搭載ですから、作法も結構厳しいんです。
管理者権限でないと操作できないことが多く、いちいち「sudo」を付けてコマンドを入力する必要があって、面倒ですね。

さて、プログラミングですが、Pythonという言語は、どうも肌が合いません。
記述の作法が、C言語とは結構異なり、勉強するにも大変です。

そこで、何かC言語的なものはないかと探したら、WiringPiというC言語がありました。
代表的な各種関数も装備されて、無料で使用できるようです。

(WiringPi)
RP_WiringPiHome.jpg



続きは、、、、



(まずはサンプルプログラムで)

WiringPiは、MPLABXのXC8とかなり似ています。
ホンの一部の命令記述を除いて、行けそうです。

これで、まずは簡単なLEDチカチカをテストしてみることにしました。
このサイトのサンプルプログラムを借用させていただき、WIN10のPCのメモ帳にコピペして、PaspberryPiにリモートログインでコピーしました。

(Sample)
RP_LED_Sampl.jpg



RaspberryPiに上記のサンプルプログラムを取り込みました。

(Program)
RP_Program.jpg


こちらのサイト http://raspberrypi.blog.fc2.com/blog-entry-76.html
「ラズベリーパイで遊ぶよ~!」



を参考にさせていただいて、これをコンパイルして実行すると

(LED)
RP_LED.jpg


ちゃんとLEDが点滅しています。(静止画ですが)(笑)



(コンパイルと実行の手順)

サンプルプログラムを入手できても、それをどうやってコンパイルして、実行させるかもわかりませんでした。
色々なサイトを見て、その手順通りにして、上記を実施しましたが、操作がいまいち理解できていませんので、まとめておきます。

1、WiringPiのプログラムを格納する為にプロジェクトのFolderを作る。

私は、homeの下にある、piなどと同じレベルにexdataというFolderを作成し、
その下に、今回のテストのプロジェクトフォルダーとして、

test_proj

というFolderを作りました。

2、このFolderの中に、今回のLEDチカチカのmainとなるプログラムファイルを格納します。

ファイル名を

test_LED.c

とします。

3、カレントディレクトリーを移動

コマンドプロンプトのウィンドーを立ち上げ、カレントディレクトリーをそのプロジェクトフォルダーに移動します。

このあたりの操作は、昔のPCのDOSコマンドと同じです。

4、コンパイルをする

その後、$のコマンドラインから

sudo gcc -Wall -o test001 blink.c -lwiringPi (改行)

コンパイルが成功すると、すぐに$プロンプトが表示され、プロジェクトFolderの中に
「プロジェクトFolder」と「同じ名前の実行ファイル」が生成されます。

この場合は、test001 であって、blink ではありません。

5、実行

実行するにはは、$プロンプトに対して

sudo ./test001(改行)

で実行されますが、実行中は、$コマンドプロンプトは、返されません。
中断するためには、
Cnt+C をキーから入力すると、プログラムは停止し、$プロンプトが返されます。

(ProjectFolder)
RP_ProjFolder.jpg


プログラムの実行は、ファイルマネージャで該当する実行ファイルを
ダブルクリックすることでも可能です。

(DoubleClick)
RP_DoubleClick.jpg




エディターを選ぶ)


言語が決まったら、次はエディターです。
PICでは、MPLABXという総合開発環境が整っていて、知らず知らずのうちにその有難さが当たり前になっていました。
ラズパイには、「簡易」エディターが付随するだけで、開発環境がありません。
エディターから探さねばなりません。

これもWEBで、SublimeText3というC言語にも対応した日本語メニュー対応のエディターがありました。

(SublimeText3)
RP_SublimeText3.jpg


しかし、これもよさそうなんですが、MPLABXの様な気の利いた機能がありません。というか、言語に沿って「BUILD」などの機能が備わっているようなのですが、WIN10のPC上でRaspberryPiのWiringPi言語がBUILDできるとも思えません。

(SublimeText3_Build)
RP_BuildProj.jpg


そこでさらに探すと、ありました。
GeanyというWIN10上でWiringPiにも対応した結構高機能なエディターです。


(GEANY)
RP_Geany.jpg


関数をリストアップしたり、変数の一覧を表示したり、使いやすそうです。
ちゃんと日本語のメニューを標準で装備しています。

これがよさそうです。

BUILDも可能なようですが、WIN10上では無理で、やはり、RaspberryPi上でこのGeanyが動作すれば、プログラミングの基本部分は操作に慣れたWIN10のPC上で行い、ある程度出来上がったら、RaspberryPi上でデバッグ、コンパイル、テストを繰り返せば良いです。
そこで、RaspberryPi上で動作するGeanyが無いか検索しましたが、どうもヒットしません。
こまったなぁ!
と思って、RaspberryPiのメニューを見ていたら、

「Geanyが標準で備わっている」!!!

ではありませんか!!!

(GeanyPi)
RP_GeanyPi.jpg


(GeanyPiSample)
RP_GeanyPiSample.jpg



灯台下暗し(笑)
最初から備わっているではありませんか。
これで問題は解決。
早速、先日のPICの「マトリックスLEDのドライブ」をRaspberryPiに移植してみたいと思います。



【ジャンル】:趣味・実用 【テーマ】:電子工作
コメント(4)

管理者のみに表示する