NXT

NXTでのmake、uploadの手間を省く方法

NXT

結論から書くと alias mas='make all && sh rxeflash.sh' alias mcas='make clean && make all && sh rxeflash.sh' を/home/(ユーザー名)/.bashrc にコピペしておいて、cygwin再起動をする。それから$ mas でmakeとアップロードができたり、$ mcas でクリー…

NXTでData abortなる例外が...

NXT C

めんどくさいことにData abortなるセグフォ(Segmantation Fault)を起こしてしまった。原因は構造体の代入をやり忘れてたから起こったことだった。 再現しようと思ったらものすごくめんどくさかった...。でもまだちゃんと実行してない...。 balanceRunner.tai…

NXT用のデータ出力マクロのメモ

NXT C

ちょっとしたデバッグ用マクロ。ecrobot_debug1が不便なので作ってみた。 #define DATA_OUTPUT(str, a, b, c) \ display_clear(0); \ display_goto_xy(0, 0); \ display_string(#str); \ \ display_goto_xy(0, 1); \ display_string("VAR1: "); \ display_in…

NXTをバージョン管理するときに無視すべきファイルたち

NXT

NXTのロボット開発で、ソースコードの管理のためにGitを使ってる。プログラムを書いてコミットするときに無視するファイルを決めておかないと無駄なファイルを管理してしまうのでなかなか面倒なことになる。Gitでは.gitignoreに無視するファイル・ディレクト…

error: no macro name given in #ifndef directiveってなんだという

NXT C

make allしたら盛大にエラーが出てきた。 $ make all Compiling Source/ColorDetector.c to ColorDetector.o In file included from Header/ColorDetector.h:5, from Source/ColorDetector.c:1: Header/LightSensor.h:3:8: error: no macro name given in #i…

NXTで見かけるU32とかS8とかいう型は何か?

NXT

NXTを触ってるとU32とかS8とかF32とかいう方が出てくる。一体なんなのかなと思ったらtypedefした型だった。宣言の場所は、 nxtOSEK/ecrobot/c/ecrobot_types.h nxtOSEK/lejos_nxj/src/nxtvm/platform/nxt/mytypes.h に宣言してあった。抜き出した部分は以下…

NXCのプログラミングで役立つこと

C NXT

NXCとかで役立つこと※これはの可読性(プログラムが見やすいかどうか)を少しでも向上させてほしいという願いのもとで書いてます。前進、左回転、右回転、後退は関数にまとめることができる(モジュール化)。自分がモジュール化すると、それはこんな感じ。 /*直…