- 追加された行はこの色です。
- 削除された行はこの色です。
*ロボット講座 [#xc0fddbb]
**目次 [#kffc02b5]
#contents
**部品 [#qe0a1100]
[[モータドライバ>http://akizukidenshi.com/catalog/g/gI-02001/]]~
[[フォトリフレクタ>http://akizukidenshi.com/catalog/g/gI-07266/]]~
[[タイヤ>http://akizukidenshi.com/catalog/g/gI-07903/]]~
[[ギアボックス>http://akizukidenshi.com/catalog/g/gK-09500/]]~
[[AVRマイコンATmega328P-PU>http://akizukidenshi.com/catalog/g/gI-03142/]]~
[[ICソケット>http://akizukidenshi.com/catalog/g/gI-03142/]]~
[[基盤>http://akizukidenshi.com/catalog/g/gP-03231/]]~
その他諸々
**環境設定 [#m724549d]
最新版の「WinAVR」「AVRStudio」をダウンロードしてきます~
[[WinAVRダウンロード>http://sourceforge.net/project/showfiles.php?group_id=68108]]
[[AVRStudioダウンロード>http://www.atmel.com/ja/jp/products/microcontrollers/avr/default.aspx?tab=tools]]~
AVRStudioは「Atmel AVR 8 ビットおよび 32 ビットマイクロコントローラー」のページから、「ツール」のページヘ。~
「ツールとソフトウェアについての詳細 Atmel AVR デバイス」という文字の下にある。【推奨▼】をクリックして【すべて】を選択。~
下にスクロールして行くと【Software Tools】と書かれたところに【Atmel Studio】【Studio Archive】という項目があります。~
最新版のAVRstudioは【Atmel Studio】に、それ以前のものは【Studio Archive】にあります。~
最新のAVRStudioを使ったほうが良さそうです。~
今回は純正ライターではなくusbaspを使用。~
%%今回は純正ライターではなくusbaspを使用。%%~
純正ライターを使用。~
[[購入はここから>http://akizukidenshi.com/catalog/g/gM-02582/]]~
[[AVRマイコンなページ]]を参考に設定。
**プログラム [#db2d37d2]
***LED点滅 [#o04cc018]
#include <avr/io.h>
int main(void)
{
DDRD = 0xB0;
long i;
while(1){ for(i=0;i<20000;i++){ }
PORTD ^= 0xB0;
}
}
***スイッチでLEDオンオフ [#zff615f5]
#include <avr/io.h>
int main(void)
{
DDRD = 0xB0;// 1000 0000 PD7を出力 それ以外を入力
PORTD = 0xAF;// 0111 1111 入力をプルアップする
PORTD |= 0xB0;// 1000 0000 #7だけ出力 led点灯
while(1){
PORTD ^= 0xB0;
if(bit_is_set(PIND,PD0)) { // ポートD#0 ==1 なら
PORTD |= _BV(PD7);
}else{
PORTD &= ~_BV(PD7);
}
}
}
***スイッチを押している間LED点滅 [#ea4331f9]
#include <avr/io.h>
int main(void)
{
DDRD = 0xB0; // 1000 0000 PD7を出力 それ以外を入力
PORTD = 0xAF; // 0111 1111 入力をプルアップする
int i;
while(1){
PORTD &= ~_BV(PD7); // 0000 0000 led消灯
while(bit_is_clear(PIND,PD0)) {
for(i=0;i<20000;i++){ }
PORTD ^= BV(PD7);
}
}
}
**参考 [#pf185975]
[[AVRマイコンなページ]]~
http://elec-studio.eco.coocan.jp/tool_soft01.html