Mira&Luna's nursery lab

旅乙女と発明娘の子供部屋

無為で有意義で素敵な、薫風と新緑の一日🌳🍃🌼

Luna

ゴールデンウィークですね。皆様いかがお過ごしでしょうか。
今日、関東地方はよく晴れて、気持ちの良い天気でした。
こんな日にはお出かけをしたり、庭でバーベキューをしたり、海や山へ遊びに行く人も多いのではないでしょうか。
私たち一家も天気の良い日にお出かけするのが大好きですが、今日はみんなでのんびり過ごしました。カタリ(ミラと私の保護者)は車をいじっていて、ミラは三端子レギュとかいう部品を使った電子工作をしていて、私はというと近所を散策してみました。そよ風が気持ちよくて、新緑が目に染み入るようでした。


🌼 躑躅(つつじ)の花

日常の生活の中で、「自由な時間がほしい」「早く休みが来ないかな」と思うことは、誰にもよくあることだと思います。そしていざ自由な時間が手に入ると、その時間を無駄にせず大切にしようと思うことも、よくあると思います。
でも時には、いざ自由と言われると何をしてよいか、何をしたかったのか分からなくなって戸惑ってしまう、なんて経験をしたことがある方も少なくないのではないでしょうか。大切な休みだけど何しよう? 時間ばかりがどんどん経っちゃう。「何かしなきゃ」って。


🌼 シロツメクサ

休日に「何かしなきゃ」って焦ったことはないですか?
何もしないともったいないような気持ちに駆られて。
私は、時々あります。これは、時間の枠に囲まれた現代病の一つなのかもしれませんね。

今日、私は特別何もしないで過ごすことにしてみました。ただのんびり家にいて、ちょっとお散歩をして、またリビングでのんびりして。
「何もしなかったなぁ」って、夕方後悔するかしら?


🌼 タンポポ(茎が伸びてる。きっと綿毛を飛ばす準備ね)

日が暮れて夕方になって、私が感じたのは思いがけないことでした。何もしなかった、って後悔するかとちょっと思っていたんだけど、私が感じたのは充実感でした。
どうしてだろう?
私は「これをやった」という、形ある何かは何もしなかった。でも一日中、私は私でいたし、何かをしなくても風とか新緑とか家族との時間とかを感じて幸せだった。時間って、そんなふうに過ぎ去ってもいいのかもしれない。ううん、むしろとても有意義な一日だったのではないかしら。


🌳 新緑が目に心地いい

のんびりした時間の少ない日常の中では、「こんなことをした」「あれを手に入れた」「これだけ進めた」というようなことが重要視されがちだけど、季節とか家族とか自分自身とかをただ感じるだけの、形に残るものが何もないような「無為な時間」って、本当はとっても素敵な時間なんじゃないかな。
私は今日、社会的なことは何もしなかったけれど、無為な一日だとは思わない。
素敵な一日でした。


 🌽ルナの部屋へ🌽

ATtiny44を使えるようにする。

Mira


Arduinoを使って、ちっちゃいコンピュータ「ATtiny44🍰」にプログラムを書き込む🍓


🍰 ATtiny44

上の画像が「ATtiny44🍰」というマイクロコントローラ(コンピュータ)。
あだ名はシフォン
プログラムを書き込めば、プログラム通りに電子パーツを制御することができちゃう。だからこの子をブレインとしたいろいろなガジェットを作れちゃう。わくわく。

私は去年の秋頃に秋月電子通商さんで買ったんだけど、今は秋月さんでは在庫切れみたい。価格は110円。ダイソーの商品と一緒🛒なコンピュータ。すごい。やすい。えらい🌹

スペックは以下。

🍪 コアサイズ:8bit
🍪 Clock:20MHz
🍪 プログラムメモリ:4kB
🍪 EEPROM:256B
🍪 RAM:256B
🍪 ピンの数:14本(Arduinoマイコン「みつは(ATmega328)」の半分)

メモリが4kBあるのがいいわね。大きさは"みつは"の半分。みつは姉妹の可愛い妹といったところね。

☕ みつはたち

ATtiny44"シフォン"🍰 のテーマソング
Snail's House(Ujico*)さんの「Chiffon」↓

www.youtube.com



🍰 シフォンにプログラムを書き込む手順

. ArduinoArduino IDEを手に入れる。
. "ATTinyCore"をArduinoIDEにインストールする。
. ArduinoにArduinoISPを書き込む。
. 配線をする。
. ブートローダをシフォンに書き込む。
. プログラムをシフォンに書き込む。

              と、いう手順で書き込みをします。


