Arduinoのloop()の外

卒研テーマにArduino+Ethernetシールドで何か作れないかと、個人的&指導的に Arduinoの中身を確認中。

Arduinoって、setup()とloop()を書けば動き出すんだけど、 Ethernetシールドのサンプルプログラムで、setup()の中に 様々な処理が書いてある。確認する前は、main()って、以下のような物だと思ってた。

int main() {
   ArduinoのCPUの違いに応じたinit() ;
   init() ;
   ArduinoのCPUの違いに応じたsetup() ;
   setup() ;
   for(;;) {
      周辺IO関連関数に伴なう処理() ;
      loop() ;
   }
   return 0 ;
}

みたいなもんだと思ってた。だから setup() の中身に、何でも処理を書くと、 IOに絡む関数で動かなくなるものが出てくるだろう...と思っていたが、 /PATH/java/hardware/core/arduino/main.cxx を見ると、 順次必要な処理が並んでいるだけ。

int main( void ) {
   init() ;
   setup() ;
   for(;;)
      loop() ;
   return 0 ;
}

これなら、IO系のシールドのライブラリ書く人は大変かもしれんが、 訳の分からない処理の制約はないな...

 

2015年12月

    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

アーカイブ

Google

このブログ記事について

このページは、T-Saitohが2010年2月26日 09:16に書いたブログ記事です。

ひとつ前のブログ記事は「Arduino実用的なコードへのリンク」です。

次のブログ記事は「2009年度・電子情報工学科・卒業研究発表会」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。