数式は大体はC言語と一緒です。
------------------------------------------------------------
a = 1 + 2 * 3 / 4 #四則演算
b = (1 + 2) * 3 #( )付き演算
c++ #インクリメント、デクリメント
a = 1 << 2 #ビットシフト
b = a & 0x00000001 #ビット論理演算
c = "moji" + "retsu" #文字列連結
------------------------------------------------------------
ビットの論理演算は数値に対してのみ有効で、結果は16進に
なります。文字列の連結は便利そうなので入れておきます。
文字列と文字列意外の連結は…どうしようかなあ。文字列として
返す様にしようかな。
2014年9月29日月曜日
2014年9月26日金曜日
【Cubieboard2】コンパイル備忘録 その2
Buildrootのmakeができたら、これをSDカードにます。4GBぐらいあれば
いいみたいですが、8GBのものを使いました(実際、イメージはそんなに
大きくないので、2GBとかでもいけるかもしれません)。
■書き込み用のスクリプトを起動
# sudo ./board/cubietech/cubieboard/mkcubiecard.sh output/images/ /dev/sdd
Buildrootのフォルダ直下で、上記を実行。最後の/dev/sddの部分は環境に
ことなります。mountされてるとエラーになる可能性があるので、あらかじめ
umountしておきます。
mount時、/dev/sdd1とかなってますが、引数師弟の場合は/dev/sddとします。
これを実行すると、SDカードにすべて書き込んでくれます♪。
■起動!
microSDカードをCubieboard2に挿入して起動!。シリアルポートで動作確認
できますよ~。ちなみにシリアルポート接続はFTDIのUSB接続タイプのを使って
ますが、Cubieboad2のシリアルポート(USB1/2ポートのすぐ後ろくらいにある
4pinヘッダのコネクタ)には
GND...黒
VCC...×
RX...緑
TX....白
の様に接続。VCCに赤のラインをつなぐと動きませんので、ここはNCです。
■シリアルコンソール
Ubuntuの場合、「Serial port terminal(シリアルポート端末)」と言うソフトがあるので、
ソフトウェアセンターでインストールできます。ただし、これを普通に動作させると
「許可がありません」とか言われるので、コンソール(端末)から
# sudo gtkterm &
でOK。シリアルポートはボーレートが115200、8bit、stop:1bit、パリティーなし、で
動作してます。
やってみたら意外と簡単でした♪。Buildrootすげー。
いいみたいですが、8GBのものを使いました(実際、イメージはそんなに
大きくないので、2GBとかでもいけるかもしれません)。
■書き込み用のスクリプトを起動
# sudo ./board/cubietech/cubieboard/mkcubiecard.sh output/images/ /dev/sdd
Buildrootのフォルダ直下で、上記を実行。最後の/dev/sddの部分は環境に
ことなります。mountされてるとエラーになる可能性があるので、あらかじめ
umountしておきます。
mount時、/dev/sdd1とかなってますが、引数師弟の場合は/dev/sddとします。
これを実行すると、SDカードにすべて書き込んでくれます♪。
■起動!
microSDカードをCubieboard2に挿入して起動!。シリアルポートで動作確認
できますよ~。ちなみにシリアルポート接続はFTDIのUSB接続タイプのを使って
ますが、Cubieboad2のシリアルポート(USB1/2ポートのすぐ後ろくらいにある
4pinヘッダのコネクタ)には
GND...黒
VCC...×
RX...緑
TX....白
の様に接続。VCCに赤のラインをつなぐと動きませんので、ここはNCです。
■シリアルコンソール
Ubuntuの場合、「Serial port terminal(シリアルポート端末)」と言うソフトがあるので、
ソフトウェアセンターでインストールできます。ただし、これを普通に動作させると
「許可がありません」とか言われるので、コンソール(端末)から
# sudo gtkterm &
でOK。シリアルポートはボーレートが115200、8bit、stop:1bit、パリティーなし、で
動作してます。
やってみたら意外と簡単でした♪。Buildrootすげー。
2014年9月21日日曜日
【Cubieboard2】コンパイル備忘録 その1
Cubieboard2を買ってほったらかしになっていたので、それ様のBootイメージを
作ってみようかと思います。
公式サイトではYocto使う様に書かれてたり、Debianイメージが配布されていたり
するんですが、ウチの非力なPCではYoctoのコンパイルには時間がかかりすぎるし
Debianは色々入りすぎてる感じ…。ってことで 割とお手軽そうなBuildrootを選択。
■Tool Chain
Ubuntuの場合はapt-getで取れます。
■U-Boot
gitで取ってきます。
# git clone https://github.com/linux-sunxi/u-boot-sunxi.git
取ってきたらu-boot-sunxi/に入って、まずはConfigを作ります。
# make CROSS_COMPILE=arm-linux-gnueabihf- Cubieboard2_config
U-Boot本体を作ります。
# make CROSS_COMPILE=arm-linux-gnueabihf-
■ツール類
gitで以下の2つを取ってきます。
sunxi-tools/に入って、ツールをまず作ります。
# make fex2bin
sunxi-boards/sys_config/a20に入ります。ここに目的のcubieboard2.fexファイルが
あります。これはボードのハード設定諸々を記述したもので、これをコンパイルしてbin
ファイルにした後、U-bootからKernelに引き渡す様です。
# ../../../sunxi-tools/fex2bin cubieboard2.fex script.bin
生成されたscript.binが目的のファイルです。
※Buildrootを取ってくると、上記も一緒に入っててAutoでコンパイルしてくれてました。
なので、Buildroot使う場合は必要ないです。
■Buildroot
gitでも取れますが、今回は
http://buildroot.uclibc.org/download.html
からtar.gzファイルを取ってきて展開。
# tar zxvf buildroot-2014.08.tar.gz
buildroot-2014.08/に入ってコンパイル。まずはconfig作ってから本体のmake。
# make cubieboard2_defconfig
# make
今日はここまで♪。
作ってみようかと思います。
公式サイトではYocto使う様に書かれてたり、Debianイメージが配布されていたり
するんですが、ウチの非力なPCではYoctoのコンパイルには時間がかかりすぎるし
Debianは色々入りすぎてる感じ…。ってことで 割とお手軽そうなBuildrootを選択。
■Tool Chain
Ubuntuの場合はapt-getで取れます。
# apt-get install gcc-arm-linux-gnueabihf
# git clone git://github.com/linux-sunxi/sunxi-tools.git # git clone git://github.com/linux-sunxi/sunxi-boards.git
※Buildrootを取ってくると、上記も一緒に入っててAutoでコンパイルしてくれてました。
なので、Buildroot使う場合は必要ないです。
■Buildroot
gitでも取れますが、今回は
http://buildroot.uclibc.org/download.html
からtar.gzファイルを取ってきて展開。
# tar zxvf buildroot-2014.08.tar.gz
buildroot-2014.08/に入ってコンパイル。まずはconfig作ってから本体のmake。
# make cubieboard2_defconfig
# make
今日はここまで♪。
2014年9月1日月曜日
【Quartz】変数について
コメントには"#"を使います
------------------------------------------------------------
#コメント
a = 123 #コメントは文の後ろでも可
#複数行コメント書きたいときは
#各行の先頭に"#"が必要です
------------------------------------------------------------
変数はCっぽい感じにしますが、型宣言による初期化は必要としない
ことにします。
------------------------------------------------------------
a = 123 #整数
b = "mojiretsu" #文字列
c = 0.123 #浮動小数点
d = 0x123 #Hex値
e = [00112233] #データ列
------------------------------------------------------------
変数の型は代入する値で決まります。言い換えれば、代入する
毎に型が決定されます。演算による型の変更は…まだ考えて
ません(^^;。
Hex値は内部でunsigned longで扱われます。データ列はHex値の
"0x"を省いた16進値を連続で書き込むと、そのデータがバッファに
記述されるようにします。MAX値は16byteまでです。通信フレーム
とか扱ってると、連続値入力したいときが良くあるので、この型を
設けます。
ポインタはどうしようかなあ…。複雑になるからとりあえず止めとくか。
------------------------------------------------------------
#コメント
a = 123 #コメントは文の後ろでも可
#複数行コメント書きたいときは
#各行の先頭に"#"が必要です
------------------------------------------------------------
変数はCっぽい感じにしますが、型宣言による初期化は必要としない
ことにします。
------------------------------------------------------------
a = 123 #整数
b = "mojiretsu" #文字列
c = 0.123 #浮動小数点
d = 0x123 #Hex値
e = [00112233] #データ列
------------------------------------------------------------
変数の型は代入する値で決まります。言い換えれば、代入する
毎に型が決定されます。演算による型の変更は…まだ考えて
ません(^^;。
Hex値は内部でunsigned longで扱われます。データ列はHex値の
"0x"を省いた16進値を連続で書き込むと、そのデータがバッファに
記述されるようにします。MAX値は16byteまでです。通信フレーム
とか扱ってると、連続値入力したいときが良くあるので、この型を
設けます。
ポインタはどうしようかなあ…。複雑になるからとりあえず止めとくか。
登録:
投稿 (Atom)