なんでも作っちゃう、かも。

Arduino/Make/フィジカルコンピューティング/電子工作あたりで活動しています。スタバの空きカップを使ったスタバカップアンプなど製作。最近はもっぱらArduinoと3Dプリンタの自作に興味があります。

picburn-0.5.1 リリースしました。

Posted by arms22 on 2008年08月23日 11  2

picburn-0.5.1 リリースしました。0.5.0で行ったコード整理で不具合を混入してしまいました。0.5.0をお使いの方は0.5.1へのアップデートをおすすめします。
主な変更点は次の通りです。

  • PIC18Fファミリでプログラムメモリのベリフィに失敗する不具合修正
  • PIC18Fファミリでコンフィグレーションメモリの書き込みができない不具合修正

リリーステストが甘すぎました。もっと効率的に確実にリリーステストを行える方法を確立しないと。

対応デバイス一覧
http://arms22.blog91.fc2.com/blog-entry-157.html

Windows用バイナリ
http://xfind.hp.infoseek.co.jp/electric/picburn/picburn-0.5.1-i386-mingw.zip

ソースコード
http://xfind.hp.infoseek.co.jp/electric/picburn/picburn-0.5.1.tar.gz

Ads by Google

11 Comments

JS3SUH says...""
こんばんは。
先日、picburnの記事を見かけて興味をもっておりました。
回路図を見させていただいた所、とてもシンプルで作りやすそうです。ところで回路図をみてて思ったことを少し…

コアデバイスのFT232RLですが、今の回路ではVCCIOとVCCは同一に成っています。FT232RLのデータシートを見ると1.8~5VまでのデバイスにI/F出きるとあります。これは、VCCIOにI/Fしたい側の電源を入れれば各信号TXD/RXD/DTS/RTSにそのレベルで入出力出来ると言うことだと思います。
なので、VCCIO/Q1のVCC/Q3のVCCをボード側から取る様にすれば(SW等で切り替えられると尚良し)2V~5Vの回路にそのまま本機を使えるのではと思いますがいかがでしょうか?。今の構成だとチップ単体or5Vのボード限定の回路ですよね。USB-Serialからとれる電流もしれていますし、ボード側のVCCに繋がっている周辺回路が多くの電流を取ってしまうと書込が出来ないとおもいます。なので、ボード側から電源が取れる方がICSPとしては確実ではないかとおもいます。
(ICD2の出力回路はたしかボードから電源を得てレベル変換していますね。)

