macOSでavr-gcc環境作成
Last-modified: Sun, 05 Jan 2025 20:23:45 JST (407d)
Top > macOSでavr-gcc環境作成
AVR開発環境を作成メモ
AVRはMICROCHIP社 に買収された為、最近のAVRはMICROCHIP社が提供しているMPLAB XIDE
で開発ができます。
一方、古いAVRチップはサポートされていないので、AVRで使用できるGCCである、avr-gccを導入します。
avr-gccで使用できるヘッダファイル等のリファレンスについてはここ
を参照してください。
GCCの導入
home brew を使用し、avr-gccをインストールします。
brew install avr-gcc
ビルド
ビルド時にターゲットとなるAVRマイコンの形式を指定します。ここではターゲットとして AT90S2313を指定しています。オプションのWallはビルド時詳細な警告を表示します。またOsオプションで最適化を行います。
avr-gcc -Os -Wall -mmcu=at90s2313 main.c -o test.elf
生成されたelfファイルからHexファイルを生成します。HEXファイルの形式はIntelHEX形式、対象となるelfファイルはelf32-avrを指定します。
avr-objcopy -I elf32-avr -O ihex test.elf test.hex
あとは生成されたHEXファイルを適当なライターで書き込めばOKです。
サンプルプログラム
#include <avr/io.h>
// 適切なクロック周波数。util/delay.h読み込み前に記述しないとエラーになる。
// または、avr-gccでビルド時に -DF_CPU=4190000UL のようにオプションで指定をする。
#define F_CPU 4190000UL // 内蔵クロック 4.19MHz
#include <util/delay.h>
// LEDを接続するピン
#define LED_PIN PB0
int main(void) {
// DDRBの設定: LED_PINを出力に設定
DDRB |= (1 << LED_PIN);
while (1) {
// LEDをON
PORTB |= (1 << LED_PIN);
_delay_ms(500);
// LEDをOFF
PORTB &= ~(1 << LED_PIN);
_delay_ms(500);
}
return 0;
}
Counter: 626,
today: 1,
yesterday: 1
このページの参照回数は、626です。