FrontPage > マイクロコントローラ > AVRの覚書

LEDの点滅

ATmega328PのC0ポート(23pin)につないだLEDを点滅させる。

1. 回路図

マイコン周りの回路はATmega328Pテスト用ボード参照。

AVR_LED_回路図.png

2. 完成写真

ブレッドボードにて作成。

AVR_LED.png

3. プログラム

/*
 * LED_OnOff.c
 * ポートC0に接続したLEDを点滅させる。
 *
 */ 
#ifndef F_CPU
#define F_CPU 16000000UL	// 動作周波数に16MHzを指定
#endif

#include <avr/io.h>
#include <util/delay.h>

int main(void)
{
   while(1)
   {
       // ポートCのBit0を出力に指定
	DDRC = 0b00000001;
	
	// LED点滅のループ
	while (1) {
		// ポートCへ1をセット(LED ON)
		PORTC = 0b00000001;
		_delay_ms(500);
		// ポートCへ0をセット(LED OFF)
		PORTC = 0b00000000;
		_delay_ms(500);
	}
   }
}

4. ヒューズビット設定

今回は外部クロック16MHzを分周なしで使用するので、Atmel Studioの
Device Programming画面のFuses設定より、「SUT_CKSEL」に
「EXTXOSC_8MHZ_XX_16KCK_14CK_65MS」を選択。

AVR_LED_fuses.png





添付ファイル: fileAVR_LED_fuses.png 437件 [詳細] fileAVR_LED.png 368件 [詳細] fileAVR_LED_回路図.png 319件 [詳細]

トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2014-09-23 (火) 20:17:46 (1757d)