はい、皆様こんにちは
PICマイコン使い!
になるべく、日々奮闘!(  ̄∞ ̄)=3フン
していないdotage-dog@ぼけ犬です┐(´-`)┌
そんなわけで
電飾模型の神 どろぼうひげさん
が、rand ( )関数の使い方を、ブログで公開されていましたので、ぼけ犬なりに使ってみたワケであります
どろぼうひげさんのブログは こちら ね
まずは、こちらの動画を (1分ほどです)
何がすごいって、プログラムソースを公開してくれたことですよねw(゚o゚)w
自分のような大ぼけ犬野郎でも、使うことができるようになってしまうのですから(≧∇≦)b
んで、どろぼうひげさんは、より多くの方に
PICマイコン使い
になって欲しいと所望されておりますので、その一助になればと、ぼけ犬もメイン関数部分のソースを公開
(※注 画像になっています)
で、ぼけ犬なりに解説・・・
と言っても、
なんでそうなるの(゚_。)?
とかは解らないので、まぁ、さらっと
できれば、どろぼうひげさんのブログと見比べながら読んでみてください
今回説明するのは while{} retern(EXIT_SECCESS) までです
1) rand()というのが、C言語において、ランダムな数字を出力してくれる関数の一つ・・・らしい
2) (rand()%195)+1の部分でランダムな秒数をセットするわけですが、どろぼうひげさんの方では(rand()%4)+1となっていますね
つまり、()の中の数字を変えれば、ランダムな秒数を変えられるようです
で、1~196秒の間のランダムな間隔で、キャノンとガンポッドが発射されるわけですが
3) for(s=0;s<bang;s++) が、その1~196秒の間隔を決め、その間隔ごとに canon(); が呼び出されて、キャノンとガンポッドが発射されます
canon();と言うのは、キャノンとガンポッドを発射するためのプログラム関数なんですが、そのソースは、今回は割愛
4) if (GP3==0){ canon(); }が、発射ボタンを押したときの動作
5) __delay_ms(24); は、エンジンの点滅間隔で、24ms(ミリ秒)間隔での点滅で、数字を変えれば点滅間隔が変わります
とまぁ、まだまだ基礎知識を、ようやく理解できるようになった程度のぼけ犬なので、解説できることは現状これくらいでしょうか?
こんな解説では、ちょっと判りにくいかとも思いますが、全て解説するには本1冊が、まるまる書けてしまうので、なかなか難しいですよね
ただ
C言語もPICも知識ゼロだったぼけ犬でも
ここまで使えるようになったので、皆様にもぜひチャレンジして欲しいと思います
あ、今年もDORO☆OFFに参加させていただくわけですが
今回のプログラムのPICと、今までのプログラムのPICを持っていきますので、ご要望があればPICの入れ替えを行いたいと思います
ぜひ、お気軽にお申し付けください
ぼけ犬の参加は二日目の9月23日 日曜日です
皆様のお越しを、心よりお待ちしています
それでは、また次回
※コメント投稿者のブログIDはブログ作成者のみに通知されます