れごぼく@メガネボーイズ2008 RSSフィード

2008-06-17

[][] メモリマップが見れない・・・ 23:38  メモリマップが見れない・・・ - れごぼく@メガネボーイズ2008 を含むブックマーク はてなブックマーク -  メモリマップが見れない・・・ - れごぼく@メガネボーイズ2008  メモリマップが見れない・・・ - れごぼく@メガネボーイズ2008 のブックマークコメント

メモリマップを調べようと思って、ちょっとgccとか調べてみたんだけど、どうもRCX用にクロスビルドされているので、普通のやり方ではメモリマップは見れないのかもしれない・・・

  • brickOSでどれくらい使っているか?
  • 自分たちのアプリでどれくらいRAMを使っているか?

は調べたいところだけど。

なんらかの方法はありそうだけどなー

2008-05-03

[] LEGO赤外線通信 04:36  LEGOの赤外線通信 - れごぼく@メガネボーイズ2008 を含むブックマーク はてなブックマーク -  LEGOの赤外線通信 - れごぼく@メガネボーイズ2008  LEGOの赤外線通信 - れごぼく@メガネボーイズ2008 のブックマークコメント

ふじさんがlnphostってのを調べているみたいだね。

沼津高専のチュートリアルにも赤外線通信について書いてるみたい。参考にしてください。

あ、でもlnphostの方が高機能ではあるんかな。

fuji_tttfuji_ttt2008/05/04 12:31上記は、RCX to RCXについて書かれてますね。
今回、PC側はBrickOSではないので、lnp.hの関数が使えず(おそらくですが)、lnpdなりlnphostが必要なのではないかと思います。

fuji_tttfuji_ttt2008/05/04 12:33↑のコメントは、さっき気が付きました。w

fuji_tttfuji_ttt2008/05/04 12:53間違ってた。w
RCXにロードするときに使うdll.exeでもlnp.hの関数が使われていたので、PC側でも利用できそうです。

skelton_boyskelton_boy2008/05/04 13:19分かったノウハウはまとめといてほしいなー。まー分かったことを、分かったときにブログに追記しといてください。

fuji_tttfuji_ttt2008/05/04 13:42もうちょっと整理できてからブログに書いとくよ。

2008-05-02

[] brickOSのマルチタスク機能を使おう 21:50  brickOSのマルチタスク機能を使おう - れごぼく@メガネボーイズ2008 を含むブックマーク はてなブックマーク -  brickOSのマルチタスク機能を使おう - れごぼく@メガネボーイズ2008  brickOSのマルチタスク機能を使おう - れごぼく@メガネボーイズ2008 のブックマークコメント

前の会議のときに、他の業務系で仕事しているメンバーは、タスクの概念をあまり理解していない感じだったなー。仕事上、マルチタスクとか並行プログラミングとか気にすることないので仕方ないのかもしれない。


組み込み系では、通常、タスクの集合としてシステムを実現するので、タスクとかは当たり前の存在なんだよなー。


当然、brickOSにもタスクの機能は用意されている。brickOSでは以下のURLが分かりやすいかな。

タスクについて - brickOS(legOS)のチュートリアル(沼津高専)

http://www2.denshi.numazu-ct.ac.jp/lego/brickOS/task/task.html



タスクといっても、以下のように関数として実現しておいて、

int task1(){ // task1 function
	int roop;
	for(roop=0;roop<500;roop++){
		cputs("task1");
	}
	return 0;
}

以下のようにタスクを起動する。

int main(int argc, char **argv) {
	t_task1=execi(&task1,0,NULL,10,DEFAULT_STACK_SIZE); // make task1
	t_task2=execi(&task2,0,NULL,15,DEFAULT_STACK_SIZE); // make task2
	t_task3=execi(&task3,0,NULL,20,DEFAULT_STACK_SIZE); // make task3
	return 0;
}

このタスク関数の使い方はおいおい調べていくとして、今回はタスク機能をちゃんと使いたいなー。