回路を見るとDATAは単にFT232RLのTXD/RXDに接続されています。USBドライバをVCOMドライバに差し替えれば単にUSB-Serial変換として動作するようにおもいます。PIC動作時にDATA線をソフトシリアルのポートにすれば半二重でPCと通信できます。これはデバッグに有効活用出来そうです。
しいていうなら、ドライバの入れ替えが面倒なんですが(--;

手元にFT232RLが有ればとやかく言う前に試作してみたかったのですが、今在庫を切らしていますので作ってみることが出来ずヤキモキしているところです。
2008.08.27 20:13 | URL | #frUh5rcM [edit]
arms22 says...""
>VCCIO/Q1のVCC/Q3のVCCをボード側から取る様にすれば
>(SW等で切り替えられると尚良し)2V~5Vの回路にそのまま
>本機を使えるのではと思いますがいかがでしょうか?。

はい。その通りです。
私は秋月のFT232RLモジュールを利用しているのですが(FT232RL周りの回路は秋月の回路図からおこしたものです)、このモジュールはVCCIOを5V,3.3V,外部電源をジャンパで切りかえれるようになっています。
低電圧デバイス(dsPIC33やPIC24Fなど)に対応するときに回路図に描こうと考えていました。
ICSPとして使うためにはやはり外部から電源を取れるようにしたほうが良さそうですね。

>PIC動作時にDATA線をソフトシリアルのポートに
>すれば半二重でPCと通信できます。

TXD→DATA(IN)
RXD→CLK
RSD→DATA(OUT)

とすれば送受信両方可能ですね。。
2008.08.28 09:35 | URL | #j7sy4omY [edit]
JS3SUH says...""
>低電圧デバイス(dsPIC33やPIC24Fなど)に対応するときに回路
>図に描こうと考えていました。
>ICSPとして使うためにはやはり外部から電源を取れるようにし
>たほうが良さそうですね。

そうですねー。実際、VCCIOとTR周りだけなら簡単なSWだけですみそうですが・・・。そういえば、3.3VもFT232RLからとれるんでしたね。外部/3.3/5の構成は良さげです。

こんなシンプルな回路で一人二役なのはいいですね。強いて言うならソフト入れ替えではなくSW一つで切り替われば・・・と思うのですが、こればっかりは仕方ないですね。
2008.08.28 13:44 | URL | #frUh5rcM [edit]
arms22 says...""
MacOSX用のD2XXドライバが新しくリリース(0.1.14)されていたけどVCPドライバとは別のままでした。。Linux版は更新されず。Windows版みたいに統合してほしい!
2008.08.28 17:57 | URL | #j7sy4omY [edit]
JS3SUH says...""
こんにちは。JS3SUHです。
先日、picburnを試作して今試用している所です。
自blogにも書いたとおり、上の内容を含めVDD供給(5V/3.3V)/VDD外部(2~5V)で動く様作って見ました。
在庫の面実装部品を多様した為、VDD制御のTrのhFE不足(汎用小信号Tr hFE 160~240)か大型PICや16F819等のデバイスでVDD供給でプログラムできず悩みましたがVDD外部にする事で問題なくできました。
外部供給は結構便利かもしれません。

所で、今私の手元では困ったことが起きています。
プログラムを書いたPICに再度プログラムが出来ないのです。
具体的にはPIC16F819の内蔵クロック動作、PGC/PGD端子を出力Hにして電源を回路から供給とするとプログラムが出来なくなります。PGC/PGD端子が入力に設定されている場合にはなんら問題なくプログラムできました。
MCLR有効状態ならMCLR端子を1k程度の抵抗でプルダウンする事でプログラム出きるのですが、MCLR無効ではお手上げです。

arms22さんの所では同様の事、経験したことないですか?

2008.09.14 13:53 | URL | #frUh5rcM [edit]
arms22 says...""
JS3SUHさん

こんばんわ、arms22です。

PIC16f818/819のProgramming Specificationを読むと、VDDを立ち上げてからmax250us以内にVPPを立ち上げないと命令が実行されて、プログラムモードに入れないみたいです。

オシロがあれば、VDD、VPPの立ち上がり波形を確認してみてください。
ICSPで書き込みをしている場合、PICを回路からはずして単体で書き込めるか確認してみてください。

2008.09.14 20:11 | URL | #j7sy4omY [edit]
JS3SUH says...""
JS3SUHです。

早速、確認ありがとう御座いました。
後関さんのHPのICSPの項目をみると、ICD2はターゲット側電源を入れておいて書き込みをするように書かれているので、VDD->VPP間にタイムアウトは無い(どのタイミングでもOK)と思っていたのですがそうでは無いようですね。

とりあえず、うちが作ったPICBURNではPIC16F819単体にうまく書き込め無いので(恐らくVDDの電流不足。84A/628には書き込める)その辺りを改善して試してみます。
2008.09.14 21:08 | URL | #frUh5rcM [edit]
JS3SUH says...""
JS3SUHです。
先日のPIC16F819にICSP出来なくなってしまった件、自作のPICBURNを修正して単体での書込で対処出来ました。
お手数掛けました。

ところで、うちのpicburnはVCCIOを外部から引き込めるようにしたため基本的に2V程度からプログラム出来る筈(だと思っていますが)なのですが、イレースコマンドによっては4.5V以上無いとダメな様です。例えば819とか?bulkイレースではなくchipイレースするものかな?。chipイレースがあるPICでもbulkイレースが使えるのであれば、オプションでbulkイレースも使用出来るようにならないでしょうか?
2008.09.18 01:39 | URL | #frUh5rcM [edit]
arms22 says...""
JS3SUHさん

arms22です。

>単体での書込で対処出来ました。

こちらの記事で書き込みに失敗する時の対処法を
良くある問題としてまとめています。

http://arms22.blog91.fc2.com/blog-entry-151.html

ERASEやWRITEができない場合などはVDD電圧,VPP電圧が低い、
またPGM端子が処理されていないなどが殆どのようです。

特にVBusから12V(VPP電圧)を作っている場合など、
昇圧回路の設計がまずいとVBus電圧が4.5V以下まで下がってしまい、
ERASEできないことがあります。

>オプションでbulkイレースも使用出来るようにならないでしょうか?

現在のpicburnのソフトではchip eraseで先に全消去してから、
書き込みを行うような処理になっています。
低電圧で書き込みを行う場合、1行消去して1行書き込むという手順で行います。
bulk eraseコマンドを持たないPICが多いので、低電圧での書き込みは対応していません。

少々込入った処理になるので対応は、、、です。
2008.09.18 11:24 | URL | #j7sy4omY [edit]
KATSU says...""
arms22さん、こんばんは、KATSUです。

picburn便利に使わせていただいております。
本日、picburn-0.5.1 windows用バイナリを使ってみましたが、cygwin1.dllが見つからないというダイアログが出て起動しません。0.3.0以前では問題ありませんでした。
現在、自分のblogでDSCという望遠鏡の向きがわかる装置の公開を行おうと考えており、picの書き込み用にpicburnの使い方を含めて紹介しようと考えておりますが、天文屋さん(電気・ソフトの素人)にcygwinをインストールしろというのはチョッと難しいと思っています。
とりあえず、0.3.0でも(User IDを000にしておくので)問題ないと考えておりますが、こちらを紹介して問題ないでしょうか?
また、それにより、変な質問が入るかもしれませんが、その時は、私に振ってください。

更なる進化を期待しております。
よろしくお願いいたします。
2008.10.29 01:16 | URL | #jY80.r9g [edit]
arms22 says...""
KATSUさん

ご報告ありがとうございます。
cygwin1.dllが見つからないというのは、
意図した動作ではないので確認します。

問題を修正してアップし直すまで、
少し時間がかかると思います。
それまではver0.3.0をお使いください。

ご迷惑をお掛けして申し訳ないです。。
2008.10.29 10:09 | URL | #j7sy4omY [edit]

Leave a reply






管理者にだけ表示を許可する

該当の記事は見つかりませんでした。