Arduinoの下のVisual StudioでのC / C ++でのプログラミング

この投稿は、初心者がC / C ++でArduinoの下で開発するためにVisual Studio環境を構成するために数時間(日)を節約するのに役立ちます。



画像





前文





数ヶ月前、私は教師がコンピューターに接続されたスカーフを身に着けているのを見ました。 スカーフには、目に見える7セグメントインジケータといくつかのLEDがありました。 先生はある種のコードに精通していましたが、スカーフは彼に何かを鮮やかに伝えていました。 私は彼がそこで何をしていたかすぐに興味がありました...しかし、彼から学べることは、ショールがデバッグと呼ばれることだけです。 短いグーグルの後、私はArduinoと呼ばれるおもちゃに出かけます。 私は自分自身にArduinoメガ、Atmega1280(わずか29.99ドル)を搭載したメガを注文し、2週間後に郵便局に行って大切なおもちゃを受け取ります。



プロット





なぜなら 私はVS環境に慣れている熱心なWindows開発者なので、ネイティブのArduino IDEからすぐに注意をそらすことにしました。



必要なのは:





すべてが一度にグーグル検索されます。



それでは始めましょう。 WinAVR、avr-libcをインストールし、Avrdudeをダウンロードします。 Arduinoをコンピューターに接続し、ドライバーをインストールします。 Visual Studioで「makefileプロジェクト」を作成します。 次の図のようにフィールドに入力します。



画像



サンプルサブディレクトリでWinAVRがインストールされた場所には、プロジェクトのビルドに使用できるMakefileがあります。 makefileプロジェクトによって作成されたフォルダーに自分自身をコピーし、いくつかの行を変更します。



MCU = atmega1280

F_CPU = 16000000

FORMAT = ihex

TARGET = ATMEGA-1280-DEV-BOARD

SRC = $(TARGET).C










PROGRAMMER_FLAGS = -p m1280 -c arduino -b 57600 -P COM3 -U flash:w:$(TARGET).hex







この文字列は、パラメーターとしてAvrdudeに渡されます。





次のようにすべてのセクションを変更します。

all: build program





タスク「プログラム」のリストに追加します。 これにより、コンパイルが成功すると、MKにファームウェアが自動的にロードされます。



原則として、すべての準備ができています。 最小限のプログラム(点滅LED L)を作成しようとしています。 ファイルarduino-mega-schematic.pdfを見ると、Arduinoの13番目のポートはPB7に他ならないことがわかります。 およそ次のプログラムを作成します。



#include <avr/io.h>

#include <util/delay.h>



int main()

{

DDRB = 0xFF;

while ( true )

{

PORTB |= (1 << 7);

_delay_ms(500);

PORTB &= ~(1 << 7);

_delay_ms(500);

}

return 0;

}




* This source code was highlighted with Source Code Highlighter .








入力/出力ポートを操作するための最小インターフェース:



#include "utils.h"



class Port

{

public :

Port(PORT& p) : _p(p) {};

Port& operator ! ();

Port& operator += (uint8 b);

Port& operator -= (uint8 b);

Port& operator = (Port& p);

void SetLow();

void SetHigh();

PORT& GetValue();

bool ClearBit(uint8 b);

bool SetBit(uint8 b);

void Pulse(uint8 t);

void PulseBit(uint8 b, uint8 t);

private :

PORT& _p;

};




* This source code was highlighted with Source Code Highlighter .








メイクファイルを保存し、プロジェクトをビルドして、結果を楽しんでください。

画像



追伸 10日までに、すべての種類のセンサーとセンサーで構成されるセットが登場します。 2月までに、超音波距離計と写真レコーダーを収集します。




All Articles