How to make

お手軽ATtiny10開発環境

Arduino Advent Calendar 2019 参加
[ Japanese / English ]
Arduino UNO + TPI書き込みスケッチ を利用するATtiny10開発環境の構築
この環境ではAVRISPmk2などの専用AVRライタを用いません

Arduino IDE 1.8.10 と下記掲載のATtiny10開発環境は適合しません。
ATtiny10開発環境は Arduino IDE 1.8.9 配下でお使い下さい。
(1.8.10に対応させるべく作業進行中です)

  1.  概要
    1. これまで
      こちらの環境を使ってArduino IDE 配下でATtiny10の開発が可能です。ただし,ATtiny10はTPIと呼ばれる書込みプロトコルを用いているためAVRライタにArduinoUNO+ArduinoISPは使えずAVRISPmk2等のTPI書き込みができる専用AVRライタが必要です。ArduinoUNO+ArduinoISPのようなお手軽な開発環境が望まれていました。
    2. Arduini UNOに若干の改造を施してAVRISPmk2相当にしTPI書込みを行う方法もありますが、ここで紹介する方法ではArduino UNOの改造は一切行いません。
    3. 教えていただいた
      先日,ダシダ氏(@akipropro)から,ArduinioUNOとTPI書込みスケッチによるATtiny10開発環境について下のURLを教えていただきました。
      http://junkplusarduino.blogspot.jp/p/attiny10-resources.html
    4. 構築した環境の構成
      当該Webページを閲覧しTPI書込みスケッチや制御アプリケーションを試行して,この環境は容易にArduino IDEに組み込めると考えました。
      ただし,Arduino IDEの標準AVRライタ制御ツールであるAVRDUDEはこのTPI書込みスケッチに対応していないようなので,AVRDUDEに代わるライタ制御ツールAVRBOYを制作しArduino IDEに組込んで用いることとしました。構築した開発環境の概略は図1のとおりです。
    5. この開発環境はマルチプラットフォームに対応します。Arduino IDE 1.8.x が動けば macOS, Windows, x86-Linux, ARM-Linux で動かすことができます。
      (ただし,Intel-x86系は64ビット環境でしか動作検証しておりません)

      図1

      TPI書込みスケッチのコマンド体系をSTK500v2に準拠させればAVRDUDEから制御することができるようになります。Arduino IDEとの連携はこの方法が王道と考えます。あるいはavrdude.confの記述で対応させることができるかもしれません。

  2. 準備
    1. ボードと部品
      ArduinoUNO, ATtiny10, 抵抗220Ω , 抵抗1KΩ, LED, ブレッドボード, ジャンパー線,図2
      注:ATmaga32U4系のArduino Leonardo/Microなどでの動作検証は全くしておりません。

      図2
  3. 配線
    1. TPI書込み信号は保護抵抗220Ωを通して引き出します。図3
      図3  

       

       

    2. この回路で動作検証を行います。図4

      図4

  4. TPIライタースケッチの書込み
    1. このTPI書込みスケッチ→ ATtiny4_5_9_10_20_40Programmer_2.zip  をダウンロードしzipを展開してArduino IDEのスケッチフォルダにコピー/移動します。
      これはオリジナル・スケッチを制御ツールAVRBOYと確実に連携するように改編したものです。
    2. Arduino IDEを起動し「ATtiny4_5_9_10_20_40Programmer_2」を用意した Arduino UNO 書き込みます。
  5. 開発環境のインストール
    1. 下の開発環境パッケージへのリンクURLをコピーします。
      .
      https://kimio-kosaka.github.io/bitDuino10-arduinoTPI/package_bitDuino10-arduinoTPI_index.json
      .
    2. Arduino IDEのツールバーから
      Windos,Linux:「メニュー」→「環境設定」→「追加のボードマネージャのURL」と進みます。
      mac:「Arduino」→「Preferences」→「追加のボードマネージャのURL」
    3. コピーしたjson URLを追加のボードマネージャのURLのテキストボックスにペーストします。図5
    4. 設定を閉じます。
       図5
    5. 「ツール」→「ボード」→「ボードマネージャ」と進みます
    6. ボードマネージャの検索欄に bitduino と入力します
    7. bitDuino10-aTPI  をインストールします。図6
    8. ボードマネージャを閉じます。
      図6
  6. ボード選択
    1. 「ツール」→「ボード」と進み,ボードリストをスクロールし「ATtiny10(bitDuino10-arduinoTPI」を選択します。図7
    2. シリアルポートはArduinoUNOのポートを使います。
      Windows でCOMポートの番号が3桁(例えば COM106)だとエラーが発生するため、COMポートの番号を2桁以下に手動で書換える必要ありとのバグレポートがあります。
    3. 書込装置はそのまま。この環境は書込装置に何を選んでもAVRBOYツールが起動しTPI書込みをするように設定してあります。

      図7

  7. 動作検証
    1. L チカスケッチ01.Basics/Blinkを呼出します。
    2. 書込みボタンをクリックしてコンパイルと書込みを実行します。
      Arduino IDE のステータスエリアで進捗を監視します。図8
    3. 書き込みが終わると前述図4の配線回路のLEDが1秒間隔で点滅します。
    4. ATtiny10のピン定義は図9のとおりです。
      図8

      LED_BUILTINはD2

      図9

  8. ソースコード
    1. bitDuino10-arduinoTPI
      この開発環境の定義ファイル群は下のGithubリポジトリに収容しております。
      https://github.com/kimio-kosaka/bitDuino10-arduinoTPI
    2. AVRBOY
      制御ツールAVRBOYのソースコード(GO言語)と
      ATtiny4_5_9_10_20_40Programmer_2 のソースコードは下のGithubリポジトリに収容しております。
      https://github.com/kimio-kosaka/avrboy
    3. TPIライタースケッチ
      オリジナルの「ATtiny4_5_9_10_20_40Programmer」の開発元Webサイトは不明です。ソースコードに作者のメールアドレスが記述されています。
  9. 関連記事
    1. ATtiny10 書込み治具の製作(図10の治具)

      図10

    2. ATtiny10でシリアル制御フルカラーLEDをドライブ
  10. bitDuinoについてはこちらの来歴をご覧ください
  11. その他
    記事の利用ライセンスはこちらをご覧ください
「Arduino IDE で ATtiny 他の開発」にもどる

 

記事来歴
2019.12.13 kimio kosaka 図版更新,Arduino Advent Calendar 2019参加
Arduino IDE ver.1.8.10への対応を試行中なるも未完。なおも作業進行中。
2018.05.06 kimio kosaka  図版を追加。
2018.05.03 kimio kosaka これまでの成果にTPI書込みスケッチ利用を加えて「お手軽ATtiny10開発環境」を構築。解説記事を公開
PAGETOP
Copyright © kosakalab All Rights Reserved.
Powered by WordPress & BizVektor Theme by Vektor,Inc. technology.
PAGE TOP