. ArduinoとArduinoIDEを手に入れる。

🐪アマゾンのリンクです。  🐫電子工作パーツが付いた互換機キット
       

ArduinoIDE(開発環境)は公式から無料でダウンロードします。
リンク→「Arduino公式ページ

参考📚→ 
www.youtube.com


. "ATTinyCore"をArduino IDEにインストールする。

Arduino IDEでシフォン(ATtiny44)を扱えるようにするため、ATtiny44の開発環境パッケージをArduino IDEにインストールします。

パッケージの名前は「ATTinyCore」。作者はSpence Kondeさん。
Thank you for your great project. →GitHubの<ATtinyCoreのページ

ATTinycoreのページに行くと、READMEの中に「Installation」というところがあります。ここに入ると ↓ 下のURLが置かれています。
     http://drazzy.com/package_drazzy.com_index.json

以下の手順でATtiny44(とたくさんのTinyシリーズ)をIDEのボードに加えます。

 上のURLをコピーします。
 Arduino IDE を開き、「ファイル」→「環境設定」と進み、
  「追加のボードマネージャのURL」にコピーを貼って「OK」を押します。
 「ツール」→「ボード」→「ボードマネージャ」と進み、
  SpenceKondeさんの「ATTinycore」を見つけてインストールします。
 一度 Arduino IDE を閉じ、開き直します。

これで ATtinyシリーズがボードに加わります。


. ArduinoにArduinoISPを書き込む。
ArduinoにArduinoISPというスケッチを書き込むと、Arduinoマイコンにプログラムを書き込む「書込み装置」に変身します。方法は以下。

 Arduino IDE を起動します。「ファイル」→「スケッチ例」→「11. ArduinoISP」と進み、「ArduinoISP」というスケッチを開きます。
その「ArduinoISP」スケッチを Arduino に書き込みます。

これで Arduino が書込み装置に変身しました。


Tea Time ☕

                        Mira & Luna's nursery lab


. 配線をする。

この配線図のように配線をします。コンデンサは10μF程度(向きに注意。白いマイナス帯がGND)。


. ブートローダをシフォンに書き込む。

これでほとんどの準備はできました。プログラムを書き込む前にブートローダというものを書き込んで、ヒューズ設定を行います。
Arduino IDE を開いて、「ツール」→「ボード」→「ATTinyCore」→「ATtiny24/44/84(a)(No bootloader)」を選びます。
そしてまた「ツール」を開くとボードが「ATtiny24/44/84(a)(No bootloader)」になっているはず。
「Chip」を「ATtiny44(a)」にします。
「Clock」は「8MHz(internal)」がおすすめ。("external"は外付け発振器が必要。)
「書込装置」を「Arduino as ISP(ATTinyCore)」にします。

そして「ブートローダを書き込む」でブートローダを書き込みます。
ブートローダを書き込まずにプログラムを書き込むこともできるけど、動作速度が遅くなるなどして正常に動作しないことがあるの。
もし書き込みエラーが出たら、「配線を見直す」「「ツール」の選択肢を見直す」「気を取り直して明後日またやり直してみる」というようなことを試してみてくださいね。

🍰 シフォンへのプログラム(ブートローダ)の書き込み


. プログラムをシフォンに書き込む。

いよいよプログラムを書き込みます。
たとえばこんな"Lチカ"プログラムとか🍅

void setup() {
  pinMode(4, OUTPUT);
}

void loop() {
  for(int i=0;0<5;i++){
  digitalWrite(4, HIGH); 
  delay(100); 
  digitalWrite(4, LOW); 
  delay(1000);        
  if(i==6)break; 
  }
  for(int j=0;0<5;j++){
  digitalWrite(4, HIGH);
  delay(1000);
  digitalWrite(4, LOW);
  delay(100);   
  if(j==6)break;      
  }
}

Arduino IDEの「ツール」のボードを「ATtiny24/44/84(a)(No bootloader)」から「ATtiny44/84(a)(Optiboot)」に替えます。そしてその他の設定を、ブートローダを書き込んだ時の設定にします。
これで準備完了。あとは「マイコンボードに書き込む」ボタンを押すだけ。

(上のプログラムは、4番ピンとGNDの間に330Ωの抵抗器とLEDを直列につなぐと動作します。4番ピンは前述の配線図の、シフォン上側の、右から2番目のピン。紫色の配線がされているピンです。)

