20ピンと8ピンのICソケットを搭載してみた。
段々ごちゃごちゃになってきた。基板の裏側の配線も然り。
ATtiny2321とATtiny13をHVPP、HVSPで書き込みをしてみたが両方ともNG。
オリジナルではATtiny2313は未テストになっている。
配線は合っていると思うが、どうしてなのか疑問。(CPU-CLKは16MHz使用、12MHzの方がいいのか?)
もう一つ分からないのは34ピンのVtg、これは4.7Kをシリーズにした中点につながっている。
ターゲットに5Vを出すヘッダーピンにジャンパが入っているとこの中点は2.5V位の電位になり
ジャンパなしだとGNDレベルになる。
この電位を34ピンで読みとっているようだ。 ジャンパを入れるとLEDの点灯が緑だけになる。
ソースを見ているが理解出来ていない。
ADC_GetVREF()をctags58で探せばいいのだが、、、、、
まだ操れない。
風邪をひいたのか不調。
ATtiny2313用ICソケットの配線は下記の様になっている。 これで良いはずだが。
早く全体の回路図を書かなければいけないなー。
回路図一部作成(上記)
avrdudeは、ATtiny2321?は、未サポートです。
また、Vtgは書込み対象のターゲットAVRの電源電圧を測定する
ためのピンです。1/2に分圧しているのは、ライタの安全を確保
するためだと思います。
HVSP, HVPP をサポートするソースコードはありますが、実際には
どのようにNGなのでしょうか。
詳細を教えてください。
また、Ctagsは簡単に使えますが、findコマンドがGNU由来のものを
使わないと上手く動作しない点に注意してください。
Windows標準のfind.exeと区別するため、私は、msys/bin/find.exe
を msys/bin/gfind.exe にコピーして使っています。
「dragon_hvsp」を選択していますか?
>確認ですが、HVSPを使う場合には、avrdude.confを修正し、
「dragon_hvsp」を選択していますか?
はい、Tiny13の場合はこれを選択してます。
AVRStudio4での確認。
28ピンAVR(mega8,168)での機能はOK。
20pin(Tiny2313)はID、Fuseの読み出しは出来ているよう?ですが、読んできた中身は出鱈目。
ID=00,01,02 OK
Fuse=04,04,04(ex,h,l)OK
eraseは取りあえずOK表示が出る。
flash 書き込みは エラーになりますね。
つまりターゲットに対してはコマンドは出ていますが、肝心のデータの読み込みは出来ていない様です。
>avrdudeは、ATtiny2321?は、未サポートです。
2313?では?
これもavrdude.confに追加すれば出来るのですか?
studio4は最初にターゲットdeviceを選択します。
しsignatureをreadし選んだdeviceとマッチすることが必要では無いかと。
この時点でマッチしていないMSGが出ます。(読み込みが正常で無いので当然ですが)
20PINソケットのデータラインの配線がおかしいのかも知れません。
Tiny13(HVSP)は2313が解決してからですね。
>
>はい、Tiny13の場合はこれを選択してます。
了解です。
>AVRStudio4での確認。
>28ピンAVR(mega8,168)での機能はOK。
>20pin(Tiny2313)はID、Fuseの読み出しは出来ているよう?ですが、
>読んできた中身は出鱈目。
>ID=00,01,02 OK
>Fuse=04,04,04(ex,h,l)OK
>
>eraseは取りあえずOK表示が出る。
>flash 書き込みは エラーになりますね。
>つまりターゲットに対してはコマンドは出ていますが、肝心のデータの
>読み込みは出来ていない様です。
>
>>avrdudeは、ATtiny2321?は、未サポートです。
>2313?では?
>これもavrdude.confに追加すれば出来るのですか?
これは、ラジオ少年さんの最初の記事に書いてある型番です。
Tiny2313のことであれば、了解です。
>studio4は最初にターゲットdeviceを選択します。
>しsignatureをreadし選んだdeviceとマッチすることが必要では無いかと。
>この時点でマッチしていないMSGが出ます。(読み込みが正常で無いので当然ですが)
>20PINソケットのデータラインの配線がおかしいのかも知れません。
>Tiny13(HVSP)は2313が解決してからですね。
正確なメッセージを教えてください。また、2つを同時に解決するのは無理が
ありますので、Tony2313を最初に処理すべきだと思います。
なおATtiny2313は、過去にもISPで苦労した記憶があります。Simonさんも、
ATTiny2313でのテストは行っていないのではなく、動作の確認が出来なかった
可能性があります。
ありますので、Tony2313を最初に処理すべきだと思います。
Avrstudio4の結果
Setting device parameters.. OK!
Entering programming mode.. OK!
Reading signature from device .. 0x00, 0x01, 0x02 .. OK!
Leaving programming mode.. OK!
Setting device parameters.. OK!
Entering programming mode.. OK!
Erasing device.. OK!
Programming FLASH .. FAILED!
Leaving programming mode.. OK!
Setting device parameters.. OK!
Entering programming mode.. OK!
Reading fuses address 0 to 2.. 0x04, 0x04, 0x04 .. OK!
Leaving programming mode.. OK!
avrdude-GUIの結果
> avrdude -p auto -q -c dragon_pp -P usb -v
#
# avrdude: Version 5.10svn(YCIT), compiled on Oct 12 2011 at 09:19:08
# Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
# Copyright (c) 2007-2009 Joerg Wunsch
#
# System wide configuration file is "I:\avrdude-2011-RC16\bin\avrdude.conf"
# User configuration file is "I:\avrdude-2011-RC16\bin\avrdude.rc"
#
# Using Port : usb
# Using Programmer : dragon_pp
# (AVR Dragon, serno: 00A20000011E)
# JTAG ICE mkII sign-on message:
# Communications protocol version: 1
# M_MCU:
# boot-loader FW version: 255
# firmware version: 6.16
# hardware version: 1
# S_MCU:
# boot-loader FW version: 255
# firmware version: 6.16
# hardware version: 3
# Serial number: 00:a2:00:00:01:1e
# Device ID: AVRDRAGON
#
# avrdude: AVR device initialized and ready to accept instructions
# avrdude: Device signature = 0x000102 => unknown (???)
# avrdude: Retry, Valid parts are: unknown(???)
# avrdude: AVR Part "???" not found.
#
# Valid parts are:
# t10 = ATtiny10 [I:\avrdude-2011-RC16\bin\avrdude.conf:16881]
# t8 = ATtiny9 [I:\avrdude-2011-RC16\bin\avrdude.conf:16841]
# t5 = ATtiny5 [I:\avrdude-2011-RC16\bin\avrdude.conf:16801]
# t4 = ATtiny4 [I:\avrdude-2011-RC16\bin\avrdude.conf:16761]
-------省略-------
# pwm2 = AT90PWM2 [I:\avrdude-2011-RC16\bin\avrdude.conf:9809]
# t4313 = ATtiny4313 [I:\avrdude-2011-RC16\bin\avrdude.conf:9627]
# t2313 = ATtiny2313 [I:\avrdude-2011-RC16\bin\avrdude.conf:9440]
# m328p = ATMEGA328P [I:\avrdude-2011-RC16\bin\avrdude.conf:9252]
# t88 = ATtiny88 [I:\avrdude-2011-RC16\bin\avrdude.conf:9066]
----省略------
# t11 = ATtiny11 [I:\avrdude-2011-RC16\bin\avrdude.conf:1035]
#
# Device or Programmer not Detected.
studio4のMSGは結果のみで詳しい状況は出てないようです。
ソースを確認し、それらしい箇所を修正してみました。
http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php#p03ac270
にパッチをUPしました。このパッチを適用したファームでの
結果を教えてください。
http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php?AVR%2Favrdude38#p03ac270
修正はUSBには関係無いはずですが。
この変更がUSB通信に影響するとは考えにくいです。
お手数ですが、追加した「volatile」を一個所ずつ、/* volatile */
に変更し、どの変更が認識不可の原因かを確認してください。
何か改善のヒントが得られる可能性もあります。
ちょっと待って下さい