
みなさんこんにちは。 小さく、安価で、電力を節約し、手頃な価格のATtiny13Aマイクロコントローラーをプログラムする方法は長い間ありました。
以下はすべてビデオ形式のみです。
今日は、 ATduny13Aで Arduinoのスケッチを縫う方法を説明します。
したがって、まず最初に、このアーカイブをダウンロードして( ここから取得し、かなり完了しました )、ファイルをアドレス「\ Documents \ Arduino \ hardware \」に配置する必要があります。 「C:\ Users \ Administrator \ Documents \ Arduino \ hardware \ attiny13 \ avr \ cores \ core13」のようになります。
Arduino IDEが現在実行されている場合は再起動します。これは、環境が新しいマイクロコントローラーをボードのリストに追加するために必要です。
「スケッチのあるフォルダーの場所」が正しく選択されているかどうかを確認してください(「ファイル/設定」タブで確認できます)。

そこで、ATtiny13のカーネルでアーカイブを解凍する必要があります。
次に、Arduino IDEの例からArduinoISPを取得します。

次に、図に示すように、ATtiny13をArduinoに接続します。

次に、スクリーンショットに示すように、ISPとしてArduinoにプログラマーのタイプを変更する必要があります。

これで、マイクロコントローラATtiny13が動作できる周波数を選択できます。
工場から、ATtiny13は1.2 MHzの周波数で動作します。つまり、マイクロコントローラーは9.6 MHzの周波数で内部RCチェーンからクロックされ、分周器は8なので、デフォルトとして1.2 MHzの周波数を示しました。

ご覧のとおり、使用可能な周波数は1.2 MHz、4.8 MHz、9.6 MHzです。 頻度を変更するには、「Service」タブにある「Write bootloader」ボタンをクリックする必要があります。
「ブートローダーの書き込み」ボタンをクリックすると、環境は何をしますか?
この場合のArduino IDE は、マイクロコントローラーの必要なヒューズを単に公開するだけです。
たとえば、4.8 MHzの周波数で動作するにはATtiny13が必要です。必要な周波数を選択し、「ブートローダーの書き込み」ボタンを1回押すだけです-それだけです。 周波数を再度変更する必要がある場合、マイクロコントローラーは常に所定の周波数で動作します-上記の手順を実行します。
周波数を上げると、コントローラーの消費量が増え、マイクロコントローラーのトランジスタが頻繁に切り替わるほど、消費量が増えることをすぐに言わなければなりません。
そこにあるいくつかの点滅ライトについては、120万命令の実装は価値があり、その周波数ではマイクロコントローラーが約1ミリアンペアを消費するので、 データシートから画面を見ることができます:
ATtiny13が動作し続ける最小動作電圧は1.8 Vであり、この場合、1.2 MHzの周波数でのみ動作することが保証されます。
それでは、初心者向けのほぼネイティブの瞬きの例から始めましょう。

すでにお気付きのように、スケッチはArduino Unoよりも著しく簡単になりました。 これは、Arduinoのほとんどの機能が削減され、少し最適化されているためです。
次の機能がサポートされています。
pinMode()
digitalWrite()
digitalRead()
analogRead()
analogReference(内部)/(外部)
shiftOut()
pulseIn()
analogWrite()
ミリ()
マイクロ()
遅延()
delayMicroseconds()
したがって、先ほど見たように、使用できるのは1024バイトのみです。 十分ではありませんか? まあ、どのタスクに依存します。 たとえば、ある種の点滅するライト、ツイーター、またはインジケータの場合、特にAVR-Cに精通している場合は、もっと真剣に難しいこともできますが、それで十分だと思います。
データシートからのマイクロコントローラーのピン配列:

たとえば、PB4はピン4と同じ、または4だけです。
アナログ入力-ADC *が書き込むすべて、たとえばPB4-これはADC2です。つまり、電圧を読み取るためにanalogRead(A2)を書き込みます。 または単にanalogRead(2);、ハードウェアPWMはポート0と1のみをサポートします。
UPD0:マイクロコントローラーのスペースを節約する方法と、ProteusでArduinoをシミュレートする方法に関するリンクを追加しました。

マイクロコントローラーのスペースを節約する方法は? ;
Arduinoフォーラムのスレッド 。
ProteusプログラムでのArduinoモデリング(例としてATtiny13を使用) ;
ここにアプリケーションの例があります-ATtiny13のミュージカルドアベル 。
すべての出版物。
UPD1 2016/03/17ここでカーネルファイルを探します:
仲間の レゴ からの 補足 記事 。