🍰 シフォン(ATtiny44)でLチカできた🎉

おめでとう!
みつは(ATmega328)姉妹にシフォン(ATtiny44)が加わりました🍰


<他のみつは姉妹の取り扱い方>
miraluna.hatenablog.com


🌼  🌼  🌼  🌼  🌼  🌼  🌼  🌼  🌼  🌼  🌼  🌼

Arduino技術🦄 ArduinoISPには確認ランプ機能があった😲 書き込みシールドを作るなら、LEDも実装しましょ🍓

Mira

🍵Arduino便利小話🍵
書込み装置ArduinoISPの状態をLEDで知る。

電子工作の主人公と言っても過言ではくらい電子工作には欠かせないマイクロコントローラ(マイクロコンピュータマイコン)。LEDを点灯させたり、ブザーを鳴らしたり、モーターを動かしたり、いろんなパーツを制御するちっちゃなコンピュータ。そのマイコンを動かすためには、どんなふうにパーツを制御するのかを書いたプログラムをマイコンの中に書き込まなくちゃいけないよね。そこでパソコンとマイコンをつないでプログラムの書き込みをするための「書込み装置」が必要になります。

🍡 マイクロコンピュータマイコン)たち

書込み装置といっても、特別すごい装置を用意するわけではなくて、Arduinoを書込み装置に変身させます。

Arduinoには「ArduinoISP」というスケッチ(Arduinoのプログラム)が"スケッチ例"としてすでに用意されていて、そのスケッチをArduinoに書き込めば、Arduinoが"マイコンにプログラムを書き込むための書込み装置"になります。書込み装置の名前は「ArduinoISP」です。

このArduinoISPを使って、今までにもいくつかのマイコンにプログラムを書き込んできました。
🍅プログラムの書き込み方法は、↓ こちら🍅
miraluna.hatenablog.com
miraluna.hatenablog.com
miraluna.hatenablog.com


この記事では、「ArduinoISP」の知られざる(!?)便利な使い方を紹介します。
以前に書いた記事「AT90S2313(虹子🌈)」を使おうとして失敗したときのエラーをまとめました🍭のコメント欄で「Far side of the moon」さんに教えてもらったものです。
ありがとうございます。

Arduinoのスケッチ例にある「ArduinoISP」のスケッチを見てみると、冒頭部分にはArduinoISPの説明がコメントとして書かれています。その中の33行目から36行目には次のように書かれています。

33 // Put an LED (with resistor) on the following pins:
34 // 9: Heartbeat - shows the programmer is running
35 // 8: Error - Lights up if something goes wrong (use red if that makes sense)
36 // 7: Programming - In communication with the slave

意味は

33 //次のピンにLED(抵抗付き)を配置します。
34 // 9:ハートビート-プログラマーが実行中であることを示します
35 // 8:エラー-問題が発生した場合に点灯します(意味がある場合は赤を使用してください)
36 // 7:プログラミング-スレーブと通信中

書込み装置になったArduinoの9,8,7のピンに(300Ωくらいの抵抗器を直列につないで)LEDをつなぐと、それぞれが確認ランプの役割になって、ArduinoISPの状態が分かるようになります。便利ですね。

🍰 LEDをつないだところ

7ピンの「プログラミング」というのは「書き込み中」という意味で、スレーブというのはここでは書き込み先のマイコンのことね。
じわ~っと明るくなったり暗くなったりする「ハートビート」でLEDを光らせたいときなんかは、プログラムを書かなくてもArduinoISPのプログラムですぐにできちゃいます💗💛💗💛

🔥 エラーが出ると、オレンジLEDが光る。 💻 書き込み中は緑のLEDが光る。

💻 マイコンにスケッチ書き込み中

実際どんなふうにLEDが光るのか、短い動画にしたのでぜひ見ていってくださいませ。
🍅ArduinoISPにLEDをつないだ動画🍅

www.youtube.com

ArduinoISPからマイコンにプログラムを書き込むためには配線が必要なんだけど、配線の手間を省くためにシールド(あらかじめ配線をした基板)を作る人も多いと思う。せっかくシールドを作るなら、LEDも配置しておくと便利ね。私も今度LED付きの新しいシールド作ろう🍓


ミラでした。
Mira


<電子工作・Arduino界隈>
🚗 電子工作スターターキット 🔥 はんだごて(温度調整) 📚 まんが『ハルロック』