2009/9/7 (Mon) 15:16:15
|
[名前] : kuman
|
[URL] :
|
[コメント] : PIC18F2550では...の続きです。
irukaさんの掲示板に報告しましたが、 やや安定しない感じを受けます。 USBに接続してもLEDが点滅しない(もちろんpicmonがエラーになる)時があり、RESET(MCLRピン→GND)してUSB接続しても点滅しないときがあります。ひどいときは何回も繰り返します。
LEDが消灯状態でUSB未接続の時、回路に手を近づけるとLEDが点灯することがあります。ノイズを受けるのでしょうか。
5Vの電源電流が40mA強になります。少し多い感じを受けますがこんなものでしょうか。
|
|
2009/9/7 (Mon) 16:15:34
|
[名前] : kuman
|
[URL] :
|
[コメント] : 認識されなくなった
原因不明でUSBが認識されなくなりました。 何度繰り返しても変わりません。 bootloaderを再書き込みすると戻りました。
|
|
2009/9/7 (Mon) 16:52:57
|
[名前] : senshu
|
[URL] :
|
[コメント] : PGM端子はどうなっていますか?
この端子がオープン状態の時の報告に似ています。
また、PICマイコンのI/Oピンの状態はどうなっているでしょうか。
入力をプルアップするか、出力状態に設定すれば消費電流は 落ち着くと思います。また、USB端子がオープン状態では どういう動作をするかは不定です。セルフパワーで使う 場合には、このピンの電気的な対策が必要だと思います。
|
|
2009/9/7 (Mon) 17:14:25
|
[名前] : kuman
|
[URL] :
|
[コメント] : PGM端子は10kでプルダウンしています。解放では動作しません。
IO端子は p POATA ff の様にB、Cともに設定できますから出力になっていると思います。
USB端子を解放にすると10〜15mAほど電流が減ります。
それと、少し時間を置くとpicmonエラーになります(LEDの点滅が無くなります。点灯のまま)。
|
|
2009/9/7 (Mon) 17:25:06
|
[名前] : kuga
|
[URL] :
|
[コメント] : pin20のVDDには5V印加 pin14のVUSBにはパスコン 接続のみとなっていますか?
|
|
2009/9/6 (Sun) 22:22:58
|
[名前] : kuman
|
[URL] :
|
[コメント] : PIC18F2550では
PiC18F2550にbootloader-0000.hexを書き込みましたが、稼働しませんでした。 18F2550にbootloader-0000.hexをPICspx.exeで書き込みました。 (電源は5Vでは認識せず3.2Vで書けました)
C:\0pic_ PICspx bootloader-0000.hex *Device:PIC18F2550 DEV_ID:0x1245 Erase ... Writing ... 0800 Verify Ok.... 0800 Writing Fuse ... WARNING: config LVP=OFF - ON . CONFIG: 00 02 0b 1e 00 80 05 00 03 c0 03 e0 03 40
ここで水晶20MHz(22pF付き)を付け、PGM端子を10kでプルダウンして、ライタ回路を外して、 RC0にLEDを付けましたが、LEDは点滅せず点灯のままです。 (今回は消灯のまま)。 また、
C:\0pic_ C:\0pic_\picmon.exe ERROR: fail to OpenTheHid(0002) error: [0002] device not found! と認識されませんでした。残念ですが行き詰まっています。 どこか間違えているのでしょうか。
|
|
2009/9/6 (Sun) 22:39:11
|
[名前] : senshu
|
[URL] :
|
[コメント] : 18F2550と18F14k50のコードに互換性はありません
アーキテクチャは同一ですが、メモリの配置やCONFIGが 異なるので、書き込むコードは異なります。
kumanさんが書き込まれたのは、どのHEXファイルですか?
|
|
2009/9/6 (Sun) 22:39:44
|
[名前] : iruka
|
[URL] :
|
[コメント] : kumanさん、こんばんは。
http://hp.vector.co.jp/authors/VA000177/html/HIDmon-2550.html
こちらにあるHEXをお試しください。14K50と2550はポートアドレスが全然違うのです。2550と4550は、追加されたI/Oが増えているだけで、同じHEXが動きます。
|
|
2009/9/6 (Sun) 22:42:04
|
[名前] : iruka
|
[URL] :
|
[コメント] : kumanさん、追加情報です。
PICmon.exe 、PICboot.exeも違います。 (同じ実行ファイル名ですが、互換性がありません) 適当にリネームして使ってください。
|
|
2009/9/7 (Mon) 02:05:13
|
[名前] : FENG3
|
[URL] :
|
[コメント] : こんばんは。
PIC18F2550とPIC18F4550のバルク消去のコマンドは“3F8F”ですがpicdevice.c中で“Command81”に変更されています。これは影響がないのでしょうか。
また、データEEPROMがコードプロテクトされていた場合はコマンド“3F8F”だけではEEPROMを消去できないのでコマンド“0084”を追加発行する必要があります。
|
|
2009/9/7 (Mon) 03:22:54
|
[名前] : kuman
|
[URL] :
|
[コメント] : irukaさん、senshuさん、ありがとうございました。
hidmon-0814.zipをダウンロードし直して、その中の bootloader-0000.hexをPICspxで書き込み(5Vで)、 同じフォルダのpicmon.exeを実行したところ正しく表示されました。 やや不安定を感じますが後ほど追試します。 前回に5Vで書けなかったのはHIDaspxの電源電圧切り換え忘れでした。
|
|
2009/9/7 (Mon) 09:30:13
|
[名前] : senshu
|
[URL] :
|
[コメント] : Comman81の件
>PIC18F2550とPIC18F4550のバルク消去のコマンドは“3F8F”ですが >picdevice.c中で“Command81”に変更されています。
これはirukaさんのコードですが、私がCommand81関数の仕様を変更した ので、その副作用です。機能しているようですが、本来なら Command3F8F を呼び出すように変更すればよいわけですね。
>データEEPROMがコードプロテクトされていた場合は… PICマイコンも色々ありますね。検討してみます。
|
|
2009/9/6 (Sun) 18:57:42
|
[名前] : senshu
|
[URL] :
|
[コメント] : PICspxの問題解決にご協力をいただいたFENG3のページに HIDaspxの試用報告がありました。
http://wind.ap.teacup.com/applet/feng3/200909/archive
書込みには成功したようですが、とても時間がかかったとの ことです。(USB-HUBを使用は不明です)
私は、PICspxの場合にはUSB-HUB無しでは実用的な利用は 難しいと考えています。
|
|
2009/9/6 (Sun) 21:01:55
|
[名前] : kuman
|
[URL] :
|
[コメント] : 定量的な時間記述がないのでわからないのですがどれくらいなのでしょうか。私の実測がverifyを含めて5分くらいですが、FT232LVPなら全領域を書いて13秒とありますからこれから比べると5分は極めて長時間となるでしょう。
FT232LVPは素晴らしい性能のようですが回路図の記載はないようです。
|
|
2009/9/6 (Sun) 22:49:29
|
[名前] : senshu
|
[URL] :
|
[コメント] : 確かに、13秒は比較的速いと思いますが、PICマイコン用に特化 したコマンドを組み込めば、HIDaspxでも同等の速度は実現でき ると思います。
しかし、HIDaspxを構成するATtiny2313ではメモリが足りず、 この機能を追加する余裕がありません。AVRマイコン用のサポート をカットして捨てPICマイコンに特化するか、別のマイコンに切り 替えるかの選択が必要です。
irukaさんは、低速ではありますが、一度書き込めばよいブート ローダ方式を提案しています。その後は、高速な書込みが可能です。 HIDaspxの利用者にとって、極めて投資の少ない仕掛けと考えています。
しかし18F14k50でHIDaspxを実現すれば、両方を実装しても、更に 空きが得られると予想しています。
|
|
2009/9/7 (Mon) 06:55:05
|
[名前] : senshu
|
[URL] :
|
[コメント] : FENG3さんのサイトで、回路図が公開されていました。
http://wind.ap.teacup.com/applet/feng3/msgcate13/archive
HIDaspxと同じく、非常にシンプルです。これで高速な書込み ができるなら、汎用性もあり便利だと思います。
|
|
2009/9/7 (Mon) 09:37:26
|
[名前] : senshu
|
[URL] :
|
[コメント] : HIDaspxの利点
FT232で構成したLVPライタも中々の性能を発揮するよう ですが、HIDaspxはデバイスドライバのインストールが 不要で、どのUSBポートに繋いでも使えます。
これは、FT232では実現できないものです。同様にCOM ポートが増えないので管理も楽です。
AVRライタとして利用するなら、16kBの更新は10秒程度で 可能です。
使い方次第ですが、借用したPCを使ってコードを書き換 える場合には非常に有効な場合があります。
|
|
2009/9/6 (Sun) 11:25:28
|
[名前] : kuman
|
[URL] :
|
[コメント] : 秋月の18F14K50
2つの内1つはレーザー刻印が無く、なにも読みとれません。 とりあえず紙を貼り付けて鉛筆で記入しました。 多くのICを見ましたがこんなのは初めてです。
動作には問題はないようですが。
|
|
2009/9/7 (Mon) 09:40:52
|
[名前] : senshu
|
[URL] :
|
[コメント] : 刻印なしは本当ですか?
刻印がレーザーに変わってから、ICの視認性が低下しています。
出荷側の都合だと思いますが、以前のインク方式の方が 遥かに読みやすかったと思っています。
秋月電子の写真も半分消えかかったような奇妙なものが 掲載されていますが、どうしたのでしょうね。
|
|
2009/9/7 (Mon) 11:41:16
|
[名前] : kuga
|
[URL] :
|
[コメント] : 手元の2個は秋月の写真のようなレーザー刻印 でした。
>2つの内1つはレーザー刻印が無く、 エラー切手のように貴重な品かも知れません。 (コレクターはいないか・・)
|
|
2009/9/4 (Fri) 18:14:18
|
[名前] : senshu
|
[URL] :
|
[コメント] : kumanさんへ、picmonの調子はいかがですか?
PICspxの不具合が解決したのは理解していますが、 picmonとの通信が不安定の件は不明です。
どんな状況なのかを簡単に説明していただければ幸いです。 irukaさんの正式版のアナウンスにも繋がると思います。
|
|
2009/9/5 (Sat) 00:58:13
|
[名前] : kuman
|
[URL] :
|
[コメント] : 報告が遅れてすみません
当初は不安定なところがありましたが、最近は問題なく起動しています。 概ね pコマンドを実行するだけですが問題は起きていません。 実験ボードには RC0とRC1にLEDを付けていますが、 RC1は p POATC.1 1 コマンドで点灯し、p POATC.1 0で消灯します。 しかし、RC0のLEDは点灯が不安定で、USBケーブルをつなぐと点滅します。 USB端子につながなくてもD-端子(18番)を手で触ると点滅します。 プログラムがどうなっているのかな、と思いつつ進んでいません。
|
|
2009/9/5 (Sat) 07:37:00
|
[名前] : senshu
|
[URL] :
|
[コメント] : RC0の点滅は意図したものです。
このLEDが点滅していると、プログラムを書き込めるブート ローダモードにいることがわかるようになっています。
UBWというものがあり、そのLED仕様に準じています。 なお、これはソフトで実現しているので、作成したプログラム から、ユーザは自由に操作できます。
ユーザプログラムの作成には、Swordfish Compilerを お勧めします。無償版はRAMサイズが256バイトまでと なっていますが、コードサイズに制限はなく、便利に 使えます。以下のページに使用例を紹介しています。
http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php?memo%2FSFC_02
|
|
2009/9/5 (Sat) 08:06:31
|
[名前] : senshu
|
[URL] :
|
[コメント] : LEDの点滅は、Microchip社のブートローダ仕様
おそらく、元になったブートローダがそうした仕様になっていたの だと思いますが、純正のブートローダはやや不安定でした。 irukaさんが公開しているものは、各種の安定化対策を 反映したものになっています。
|
|
2009/9/3 (Thu) 23:09:16
|
[名前] : senshu
|
[URL] :
|
[コメント] : Sleep関数の評価プログラム(その2)
前回紹介したのは、20回の平均値を表示するものでしたが、 問題は平均値ではなく、バラつきが少ないことが重要です。
そこで、最大、最小を表示するものを作成してみました。
http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php?AVR%2Fnews45#s6c7b321
に置きましたので、評価テストに協力を戴ければ幸いです。
デュアルコアのPCは概ね好成績をたたき出しているようです。
|
|
2009/9/4 (Fri) 12:54:09
|
[名前] : senshu
|
[URL] :
|
[コメント] : 精度重視でもかなりのアバレがありました。
テスト回数を500回の繰り返しに切り替え、最小、最大、 平均を表示するように修正し、10分間ほど動作させ、 ファイルに結果を記録しました。
驚くほどのバラツキが確認できました。最小値が指定した 値を下回ることが無い点だけが救いです。
でも、PICspxの書き込み・読み出し程度なら問題は無い と思いますが、Windowsで正確な時間制御が困難なこと を、再認識しました。
|
|
2009/9/4 (Fri) 14:54:38
|
[名前] : kuman
|
[URL] :
|
[コメント] : 結果
他にはなにも起動せず測定した値です。 C:\0\desktop E:\0アプリケ\0programmer_avr\0PICspx\picspx-2009-0904\bin\test-pc.exe ----- delay_ms function: 10 - min = 10, max = 17, avg = 10.11 [mSec] 5 - min = 5, max = 7, avg = 5.00 [mSec] 2 - min = 2, max = 2, avg = 2.00 [mSec] 1 - min = 1, max = 2, avg = 1.00 [mSec] 0 - min = 0, max = 0, avg = 0.00 [mSec]
Sleep function: 10 - min = 9, max = 10, avg = 9.95 [mSec] 5 - min = 4, max = 5, avg = 4.72 [mSec] 2 - min = 1, max = 2, avg = 1.53 [mSec] 1 - min = 0, max = 1, avg = 0.25 [mSec]** 0 - min = 0, max = 0, avg = 0.00 [mSec]
**印のminは1ms未満だとは思いますがavgが低すぎる感じです。 irukaさんのPCでは問題なく、kumanのPCではエラーになったのはこれが関係するのでしょうか。
なお、PICspx-0904 で2回(ボードもデバイスも別物)書きましたが正常でした。
他の方からの報告は聞いていませんが安定して書き込めると考えて良いのではないでしょうか。
|
|
2009/9/4 (Fri) 16:37:28
|
[名前] : senshu
|
[URL] :
|
[コメント] : >Sleep function: >1 - min = 0, max = 1, avg = 0.25 [mSec]**
これを考慮して、0904版では、1m秒の待ちが必要な場合でも、 2m秒を指定するようにしました。
やや遅くなるかもしれませんが、安定性を優先しました。
これで、ほぼ問題は解消したと考えます。
書き込みに入る前にPCのSleep関数における精度を状況を把握 できるので、安心感はあると思います。
|
|
2009/9/4 (Fri) 16:43:43
|
[名前] : senshu
|
[URL] :
|
[コメント] : 0902版は、通常モードでのSleep関数です。
この時にConfig書き込みにエラーが起きていました。 この状態では、Sleep(1)は9m秒でしたか。 精度重視に変更したことで、1m秒の値が低め安定に 変わりました。
そのため、私はSleep関数の待ち時間のバラツキが エラーを誘発した、と考えています。
|
|
2009/9/3 (Thu) 20:03:26
|
[名前] : kuman
|
[URL] :
|
[コメント] : PIC18F14K50の記事
とりあえず雑ですがメモしてみました。 http://www.geocities.jp/kuman2600/o02pic24.html
|
|
2009/9/3 (Thu) 14:44:19
|
[名前] : senshu
|
[URL] :
|
[コメント] : >なかなか思うようにはなりません。
>消去して書き直してみたのですが、連続5回configが >0になりました。内1回はLVPが不可になりましたか >ら006Pの助けを借りました。 >6度目に正しく書けましたが、
まだまだ実用レベルに達していないようですが、Sleep関数の 動作速度を検証するプログラムを公開しています。
ぜひ、その結果を教えてください。
|
|
2009/9/3 (Thu) 15:11:20
|
[名前] : kuman
|
[URL] :
|
[コメント] : senshuさんへ
0903版を試しました。 2種類のボードで計3回書きましたがいずれも正しい config値が書かれていました。
1回の書き込みに5分ほどかかりますので回数の結果は得にくいのですが、かなり確実性が向上したのではないかと思います。
動作速度を検証するプログラムの結果を下に書きました。
|
|
2009/9/3 (Thu) 15:29:52
|
[名前] : senshu
|
[URL] :
|
[コメント] : kumanさん、吉報をありがとうございます。
これは大きな前進ですね。この結果なら、後に続く方も安心です。
提案ですが、USB-HUB経由でHIDapxを接続してみてください。 (既にそうなっていますか?)
HUB経由で使えば、書き込みにようする時間を数分の1にできる 可能性があります。
|
|
2009/9/3 (Thu) 16:26:16
|
[名前] : kuman
|
[URL] :
|
[コメント] : USB-HUB
を経由してこの速度でした。 HUBが便利なもので延長コードの先にハブを付けて机上に置いています。
|
|
2009/9/3 (Thu) 14:25:19
|
[名前] : senshu
|
[URL] :
|
[コメント] : kumanさんへ
PICspxで書き込んだものには、スタートアップタイマが無効との ことです。認識が不十分なのは、この影響かもしれません。
可能なら、MCLRにスイッチをつけ、USBプラグを差し込んで数秒後に RESETしてみてください。
これを繰り返し、正しく認識できることを確認し、 次にUSBコネクタを抜差し後にどうなるかを確認します。
スタートアップタイマの効用が判断できると思います。
|
|
2009/9/4 (Fri) 14:35:32
|
[名前] : senshu
|
[URL] :
|
[コメント] : 「PowerUp Timer = ON」にしたHEXファイルを公開
picspx-2009-0904.zip にPowerUp Timerを ONにした HEXファイルを同梱した、picspx-2009-0904.zipを 暫定的に公開しました。
PICspxで書き込んだ PIC18F14k50の動作が不安定という 報告がありましたが、このHEXファイル(Configのみの 違い)ではどうかを確認していただければ幸いです。
|
|
2009/9/3 (Thu) 13:34:30
|
[名前] : senshu
|
[URL] :
|
[コメント] : kumanさんにお願い
PCのSleep関数の影響を判断する為、Sleep関数の実行時 間を計測するプログラムを書きました。 以下のような測定ができます。 test-pc 通常モード 100.0 -- 108.85 [mSec] 50.0 -- 62.00 [mSec] 30.0 -- 31.00 [mSec] 20.0 -- 31.00 [mSec] 10.0 -- 15.00 [mSec] 5.0 -- 15.00 [mSec] 3.0 -- 15.05 [mSec] 2.0 -- 15.00 [mSec] 1.0 -- 15.00 [mSec] 0.0 -- 0.00 [mSec]
精度重視 100.0 -- 98.80 [mSec] 50.0 -- 50.55 [mSec] 30.0 -- 30.00 [mSec] 20.0 -- 20.40 [mSec] 10.0 -- 10.00 [mSec] 5.0 -- 5.00 [mSec] 3.0 -- 3.00 [mSec] 2.0 -- 2.00 [mSec] 1.0 -- 1.00 [mSec] 0.0 -- 0.00 [mSec] 以下のURLに置きましたので、テストしていただけば幸いです。 (この精度が大きく影響していると予想しています)
http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php?AVR%2Fnews44#r9e0a55e
|
|
2009/9/3 (Thu) 14:45:29
|
[名前] : kuman
|
[URL] :
|
[コメント] : 実行結果
C:\0\desktop C:\0\desktop\download\PCtest\test-pc.e 通常モード 100.0 -- 99.60 [mSec] 50.0 -- 49.85 [mSec] 30.0 -- 29.55 [mSec] 20.0 -- 19.70 [mSec] 10.0 -- 9.50 [mSec] 5.0 -- 9.55 [mSec] 3.0 -- 9.60 [mSec] 2.0 -- 9.45 [mSec] 1.0 -- 9.60 [mSec] 0.0 -- 0.00 [mSec]
精度重視 100.0 -- 99.80 [mSec] 50.0 -- 50.00 [mSec] 30.0 -- 30.00 [mSec] 20.0 -- 19.95 [mSec] 10.0 -- 9.90 [mSec] 5.0 -- 4.90 [mSec] 3.0 -- 2.80 [mSec] 2.0 -- 1.65 [mSec] 1.0 -- 0.15 [mSec] 0.0 -- 0.00 [mSec] 制度重視で、1msではばらつきがあるようです。
|
|
2009/9/3 (Thu) 18:16:33
|
[名前] : 宮前
|
[URL] :
|
[コメント] : sleep関数だけ参加します。 WindoesXP Pro Dellのサーバです。
通常モード 100.0 -- 100.00 [mSec] 50.0 -- 50.00 [mSec] 30.0 -- 30.00 [mSec] 20.0 -- 20.00 [mSec] 10.0 -- 10.00 [mSec] 5.0 -- 5.00 [mSec] 3.0 -- 3.00 [mSec] 2.0 -- 2.00 [mSec] 1.0 -- 1.00 [mSec] 0.0 -- 0.00 [mSec]
精度重視 100.0 -- 99.95 [mSec] 50.0 -- 50.00 [mSec] 30.0 -- 30.00 [mSec] 20.0 -- 20.00 [mSec] 10.0 -- 10.00 [mSec] 5.0 -- 5.00 [mSec] 3.0 -- 3.00 [mSec] 2.0 -- 2.00 [mSec] 1.0 -- 1.00 [mSec] 0.0 -- 0.00 [mSec]
|
|
2009/9/3 (Thu) 18:27:01
|
[名前] : すん
|
[URL] :
|
[コメント] : 私も参加
Intel DP35DP Core2Duo 2.4GHz Windows XP Pro SP3 日本語
通常モード 100.0 -- 99.95 [mSec] 50.0 -- 50.30 [mSec] 30.0 -- 29.85 [mSec] 20.0 -- 20.00 [mSec] 10.0 -- 10.25 [mSec] 5.0 -- 5.35 [mSec] 3.0 -- 3.05 [mSec] 2.0 -- 2.20 [mSec] 1.0 -- 1.50 [mSec] 0.0 -- 0.00 [mSec]
精度重視 100.0 -- 100.00 [mSec] 50.0 -- 50.00 [mSec] 30.0 -- 29.80 [mSec] 20.0 -- 20.00 [mSec] 10.0 -- 10.20 [mSec] 5.0 -- 5.00 [mSec] 3.0 -- 3.00 [mSec] 2.0 -- 2.25 [mSec] 1.0 -- 1.00 [mSec] 0.0 -- 0.00 [mSec]
|
|
2009/9/3 (Thu) 19:25:37
|
[名前] : senshu
|
[URL] :
|
[コメント] : 最近のPCでは誤差が少ないのですね。
これが原因で不具合が起きるなら、この値を事前に 調査できるのは、大きな意味があると思います。
ご協力に感謝します。
|
|
2009/9/3 (Thu) 11:05:52
|
[名前] : kuman
|
[URL] :
|
[コメント] : 原因不明のまま書き込みができました。
ハードウエアは、 HIDaspx:USBハブ使用、バスパワーで赤LEDで3.2Vに降圧したもの。 書き込み回路:LVP回復回路から006Pを外しただけのもの。 Vdd−Vss間に0.1uF、VUSBに0.1uFだけを接続したもの。 すなわち、水晶無し、VUSB−Vdd短絡無し、PGMプルダウン無し、 D+、D-にUSBの接続無し。 というものです。。
C:\0\desktop C:\0\PICspx.exe C:\0\bootloader-0000.hex *Device:PIC18F14K50 DEV_ID:0x4766 Erase ... Writing ... 0800 Verify Ok.... 0800 Writing Fuse ... WARNING: config LVP=OFF - ON . CONFIG: 00 32 2b 1e 00 88 05 00 03 c0 03 e0 03 40
一度だけで追試はしていませんが、とりあえず報告します。
|
|
2009/9/3 (Thu) 11:28:08
|
[名前] : kuman
|
[URL] :
|
[コメント] : (追試)新品への書き込み
まったく同じ条件で書き込んだのですが CONFIG: 00 00 20 00 00 00 04 00 00 00 00 00 00 00 となってダメでした。
そのまま(LVP可ですから) -eで消去して再び書き込むと正しく書き込めました。
新品はもう無いのでこれ以上はわかりませんが、 何とか書き込めるようです。
|
|
2009/9/3 (Thu) 11:30:54
|
[名前] : iruka
|
[URL] :
|
[コメント] : kumanさん、とりあえず書き込み成功おめでとうございます。 PIC18F 14K50は、かなりの気むずかしがり屋さんなので 私もいろいろ苦労させられました(PICmonの移植でいろいろトラブルにあいました)
senshuさんやFENG3さんはじめいろいろな方々のお知恵 を拝借できたので、あらためてNetコミュニティの有難さを感じました。
|
|
2009/9/3 (Thu) 14:12:56
|
[名前] : senshu
|
[URL] :
|
[コメント] : 皆さん、お疲れ様でした。
まだ最終的な決着は付いていませんが、なんとかなりそうだ、 という印象はあります。1年前のHIDaspに取組んでいた 時のことを彷彿とする経過です。
利用者が増えれば、諸問題も出てくると思いますが、それらを 解決することで、信頼性は大きく向上できると思っています (私はこうした件に関しては楽観派です)。
早速、私の考えでPICspxを修正してみましたので、kumanさんに 動作確認をお願いできればと思います。
こうしてノウハウを積めば、AVRもPICも似たようなもの、に 感じると思います。高級言語で書くなら、それほどの違いがある わけではありません。(PIC18にGCCはありませんが)
|
|
2009/9/3 (Thu) 14:37:20
|
[名前] : kuman
|
[URL] :
|
[コメント] : その後...
なかなか思うようにはなりません。 消去して書き直してみたのですが、連続5回configが0になりました。内1回はLVPが不可になりましたから006Pの助けを借りました。 6度目に正しく書けましたが、これも偶然(?)の可能性があります。
|
|
2009/9/3 (Thu) 08:20:27
|
[名前] : FENG3
|
[URL] :
|
[コメント] : おはようございます。
いま気が付いたのですが、みなさんがPIC18F14K50に書き込んで試しておられるプログラムは、どうやら
bootloader-0000.hex
のようですね。
コンフィギュレーションワードが下記のような設定ですので、次回から低電圧(単電源)での書き込みは不可能になり、読み出してもすべて‘0’になるはずです。
:020000040030CA :0100000000FF :0100010032CC :010002000BF2←パワーアップタイマが無効 :010003001EDE :010005008872 :0100060001F8←LVPが無効になっている :0100080003F4 :01000900C036 :01000A0003F2 :01000B00E014 :01000C0003F0 :01000D0040B2
また、パワーアップタイマが無効になっているので、電源が安定するまでリセット回路等を取り付ける必要があるかもしれません。
|
|
2009/9/3 (Thu) 08:27:02
|
[名前] : senshu
|
[URL] :
|
[コメント] : FENG3さん、いろいろとアドバイスをありがとうございます。
LVPのビットは、本来、目的とする用途ではOFFが望ましいので その設定になっています。ただし、PICspxではこの設定では 困るので、強制的にLVP=ONで書き込みを実行します。
パワーアップタイマに関しては、設定が漏れているかもしれません。
このあたりは十分な検討が必要な項目です。
|
|
2009/9/3 (Thu) 02:29:42
|
[名前] : kuman
|
[URL] :
|
[コメント] : 奇々怪々
送っていただいたPIC18F14K50(bootloader-0000.hex書き込み済み)をブレッドボードにセットして、picmon.exeを実行するとエラーが無く、p.コマンドで正しくポートデータを表示します。
ブレッドボードの接触不良を見越して専用ボードを作りました。 簡単な回路ですがpicmon.exeが認識しません。たまに何かの都合で認識することがあるので難儀です。
昨日は時間をかけながら点検をしたのですが徒労に終わりました。
今日はハードウエアはまったくさわっていないのですが突然認識するようになり、その状態が続いています。
配線間違いやハンダ不良はルーペを使って何回もチェックしましたが原因は不明です。
|
|
2009/9/3 (Thu) 07:45:44
|
[名前] : senshu
|
[URL] :
|
[コメント] : コンデンサやPGM端子の処理をご確認ください。
過去の例では、VUSBに0.33uF程度のコンデンサをつける、 PGM をプルダウンする、でしょうか。 これらを怠ると、報国のような症状ができます。
しかし、何度も確認されたとのことなので、原因は別かも しれません。VDDにも0.1uF+10uF程度の電解コンデンサを 付けるのもお忘れ無く。
|
|
2009/9/3 (Thu) 08:12:22
|
[名前] : kuman
|
[URL] :
|
[コメント] : ありがとうございます。
VddとVssのすぐ近くに0.1uF(AVRと違って付けやすい)と、PGM(Vddと直結ですが)に手持ちの関係で0.47uFのセラミックを入れています。 また、電源に22uFも入れました。 PGM端子は10kでプルダウンしています(4.7kも試しました)。
ピン18(D+)に触れたり、USBコードをつなぐとRC0のLEDの点滅状態が変わります。 プログラムがどのようになっているのかは理解していませんが。
|
|
2009/9/3 (Thu) 08:32:23
|
[名前] : senshu
|
[URL] :
|
[コメント] : VDDとVUSBは切り離してください。
VUSBは内部動作用の3.2Vレギュレータ端子であり、バイパ ス用にコンデンサをつけます。書き込みが完了したら、 VDDとは接続してはいけません。書き込み時、モードの別 なく書き込めるように暫定的に接続しているものと考えます。
PGMは通常はI/Oピンですが、LVP=ONの時には、GNDに接続 する必要があり、とりあえずプルアップで対処している、 というわけです。
|
|
2009/9/3 (Thu) 09:50:57
|
[名前] : kuman
|
[URL] :
|
[コメント] : VUSB端子
Vdd=3V(3.2V)の時だけVUSBとVddを短絡して良いわけですね。 Vddが3.3V〜5Vになるとレギュレータ出力と衝突することになる、ということでしょうか。
ところでVUSBはレギュレーション用のCを接続するだけの端子でしょうか。または3.2Vを他で利用する出力端子でもあるのでしょうか。 FTDI232?にも3.3V出力端子があったように思うのですが。
|
|
2009/9/3 (Thu) 14:21:42
|
[名前] : senshu
|
[URL] :
|
[コメント] : VUSBから電流が取り出せるかは不明です。
データシートを見ても、「0.22〜0.47 μF」を つけるべし、とあるだけです。
他の周辺を駆動するときに使えるかどうかは微妙ですが、 通常は、USBコネクタのVBUSを使うのだと思います。
他のI/OはVDDの電圧に沿って動作します。詳細は データシートをご覧ください。
A/DはREF電圧源内蔵なので、便利に使えると思います。 ローダが使えるようなら、PICspxのお世話になる事無く、 picmonで操作できます。
まずは対話モードで学習してください。
|
|
2009/9/2 (Wed) 21:18:08
|
[名前] : FENG3
|
[URL] :
|
[コメント] : 差し出がましいようですが、再び首をつっこまさせていただきます。
006P で +9V を印加し、修正したプログラムでバルク消去コマンドを実行するとデバイスの消去に成功するが、コンフィギュレーションワードの書き込みでいぜんとして失敗する、という次の問題。
バルク消去には10ms必要ですが、コンフィギュレーションワードの書き込みには5ms、プログラムメモリは1msです。単発のバルク消去の実行は、手動ですから10ms以上はかかるでしょう。連続したプログラムメモリの書き込みには、待ち時間が1ms以上はありますので問題ありません。そうなると、書き込みに失敗する、コンフィギュレーションワードの5msというのは、いったいどこで確保されているのでしょうか。
ソースコードの中のに、下記のような個所がありました。
void wait_ms(int ms);
Windows の Sleep() 関数は いったいどこで呼び出しているのでしょうか。
C言語のことはよくわかりませんし、テストできる環境もないので確かめようがありませんが、わたしなりに疑問符のついた個所です。
以上、間違っていたらごめんなさい。
|
|
2009/9/2 (Wed) 21:51:12
|
[名前] : iruka
|
[URL] :
|
[コメント] : FENG3さん、こんばんは。 wait_ms()はhidasp.cの最後に定義されています。 //-------------------- void wait_ms(int ms) { Sleep(ms); } しかし14K50は悩ましいですね。
|
|
2009/9/2 (Wed) 21:59:44
|
[名前] : iruka
|
[URL] :
|
[コメント] : ちなみに、fuseを書いたらゼロになる現象は 14K50だけで起きていて、18F2550や4550では このようなトラブルに見舞われたことがない (Delphi版のwriter509での書き込みを含めて) のでとても不思議です。
|
|
2009/9/2 (Wed) 23:57:07
|
[名前] : FENG3
|
[URL] :
|
[コメント] : そうですか。見当違いでしたか…。
5msが確保されているとなると、次に怪しいのは、
SetCmd16(b_0000,0x84A6); //BSF EECON1, WREN
ですかね。
わたしも当初はプログラミング仕様書通りにWRENビットをセットしていたのですが、コンフィギュレーションワードの書き込みが不安定になので、この1行を削除し、旧来の古い方法に戻してやると、安定して書き込むことができるようになりました。
WRENビットをセットしたら通常はWRビットもセットしなければならない決まりなのに、不思議なことに新しい仕様書ではコンフィギュレーションワードでWRENビットをセットしながらWRビットはセットしていません。
古い仕様書だとうまくいくのに、新しい仕様書だとうまくいかないということを何度か経験しましたので、トラップをしかけて自作派がはまってもがくのを面白がっているのかなあと、たまに思うことがあります。
|
|
2009/9/3 (Thu) 00:18:59
|
[名前] : すん
|
[URL] :
|
[コメント] : Sleep(ms)
Windowsのプログラムならちょっとやっているので書いておきます。マルチメディアタイマーAPIを使わないと正確なmsは出せないです。Sleepはいいかげんです。msの精度は出てないと思います。
あとPCによってもマルチメディアタイマーやSleepの精度は変わってきます。古いPCは精度悪いかもしれないです。
関係ない話だったらすいません。
|
|
2009/9/3 (Thu) 10:05:14
|
[名前] : senshu
|
[URL] :
|
[コメント] : Sleep関数の精度を向上する方法
すんさんからのアドバイスを参考に、その効果を検証する コードを書いて見ました。 http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php#qa0ac821
2行のコードを書くかどうかで、精度は激変することが わかりました。
なお、私は Windows2000で検証を行いました。
|
|
2009/9/3 (Thu) 10:07:52
|
[名前] : senshu
|
[URL] :
|
[コメント] : URLを修正します
私の掲示板のBUG?、該当ページの文字列が欠けることが あるようです。
正しくは、以下のURLです。 http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php?AVR%2Fnews44#qa0ac821
|
|
2009/9/2 (Wed) 17:38:19
|
[名前] : kuman
|
[URL] :
|
[コメント] : FENG3さんの方法
を試してみました。成功です。 006Pをつないで picspx -e を実行したら *Device:PIC18F14K50 DEV_ID:0x4766 と認識され、 CONFIG: 00 27 3f 1f 00 88 85 00 03 c0 03 e0 03 40 と初期値に戻っていました。(嬉しい!)
FENG3さん、senshuさん、ありがとうございました。 これで安心して実験できます。
|
|
2009/9/2 (Wed) 17:40:05
|
[名前] : kuman
|
[URL] :
|
[コメント] : 追記です
回路の電源は約3.2Vで、HIDaspxの電源も約3.2Vにしています。
|
|
2009/9/2 (Wed) 18:14:10
|
[名前] : kuman
|
[URL] :
|
[コメント] : しかし、残念ながら
bootloader-0000.hexの書き込みには成功しなかった。 またも CONFIG: 00 00 20 00 00 00 04 00 00 00 00 00 00 00
|
|
2009/9/2 (Wed) 18:43:28
|
[名前] : senshu
|
[URL] :
|
[コメント] : picspxはいつの版ですか?
irukaさんが公開している版にはEraseCommandの 設定値に不具合がある、との指摘がありました。 それを修正したものを私のサイトで公開中ですが、 2009-0902版でも同じ問題が残っているのでしょうか。
|
|
2009/9/2 (Wed) 18:46:05
|
[名前] : kuman
|
[URL] :
|
[コメント] : 2009-0902版を
使いましたがその結果でした。 しかし、LVPはONのようです。
|
|
2009/9/2 (Wed) 18:53:44
|
[名前] : senshu
|
[URL] :
|
[コメント] : >2009-0902版を使いましたがその結果でした。 >しかし、LVPはONのようです。
私が修正したのは、EraseCommandの不具合なので、 Eraseで初期化できる、とのことで改善はあったのだと 思います。
再度Config設定の不具合が再現するようですから、まだ 別の部分に改良すべき点が残っているわけです。
とりあえず、LVPの再設定が可能なことが確認できたので、 躊躇することなく、各種の実験が可能です。
そこで、irukaさん作のpicspxで初期化ができるかを 確認してもらえると、修正の妥当性が確認できます。
時間があるときに、検証をお願いできればと思います。
|
|
2009/9/2 (Wed) 18:57:42
|
[名前] : senshu
|
[URL] :
|
[コメント] : 確かに、前回の値とは異なるようです。
CONFIG: 00 00 20 00 00 00 04 00 00 00 00 00 00 00
前回は、20 の後は、すべて00 だったと思います。
少し、前進したようですが、まだどこかに修正すべき箇所が あるのですね。なかなか手応えがあり、楽しめます。
ということで、もうしばらくお付き合いください。
|
|
2009/8/31 (Mon) 22:04:17
|
[名前] : senshu
|
[URL] :
|
[コメント] : PIC18F14k50のPICspxでの不具合の件
kumanさんが確認したConfigの書き換え時の不具合に関し、 書き込みに用いた電源電圧の件で確認したいことがあります。
http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php?AVR%2Fnews44#dae68a4d
↑のURLに関連する情報を書きましたので、書き込み時に用いた 電源電圧を教えてください。
データシートによれば、+3V で動作させる必要があるようです。
|
|
2009/8/31 (Mon) 23:12:01
|
[名前] : kuman
|
[URL] :
|
[コメント] : senshuさんのサイトに書きましたが
5Vで書き込みました。 3Vと3.3Vに違いはあるのでしょうか。
|
|
2009/8/31 (Mon) 23:24:50
|
[名前] : senshu
|
[URL] :
|
[コメント] : 3Vと3.3Vに違いは無いと思います。3.3Vで動作確認したとの報告もあります。
なお、データシートには、以下のように書いてあります。
Voltage on D+ and D- pins with respect to VSS .......... -0.3V to (VUSB + 0.3V)
Voltage on all other pins with respect to VSS .......... -0.3V to (VDD + 0.3V)
|
|
2009/9/1 (Tue) 21:48:35
|
[名前] : senshu
|
[URL] :
|
[コメント] : 「高電圧プログラマ無しで、LVPをONにする方法」
FENG3さんのサイトで、PIC18F14k50のLVPを操作する 方法が紹介されているのを見つけました。
この方法を使えば、PICspxと9Vの乾電池があれば、LVPを 有効化できます。ぜひ、以下のページをご覧ください。
http://wind.ap.teacup.com/feng3/452.html
|
|
2009/9/1 (Tue) 22:44:42
|
[名前] : FENG3
|
[URL] :
|
[コメント] : 名前をよばれたような気がしたのでやってまいりました。
PIC18F14K50 のコンフィギュレーションワードの書き込みで問題があるようですね…。
ハードもデバイスのほうも問題はなさそうなので、さきほど、PICspx のソースコードを拝見しましたが、 デバイス定義で /*EraseCommand*/ Command81, となっており、 Command81は EraseCmd(0x0f0f,0x8787) と定義されていて、 ‘0x0f87’ を消去用のレジスタに書き込むように指定されています。
PIC18F14K50 のバルク消去のコマンドの値は ‘0x0f8f’ ですので、デバイス定義の記述が間違っていると思われます。
ですので、コンフィギュレーションワードの書き込みがうまくいかないものと推測されます。
また、もしそうだとすると、たとえ006Pで+9Vを補助したとしてもデバイスを確実には消去できないものとおもわれます。
以上、当該ハードウェアをもっていないため確認しようがありませんし、BASIC以外はAVRもC言語もよく知らない門外漢ですので、恥をかかないうちにこれにて失礼いたします。
|
|
2009/9/1 (Tue) 22:52:24
|
[名前] : senshu
|
[URL] :
|
[コメント] : FENG3さん、コメントをありがとうございます。
有益な情報をありがとうございます。
FENG3 さんの書き込みをヒントにすれば、問題の解決が 出来るかもしれません。
irukaさんの登場が待たれます。
|
|
2009/9/1 (Tue) 23:27:00
|
[名前] : senshu
|
[URL] :
|
[コメント] : EraseCommandのみ修正したものを作成しました
http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php#xfd783de
↑のURLにテスト用のアーカイブを置きましたので、時間が あれば、評価していただければ幸いです。
|
|
2009/9/1 (Tue) 23:28:38
|
[名前] : senshu
|
[URL] :
|
[コメント] : URLを間違えました。
正しくは、
http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php?AVR%2Fnews44#xfd783de
です。
|
|
2009/8/31 (Mon) 09:48:22
|
[名前] : kawana
|
[URL] :
|
[コメント] : O-FamilyさんのWRT2 Writerのスレッドに下記書き込み をしました。 HIDspx Writer3台目を製作してみました。 BASCOMでは、ISPmarkU、WRT2を使用している人が多く プログラム作成を主体に考える方が多いのでしょうか?(土曜に書き込みしましたが、書き込み、いまだに、有りません。?)
|
|
2009/8/31 (Mon) 09:55:37
|
[名前] : senshu
|
[URL] :
|
[コメント] : ライタは基本的な道具です。
目的では無いのだと思います。私は教材作成を進める 上で、数十台のライタコストを低減する目的があり、 開発を行っていますが、多くの方は、問題なく 読み書きが出来る限り、ライタにあまりこだわりはない のでしょう。
私のサイトの新掲示板に、Chuckさんとのやり取りをキッカケに、 おもしろい展開になっているので、興味があればご覧ください。
http://www-ice.yamagata-cit.ac.jp/forum/viewtopic.php?t=133
|
|
2009/8/31 (Mon) 07:12:13
|
[名前] : senshu
|
[URL] :
|
[コメント] : 私もPICkit2は、2台、手元にあります。
PICマイコンの書き込みは、高電圧プログラムが出来た方が 便利なのと、入手可能なPICマイコンの種類が多すぎるので、 ライタの自作を諦め、純正のライタを選択しました。 特別なヘッダなしでデバッグ機能が使えるものもあり、 それが使えるものを主に使っています。
しかし、純正ライタでも効率的な利用が出来ないチップも あるので、PICspxはその解決法の一つだと考えています。
|
|
2009/8/31 (Mon) 09:49:55
|
[名前] : senshu
|
[URL] :
|
[コメント] : すんさんへ(お願い)
PICkit3の使用しての感想をお聞かせください。
air_variableさんのサイトを見る限り、PICkit3はサポート ソフトが揃っていないようです。
月刊Microchip社のことですから、今は変わっているのかも 知れません。PICkit2に比べての利点を知りたいと思います。
|
|
2009/8/31 (Mon) 11:49:24
|
[名前] : すん
|
[URL] :
|
[コメント] : PICkit3
まだまだ本格的に使えるのはまだ先です。 ちょっと調べたところ、サポートデバイスはどんどん増えてきているようです。ネットで見つけた範囲では、速度が早くなるとか、入出力ピンの保護回路がかなり強化されたということでした。壊れにくいライターはコストに見合うものだと期待しています。
あとで中をあけてみます。
|
|
2009/8/31 (Mon) 12:37:22
|
[名前] : kawana
|
[URL] :
|
[コメント] : Pickit3 microchip Directから買えると エレキジャックに有りました。 価格は PICkit 3 69.99 Fright Charge 16.91 ImportVAT/Duty 3.50 Total 90.40$ pickit2は、新しいChipには、あるChipからは、未対応 になるのでしょうね? Pickit2-- 3にならないのかなんて考えました。(2台 有るので) Pickit3のクロ−ンを作成した人もいるようです。 Writerを理解している人は、クロ−ンを製作も楽しみでもあり、容易なのでしょう。知識、技術の有る方は 素晴らしいと思いました。 Kit3を買ってみようかな、クロ−ンを製作してみようかな?
|
|
2009/8/31 (Mon) 12:48:40
|
[名前] : kawana
|
[URL] :
|
[コメント] : 下記にPickit3の分解写真を撮影した方がいました。
http://www.ne.jp/asahi/air/variable/picmel/integration/write/pickit3/index.html
|
|
2009/8/31 (Mon) 13:03:03
|
[名前] : kawana
|
[URL] :
|
[コメント] : with PIC18F45k20 PIC18F45k20 (300¥?)が付いてくると、つい 買いたくなってしまいます。
|
|
2009/8/31 (Mon) 17:19:06
|
[名前] : kawana
|
[URL] :
|
[コメント] : マルツパ−ツ館でPickit3 8500\で販売されていました。
http://www.marutsu.co.jp/user/googlesearch.php?cx=002965441214196135403%3Aicsus0lqpfa&cof=FORID%3A11&ie=shift_jis&q=Pickit3&x=31&y=14#407
|
|
2009/8/31 (Mon) 19:59:44
|
[名前] : すん
|
[URL] :
|
[コメント] : 私の掲示板の次ページにPICkit3のクーポンで20%引きで買った書き込みをしています。
20%引きでなければ、国内で買うより高くなります。
でもPICkit2で書けないデバイスがでてきたら、PICkit3を用意すればいいと思います。今すぐ必要ないかも。
|
|
2009/8/29 (Sat) 00:42:50
|
[名前] : senshu
|
[URL] :
|
[コメント] : PICspxのConfig書き換えの検討経過
以下のURLにkumanさんの報告された件の検討経過を載せました。
http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php?AVR%2Fnews44#l7633dd8
kumanさんに、ぜひご覧いただきたいと思います。
|
|
2009/8/29 (Sat) 14:51:01
|
[名前] : kuman
|
[URL] :
|
[コメント] : ご連絡ありがとうございます。
悩ましい問題ですね。 irukaさんのところでは問題なく書き込めているそうで残念ですが。
正規の道具を使って処方どおりにすれば期待した結果が得られるのでしょうが、そこをごちゃごちゃしたがるのがアマチュアの面白いところです。
その点でアマチュアを楽しませてくれているsenshuさん、irukaさん、ChaNさん、kkkさんには深く感謝しています。
いつの日か16F14K50が使える日を楽しみに待ちましょう。(他力本願ですみません)
|
|
2009/8/29 (Sat) 16:13:24
|
[名前] : senshu
|
[URL] :
|
[コメント] : PIC18F14k50は入門者には魅力的な仕様です。
早期に安定した書き込み環境を用意したいと思ってます。 kumanさんの元で稼動するのももうすぐです。
PIC/AVRの比較をするまでもなく、TPOに応じて適正な マイコンチップを選択する時代になっていると思います。
|
|
2009/8/30 (Sun) 08:55:34
|
[名前] : kuman
|
[URL] :
|
[コメント] : AVRでPIC18F14K50を書けないでしょうか
18F14K50のHIDaspxによるLVP書き込みが成功せず、LVPが不可になってしまいました。 TADさんのところに「AVRで作るPIC Writer509」が有ります。
16F648Aを使ったHVPライタでは3.3V動作で18F14K50に書き込むことができるようですが、AVR2313を用いたHVPライタで18F14K50に書き込めるとCONFIGを回復できます。
可能性はいかがでしょうか。 また、なぜ5Vでなくて3.3Vなのでしょうか。
|
|
2009/8/30 (Sun) 09:20:48
|
[名前] : ノンノ
|
[URL] :
|
[コメント] : >16F648Aを使ったHVPライタでは3.3V動作 はどこかに情報が有りますでしょうか?
|
|
2009/8/30 (Sun) 09:49:49
|
[名前] : senshu
|
[URL] :
|
[コメント] : Writer509+b版は、TADさんの作ですが、irukaさんと私 も改良に協力しています。(経過は以下のURL参照ください)
http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php?AVR%2Fnews44#o130b525
改良版のWriter509+b版は、以下のページです。
http://homepage2.nifty.com/denshiken/PIC007.html
このライタを作るのも一案ではあります。
HVP方式のライタがあれば、安心して実験ができます。
|
|
2009/8/30 (Sun) 10:06:36
|
[名前] : senshu
|
[URL] :
|
[コメント] : AVR版 Writer509の注意点
AVR版のwriter509は、PIC18用の拡張コマンドに未対応です。
したがって、PIC18F用に利用する場合には、AVR用のコードに そのためのコードを追加するか、AVR版のPICライタで、 PIC12F675辺りを使ったWriter509を作り、それでPIC18F用に するなどの工夫が必要だと思います。
PC18F14k50に+3.3Vで書き込んでいるのは、TADさんの想定 している使い方が3.3V動作モードという理由だと思います が、詳細は吟味していません。USBで動作させる場合には、 +5Vで動作していると、不整合が起きやすいのは事実です。
|
|
2009/8/30 (Sun) 11:40:58
|
[名前] : kuman
|
[URL] :
|
[コメント] : senshuさん、ありがとうございます。
PIC12F675(16F648A)を書くAVR使用ライタを作って、それを使って18F14K50を書くライタを作って…
と道は遠いようですね。 勉強と時間と経費を少なくするのは無理なようです。 ぼつぼつ。
|
|
2009/8/30 (Sun) 13:47:13
|
[名前] : senshu
|
[URL] :
|
[コメント] : PICspxは、そうした手順を不要にするので画期的なわけです。
今しばらく、改良をお待ちください。
|
|
2009/8/30 (Sun) 14:58:28
|
[名前] : kuga
|
[URL] :
|
[コメント] : 規格を守って書き込むには3.3V動作が簡単です。
ライターを5Vで動作させ信号ラインに5V加わると 18F14K50の定格を満たせなくなります。
技術的な部分はsenshuさんの掲示板に書きました。
http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php?AVR%2Fnews44#a3096fac
|
|
2009/8/30 (Sun) 22:01:32
|
[名前] : ノンノ
|
[URL] :
|
[コメント] : pickit2でほとんど足りますので、 おそらく作らないとは思いますが、
書き込み機構に興味はあります。
USBバスでは5vですが外部電源の場合の3.3vなら PICの側のブラウンリセットを低くして対応し、 HV用には12V近辺を作るのですね。
pickit2の場合はVddをソフトで決め、HVは内部自動の様です。
|
|
2009/8/31 (Mon) 03:44:09
|
[名前] : すん
|
[URL] :
|
[コメント] : 今日納期なのにまだまだ終わらない仕事ですが、pickit3がアメリカから到着しました。赤い色のライターでおしゃれです。USBケーブルも赤い色。
MPLAB IDEではマイコンの型番によってpickit2が完全対応でなく黄色マークになっているものがあります。それでもpickit3は緑色の完全対応になっています。
picはライターでハードデバッグできるから便利です。またpickit2ではUARTツールやlogicツールにもなりました。今度のpickit3はどうなることやら。楽しみです。
早くPIC24FやdsPIC3xで何か作りたい。
|
|
2009/8/31 (Mon) 06:58:41
|
[名前] : senshu
|
[URL] :
|
[コメント] : PIC18F14k50の問題点
PICspxがターゲットにしているPIC18F14k50は、書き込み用のピンが USB通信用のピンに割り当てられています。つまり、デバッグ用の特別な PIC18F14k50を利用しない限り、デバッグ機能は有効には使えないのです。
これは、PICkit2, PICXkit3などの純正ツールを利用しても改善できません。
そこで、安価に使え、効率的に開発できる方法として、USB BootLoaderを 用意するのが便利だと考えています。これがあれば、書込みは配線変えも 不要で、Arduino並みの使い方が可能です。
ということで、このマイコンは、廉価で初心者用と紹介したのですが、プロが 使う場合には、投資が必要になるデバイスですので、ご注意ください。
|
|
2009/8/31 (Mon) 07:55:14
|
[名前] : senshu
|
[URL] :
|
[コメント] : 私も、2台のPICkit2を使っています。
HVプログラムが出きるのは大きな利点であり、自作ライタを 多品種のPICマイコンに対応するのは容易ではありません。
PICkit2でデバッグが可能なPICマイコンを主に使っていますが、 PIC18F14k50は、そうしたマイコンではなく、PICkit2のような 純正ライタでも、配線替えが必要などの面倒があります。
そこで、BootLoader方式に注目しているわけです。さらに、 このBootLoaderは一度書き込むだけで良いので、書き込みに 時間がかかっても、我慢できます。
PICマイコンのファンを増やす、有効な方法と考えています。
|
|
|