<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>chibiegg日誌 &#187; 電子工作</title>
	<atom:link href="http://blog.chibiegg.net/tag/%e9%9b%bb%e5%ad%90%e5%b7%a5%e4%bd%9c/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.chibiegg.net</link>
	<description>chibiegg’s Diary</description>
	<lastBuildDate>Mon, 16 Aug 2010 07:34:49 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>STM32の書き込み環境</title>
		<link>http://blog.chibiegg.net/2010/05/21_00_534.htm</link>
		<comments>http://blog.chibiegg.net/2010/05/21_00_534.htm#comments</comments>
		<pubDate>Thu, 20 May 2010 15:00:28 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[日記]]></category>
		<category><![CDATA[マイコン]]></category>
		<category><![CDATA[Cortex]]></category>
		<category><![CDATA[電子工作]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Snow Leopard]]></category>
		<category><![CDATA[STM32]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=534</guid>
		<description><![CDATA[Mac OSX でSTM32の開発環境を構築してきましたが、どうしてもDFUを使った書き込みだけができません&#8230;
Macでコンパイルして生成したelfバイナリをWindowsに持って行き、STMicroのツール [...]]]></description>
			<content:encoded><![CDATA[<p>Mac OSX でSTM32の開発環境を構築してきましたが、どうしてもDFUを使った書き込みだけができません&#8230;</p>
<p>Macでコンパイルして生成したelfバイナリをWindowsに持って行き、STMicroのツールでDFUに転送するとちゃんと実行されるのでコンパイル環境は正常に構築できたようです。</p>
<p>また、前回最後に触れたdfu-utilも導入できたのですが、それをつかって書き込む方法がさっぱり分かりません。</p>
<p><code><br />
<blockquote>sudo dfu-util -d 0110:1001 -a 0 -R -D $(TARGET).bin</p></blockquote>
<p></code></p>
<p>というコマンドを<a href="http://www.google.com/codesearch/p?hl=en#Fc8jK1NcJM8/trunk/build_box/Makefile&#038;q=dfu-util%20flash%20package:http://leaflabs%5C.googlecode%5C.com&#038;sa=N&#038;cd=5&#038;ct=rc">Leaf LabsのMakefile</a>に見つけたので以下のようにやってみたのですがダメでした&#8230;</p>
<p><code><br />
<blockquote>sudo dfu-util -d 0483:df11 -a 0 -R -D main.bin</p></blockquote>
<p></code></p>
<p>どなたかdfu-utilを使ってSTM32に書き込みをする方法を教えてください！</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2010/05/21_00_534.htm/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>NHK大学ロボコン2010 出場要項</title>
		<link>http://blog.chibiegg.net/2010/05/19_23_529.htm</link>
		<comments>http://blog.chibiegg.net/2010/05/19_23_529.htm#comments</comments>
		<pubDate>Wed, 19 May 2010 14:59:14 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[日記]]></category>
		<category><![CDATA[電子工作]]></category>
		<category><![CDATA[Cortex]]></category>
		<category><![CDATA[STM32]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=529</guid>
		<description><![CDATA[本日クラブにNHKから当日の確認事項が載った出場要項が届きました。
大会当日まであと少しという感じがしてきましたが、できるだけ良い結果が残せるようにがんばります。
と、Robohanのブログに書きました。
あとは個人的な [...]]]></description>
			<content:encoded><![CDATA[<p>本日クラブにNHKから当日の確認事項が載った出場要項が届きました。<br />
<div id="attachment_530" class="wp-caption aligncenter" style="width: 310px"><a href="http://blog.chibiegg.net/wp-content/uploads/2010/05/c028241e1de774300bca788130664829.jpg"><img src="http://blog.chibiegg.net/wp-content/uploads/2010/05/c028241e1de774300bca788130664829-300x424.jpg" alt="NHKロボコン2010「出場要項」" title="NHKロボコン2010「出場要項」" width="300" height="424" class="size-thumbnail wp-image-530" /></a><p class="wp-caption-text">NHKロボコン2010「出場要項」</p></div><br />
大会当日まであと少しという感じがしてきましたが、できるだけ良い結果が残せるようにがんばります。</p>
<p>と、<a href="http://blog.robohan.net/">Robohanのブログ</a>に書きました。</p>
<p>あとは個人的な話を。<br />
STM32を入手したので明日の昼休みは図書館で今まで構築してきた開発環境の動作確認ができそうです。</p>
<p>アルバに開発を頼まれているいくつかのセンサー情報をSDカードへの記録するロガーの方もすこしずつ実験をしていかないとなぁと。</p>
<p>こっちは以前に試作したGPSロガーを元にすればそんなに大変ではないと予想しています。</p>
<p>では。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2010/05/19_23_529.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SnowLeopardにSTM32(Cortex-M3)の開発環境を構築</title>
		<link>http://blog.chibiegg.net/2010/05/13_17_519.htm</link>
		<comments>http://blog.chibiegg.net/2010/05/13_17_519.htm#comments</comments>
		<pubDate>Thu, 13 May 2010 08:46:34 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[Mac]]></category>
		<category><![CDATA[日記]]></category>
		<category><![CDATA[電子工作]]></category>
		<category><![CDATA[マイコン]]></category>
		<category><![CDATA[ARM]]></category>
		<category><![CDATA[Cortex]]></category>
		<category><![CDATA[Snow Leopard]]></category>
		<category><![CDATA[STM32]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=519</guid>
		<description><![CDATA[図書館で二時間時間を潰さないといけない状況になったので、なにかしようと思います。
そこで、最近無性にSTM32が使いたかったのでとりあえず開発環境でもを用意してみようかということで進めていきます。
今回は以下の二段構えに [...]]]></description>
			<content:encoded><![CDATA[<p>図書館で二時間時間を潰さないといけない状況になったので、なにかしようと思います。</p>
<p>そこで、最近無性にSTM32が使いたかったのでとりあえず開発環境でもを用意してみようかということで進めていきます。</p>
<p>今回は以下の二段構えになっています。</p>
<ul>
<li>コンパイル環境の構築</li>
<li>書き込み環境の構築</li>
</ul>
<p>まず、前者については<a href="http://jfyi.blogspot.com/2008/09/cortex-m3-on-mac-os-x.html">Cortex M3開発環境 on Mac OS X</a>というページを参考にしました。</p>
<ul>
<li>ARM用gccのインストール (Targetがarm-eabiのgcc)</li>
</ul>
<p>ARM用のgccはSHやH8の時とはちがい、コンパイル済みのdevkitARMを利用します。<a href="http://sourceforge.net/projects/devkitpro/files/" target="_blank">このページ</a>からdevkitARMのOSXバージョンの最新版をダウンロードし、インストールします。</p>
<p>こいつはインストーラが無いので解凍してできたdevkitARMディレクトリを <strong>/usr/local/ </strong>ディレクトリにコピーしておきます。</p>
<p>そして、PATHを通すために~/.bash_profileファイルに(無ければ新規作成)</p>
<blockquote><p>export PATH=$PATH:/usr/local/devkitARM/bin</p></blockquote>
<div>という一行を加えておきます。</div>
<div>
<ul>
<li>プロジェクトテンプレートの構築</li>
</ul>
</div>
<div>次にSTM32のプログラムをコンパイルするためのプロジェクトのテンプレート(雛形)を作成します。</div>
<div>このディレクトリにSTMicroが用意してくれているSTM32のためのライブラリファイルや、リンカースクリプト、Makefile等を用意しておきます。新しくプログラムを作るときにはこのディレクトリのコピーを作成し、main.c等のユーザープログラムを書くだけでmakeコマンド一発でコンパイルできるようになります。</div>
<div></div>
<div>たぶんこれは二次配布可能だと思うので、圧縮したファイルを添付しておきます。問題があればコメントください。</div>
<div><a href="http://blog.chibiegg.net/wp-content/uploads/2010/05/STM32_Project.tar.gz">STM32_Project.tar</a></div>
<div></div>
<div>このディレクトリはこのファイルでなくても、<a href="http://strawberry-linux.com/stbee/cc" target="_blank">Strawberry Linux</a>のSTM32ボードであるSTBeeのサンプルプログラムでも構いません。</div>
<div>ただし、この場合には付属のMakefileの<strong>&#8220;arm-none-eabi&#8221;</strong>となっている所を全て&#8221;<strong>arm-eabi&#8221;</strong>に変更する必要があります。</div>
<div></div>
<div>以上でコンパイルまではできるようになりました。</div>
<div></div>
<div>次はDFUを使ってUSB経由で書き込みをするツールを用意します。dfu-utilというのを見つけたのでインストールしたいのですが、何故かコンパイルエラー。</div>
<div>ここで時間が来てしまったのでまた出来次第追記します。</div>
<div></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2010/05/13_17_519.htm/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>SnowLeopardにH8とSHのクロスコンパイル環境の準備</title>
		<link>http://blog.chibiegg.net/2010/05/10_23_513.htm</link>
		<comments>http://blog.chibiegg.net/2010/05/10_23_513.htm#comments</comments>
		<pubDate>Mon, 10 May 2010 14:21:42 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[マイコン]]></category>
		<category><![CDATA[電子工作]]></category>
		<category><![CDATA[GCC]]></category>
		<category><![CDATA[H8]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[SH]]></category>
		<category><![CDATA[Snow Leopard]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=513</guid>
		<description><![CDATA[Mac OSX 10.6 SnowLeopardでSHとH8のためのプログラムをコンパイルするためのGCCをコンパイルしました。
なかなか最初はうまくいきませんでしたが、いくつかオプションを指定することでうまくいきました [...]]]></description>
			<content:encoded><![CDATA[<p>Mac OSX 10.6 SnowLeopardでSHとH8のためのプログラムをコンパイルするためのGCCをコンパイルしました。</p>
<p>なかなか最初はうまくいきませんでしたが、いくつかオプションを指定することでうまくいきました。</p>
<p>基本的にクロスコンパイル環境はbinutilsをコンパイルし、その後にGCCをnewlibといっしょにコンパイルすることになります。</p>
<p>その前に、GCCのコンパイルにはGMPとMPFR及び、MPCをインストールしておく必要があります。</p>
<p>今回使ったバージョンは以下の通りです。</p>
<ul>
<li>GMP 5.0.1</li>
<li>MPFR 2.4.2</li>
<li>MPC 0.8.1</li>
<li>binutils 2.20</li>
<li>newlib 1.18.0</li>
<li>gcc 4.5.0</li>
</ul>
<p>これらが~/src/以下に展開されている状態である場合のコンパイル例が以下の通りです。SHとH8の違いはTargetがsh-elfかh8300-elfかの違いだけです。</p>
<p>また~/.bash_profileに以下の二行を追加しておきます。</p>
<blockquote>
<div id="_mcePaste">export PATH=$PATH:/usr/local/sh/bin</div>
<div id="_mcePaste">export PATH=$PATH:/usr/local/h8/bin</div>
</blockquote>
<div>以下はコンパイルしたときに実行したコマンドです。-disable-werrorを追加しないとコンパイルできませんでした。</div>
<div>これで/usr/local/h8以下と/usr/local/sh以下にそれぞれgcc等がインストールされるはずです。</div>
<div><strong><span style="color: #ff0000;">2010年5月14日追記</span>：newlibのコンパイルが抜けていたのを追加</strong></div>
<blockquote>
<div>
<div>$ cd ~/src</div>
<div>$ cd ./gmp-5.0.1</div>
<div>$ ./configure</div>
<div>$ make</div>
<div>$ sudo install</div>
<div>$ cd ../mpfr-2.4.2</div>
<div>$ ./configure</div>
<div>$ make</div>
<div>$ sudo install</div>
<div>$ cd ../mpc-0.8.1</div>
<div>$ ./configure</div>
<div>$ make</div>
<div>$ sudo install</div>
<div>$ cd ../gcc-4.5.0</div>
<div>$ ln -s ~/src/newlib-1.18.0/newlib ./</div>
<div>$ cd ../</div>
<div>$ mkdir h8-binutils</div>
<div>$ cd ./h8-binutils</div>
<div>$ ../binutils-2.20/configure &#8211;prefix=/usr/local/h8 &#8211;program-prefix=h8300-elf- &#8211;target=h8300-elf &#8211;disable-nls &#8211;disable-werror</div>
<div>$ CC=&#8217;cc -no-cpp-precomp&#8217; CFLAGS=&#8221;-O2 -fomit-frame-pointer&#8221; make all</div>
<div>$ sudo make install</div>
<div>$ cd ../</div>
<div>$ mkdir h8-gcc</div>
<div>$ cd ./h8-gcc</div>
<div>$ ../gcc-4.5.0/configure &#8211;prefix=/usr/local/h8 &#8211;program-prefix=h8300-elf- &#8211;target=h8300-elf &#8211;with-newlib &#8211;enable-languages=c</div>
<div>$ CC=&#8217;cc -no-cpp-precomp&#8217; CFLAGS=&#8221;-O2 -fomit-frame-pointer&#8221; make all</div>
<div>$ sudo make install</div>
<div>$ cd ../</div>
<div>$ mkdir h8-newlib</div>
<div>$ cd ./h8-newlib</div>
<div>$ ../newlib-1.18.0/configure &#8211;prefix=/usr/local/h8 &#8211;program-prefix=h8300-elf- &#8211;target=h8300-elf</div>
<div>$ make</div>
<div>$ sudo make install</div>
<div>$ cd ../</div>
<div>$ mkdir sh-binutils</div>
<div>$ cd ./sh-binutils</div>
<div>$ ../binutils-2.20/configure &#8211;prefix=/usr/local/sh &#8211;program-prefix=sh-elf- &#8211;target=sh-elf &#8211;disable-werror</div>
<div>$ CC=&#8217;cc -no-cpp-precomp&#8217; CFLAGS=&#8221;-O2 -fomit-frame-pointer&#8221; make all</div>
<div>$ sudo make install</div>
<div>$ cd ../</div>
<div>$ mkdir sh-gcc</div>
<div>$ cd ./sh-gcc</div>
<div>$ ../gcc-4.5.0/configure &#8211;prefix=/usr/local/sh &#8211;program-prefix=sh-elf- &#8211;target=sh-elf &#8211;with-newlib &#8211;enable-languages=c</div>
<div>$ CC=&#8217;cc -no-cpp-precomp&#8217; CFLAGS=&#8221;-O2 -fomit-frame-pointer&#8221; make all</div>
</div>
<div>$ sudo make install</div>
<div>$ cd ../</div>
<div>$ mkdir sh-newlib</div>
<div>$ cd ./sh-newlib</div>
<div>$ ../newlib-1.18.0/configure &#8211;prefix=/usr/local/sh &#8211;program-prefix=sh-elf- &#8211;target=sh-elf</div>
<div>$ make</div>
<div>$ sudo make install</div>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2010/05/10_23_513.htm/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>教育用マイコンボード</title>
		<link>http://blog.chibiegg.net/2010/04/03_23_483.htm</link>
		<comments>http://blog.chibiegg.net/2010/04/03_23_483.htm#comments</comments>
		<pubDate>Sat, 03 Apr 2010 14:43:24 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[日記]]></category>
		<category><![CDATA[AVR]]></category>
		<category><![CDATA[電子工作]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=483</guid>
		<description><![CDATA[中二の時に同級生数人とロボット同好会を学校で発足させたのですが、今では中学ロボット同好会はロボット研究部に昇格し、高校にもロボット同好会ができています。
で、ロボットを作るためにはマイコンでモーターを回す回路を設計したり [...]]]></description>
			<content:encoded><![CDATA[<p>中二の時に同級生数人と<strong>ロボット同好会</strong>を学校で発足させたのですが、今では中学ロボット同好会はロボット研究部に昇格し、高校にもロボット同好会ができています。</p>
<p>で、ロボットを作るためにはマイコンでモーターを回す回路を設計したりプログラムを作れるようにならないといけません。</p>
<p>がこれまで、いちから独学で回路もプログラムもとなると相当の実力をつけているころには高校生ということになってしまっていました。</p>
<p>なぜそんなに時間がかかるか考えると、プログラムをするためにはマイコンボードができてないと学習できない、基板設計するにはプログラムでどういうことをするのか理解していないといけない&#8230;..という無限ループになるからだということになりました。</p>
<p>そこで、僕らの学年の部長だった<a href="http://blackimagine.blog122.fc2.com/" target="_blank">T-Engine</a>とクラブ向けの学習用マイコンボードがついたロボットキットをつくることになりました。</p>
<p>完成した基板があることによりプログラムの学習が早期からできるというのが目論見です。しかもマイコンは汎用マイコンを搭載しファームウエア等もあえて搭載しないので今後1から回路設計した場合でもそのときの経験はそのまま利用することができます。また回路図を読むことによりどういう回路ならこういうことが実現できるのかという教科書にもなるため回路の学習の基礎にもなればと思っています。</p>
<p>これを用いて中学初期あたりから学習すれば早期にロボット作成の基本が学習できる&#8221;はず&#8221;です。</p>
<p>構成としてはAVRマイコンと2チャンネルのモータードライバとUSBシリアル変換&amp;書込回路をワンボードにしたマイコンボードとタミヤのユニバーサルプレートにギアボックスをセットにしたものになると思います。</p>
<p>拡張性を考えてI2C、デジタル入出力、アナログ入力ポートも備えています。</p>
<p>で、僕はマイコンボードの設計をするので以下のような感じになっています。</p>
<div id="attachment_484" class="wp-caption aligncenter" style="width: 360px"><a href="http://blog.chibiegg.net/wp-content/uploads/2010/04/AVR_edu.png"><img class="size-medium wp-image-484 " title="教育用マイコンボード" src="http://blog.chibiegg.net/wp-content/uploads/2010/04/AVR_edu-500x272.png" alt="教育用マイコンボード" width="350" height="190" /></a><p class="wp-caption-text">教育用マイコンボード</p></div>
<p>あと、AVRStudioを使って1からレジスタを操作してプログラムをするまえに、NQCのように簡単にプログラミングができるような開発環境も用意することにしたのでそちらも開発しています。</p>
<p>Windowsだけの対応ですがC#で開発しています。といってもコンパイル時にこっそり用意しておいたヘッダファイルをインクルードし、リンク時に用意しておいたライブラリをくっつけるという作業をしているだけなのですが&#8230;</p>
<p>それでも1から操作するよりは容易にプログラミングに慣れることができると思います。以下は開発中の開発環境です。一番大変なのは実際の動作とは全く関係のない部分なのですが、コードの色分けを実装するとこでしたね(笑)。できればVisualStudioのInteliSenceのような入力補完機能をつけるのが目標です。</p>
<div id="attachment_485" class="wp-caption aligncenter" style="width: 360px"><a href="http://blog.chibiegg.net/wp-content/uploads/2010/04/edu_ide.png"><img class="size-medium wp-image-485 " title="教育用開発環境" src="http://blog.chibiegg.net/wp-content/uploads/2010/04/edu_ide-500x347.png" alt="教育用開発環境" width="350" height="243" /></a><p class="wp-caption-text">教育用開発環境</p></div>
<p>インクルードが全くないのに用意された関数がつかえます。</p>
<p>これはコンパイル時にこっそり用意しておいたライブラリのヘッダファイルをインクルードし、ライブラリをリンクするという作業を裏で行うのことにより実現しています。というかただそれだけなのですが&#8230;</p>
<p>追伸</p>
<p>DCCデコーダの開発用のための実験基板ができました。AVRとモータードライバとBEMF用の回路が載っています。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2010/04/03_23_483.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Engineer Award</title>
		<link>http://blog.chibiegg.net/2008/07/20_14_195.htm</link>
		<comments>http://blog.chibiegg.net/2008/07/20_14_195.htm#comments</comments>
		<pubDate>Sun, 20 Jul 2008 05:57:26 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[未分類]]></category>
		<category><![CDATA[コンテスト]]></category>
		<category><![CDATA[トランジスタ技術]]></category>
		<category><![CDATA[電子工作]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/2008/07/20_14_195.htm</guid>
		<description><![CDATA[先日「Engineer Award」事務局の小島様からコメントをいただいた技術コンテスト「Engineer Award」についてです。(小島様、コメントの許可が遅れてしまい申し訳ございません。「不適切であれば削除してくだ [...]]]></description>
			<content:encoded><![CDATA[<p>先日「<a href="http://www.engineeraward.jp/">Engineer Award</a>」事務局の小島様からコメントをいただいた技術コンテスト「<a href="http://www.engineeraward.jp/">Engineer Award</a>」についてです。(小島様、コメントの許可が遅れてしまい申し訳ございません。「不適切であれば削除してください」とまでご丁寧にも追加でご連絡いただきました。もちろん不適切ではありませんし、寧ろお知らせいただき感謝しております。)</p>
<p>僕自身は今年は受験で制作する余裕はないのですが、学校(中学・高校)のクラブの後輩に参加を進めてみようとおもいます。<br />
何か自分たちでアイデアを出して短期間で何かを作るのは良い経験になるでしょうし、おもしろそうだし。</p>
<p>僕は来年同じ企画があればエントリーしたいと思います。去年のこの時期にあったら絶対エントリーしたんですが。ちょうど文化祭のネタにもいいですしね。USBがついてるマイコンではW-SIMをUSB経由でアナログモデムとして接続するアダプターが作りたいですね。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2008/07/20_14_195.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
