「PIC AVR 工作室」サイトの日記的なブログです。
サイトに挙げなかった他愛ないことを日記的に書き残してます。
PIC AVR 工作室 ブログ



負電圧生成のプログラム、PICKIT2でも書き込みが
出来るよう、HEXファイルにconfigを埋め込むように
ソースプログラム・HEXファイルの修正を行いました。

対象ファイルは、OS-CON用に作ったプログラム
 ・25000Hz用
 ・50000Hz用
 ・100000Hz用
の3つのプログラムです。(100000Hzは、
公開を忘れていたので併せて公開しました)
↓すべてこのページでダウンロードできます。
http://picavr.uunyan.com/experiment_nega2.html

なお、MikroBASICで作ったプログラム
(電解コン用に作ったプログラム)には元々configを
埋め込むように環境設定されていたので、問題なく
使えるはずです。(変更なし)

もし、OS-CON用のプログラムをPICKIT2で
使ってうまく動かなかった方がいらっしゃったら
ゴメンナサイ。m(_v_)m

もちろん、元々のHEXファイルでも秋月ライターなら
問題なく動きます。が、一応念のため、新しいHEX
ファイルに置き換えていただければと思います。

よろしくお願い致します。



コメント ( 0 )




PICKIT2でconfigワードの設定が出来なかった
という件。色々調べてみました。

(1)PICKIT2で書いて秋月ライタで読んだ場合

 →初期値のままで読み込まれました。

(2)秋月ライタでconfigの設定してからPICKIT2で読み込み

 →設定したものと同じらしきものが読めました。
  ただし、秋月ライタで書いたものとはなんか違う
  感じ。頭4ビットがなんか変。
  (秋月ライタ:21B4  PICKIT2:01B4)

  なお、configの設定は以下のとおりです。
  FOSC:INTOSC(GP4:I/O)
  WDTE:Disable
  PWRTE:Disable
  MCLRE:MCLRpin
  BODEN:Disable
  CP:Not_Prtect
  CPD:Not_Protect

やっぱり、今のHEXファイルってconfigワードを
含んでいるんですね。調べていてようやく判りました。

後田 敏さんのブログの過去ログ↓
http://goda.blog3.fc2.com/blog-category-5.html
の、「PICkit-2更新レポート」という記事に
かかれていました。

曰く、
 >問題点といえば、Configワードの指定が
 >できなくなっています。HEXだけ配布する
 >プログラム、「CONFIGデータを書き込み
 >プログラムで設定してマイコンに書き込む」
 >と言うケースではこのライタプログラムでは
 >できないことになります。
 >今後HEXファイルを配布する人はConfigワード
 >をソースコード内で指定してHEXファイルを
 >配布する必要があるようです。
とのこと。

そうですか。確かに今回のプログラム、ソース中に
コンフィグの設定は書いてません。PICKIT2で
使う人が今後多数派になるでしょうから、
負電圧生成のPIC用プログラムはすべて見直しして、
一通り修正しておきたいと思います。

しばしお待ちを。

MikroBASICの方はプログラム中でちゃんと
設定出来るんだったっけかな???調べておきます。

長いことPICをほとんど使ってなかったので、
浦島太郎の気分です…。


そうそう、config関係の参考になるサイトを見つけました。
http://einst.hp.infoseek.co.jp/config.html

ページの最下部あたりに、アセンブラでのconfigワード
指定方法がかかれています。



コメント ( 0 )




「PICKIT2もどき」の書き込みテスト、
無事出来ました。

色んなチップを書いてみようと思ったんですが、
とりあえずHEXファイルがすぐに取り出せた
16F629だけ試してみました。

秋月ライターのようなZIFソケットが目下のところ
ないので、とりあえずブレットボードで試しました。

配線はここ↓に書いてある通り、5本の信号線を
直接PICに繋ぐだけ。
http://www.geocities.jp/p400w/115_pickit2ZIF/115_pickit2ZIF.html


まずは電源をオン。…直後に16F629を認識しました。

次に読み出しを。
以前書き込んでおいたなんかのプログラムが読み出せ
ました。エラーなし。

次に、負電源生成時に作ったプログラム(25kHzで
発振するやつ)を書き込んでみました。↓このページにあるやつ。
http://picavr.uunyan.com/experiment_nega2.html

書き込みでエラーなし。ベリファイでエラーなし。
読み込みでエラーなし。

そして、100kHzで発振するプログラムも
書き込んでみました。
(あ、今見たら、100kHzのプログラムはまだ
 貼ってなかったですね。あとで修正しておきます。
 すみません。)

書き込みでエラーなし。ベリファイでエラーなし。
読み込みでエラーなし。

うーん、完璧( ̄ー ̄)

電圧の表示も正しく出ているし、デジタル信号の
入出力も、電力供給も、リセット信号も問題なく
繋がっているようです。

あとはIDE環境機能を使ってみることが未確認なのと、
あとPICに電源が供給されている状態(つまりICSP)
での書き込み時に支障が無いかが未確認なのと、
外部発振子がついている場合にちゃんと書き込めるのか
が未確認ですね。

信号自体はちゃんと生きているようなので、
1件目は多分大丈夫でしょう。残りの2件は配線ミス
(はんだミス)等があるかもしれないので、あとでちゃんと
確認しておかないといけません。

いずれにしても、簡単に作れて安定して動いて、
よく出来たキットだと思いました。

やっぱZIFソケットのキットも欲しいなぁ。

そういえば、FUSEビットってどうやって設定すれば
いいんだろう?
画面上には無いんだけど…

今のHEXファイルって、FUSEビットも含んでいる
ものなんですか?
最近AVRばかり弄っていたので、あまりそこらへんの
事情に詳しくありません。あとで調べようっと。

そういえば、書き込み時にFUSEかなにかのメッセージ
が表示されていたけど、無視して書き込んだら書けちゃった
のであまり気にしてなかった…

あとで秋月ライターで読み出してみようかな…
FUSEがどうなっているのか。



コメント ( 0 )




ようやくPICKIT2をGETしました!

といっても、いわゆる本物ではなくクローンキット↓
http://iizukakuromaguro.ocnk.net/product/57

先日届いたので、昨日黙々と作ってました。ここに↓
http://www.geocities.jp/p400w/145_hobopickit2/145_hobopickit2.html
作り方が載ってて、このとおりに作ったら普通に動きました。

表面実装のFETが2個あるのですが、それ以外は
簡単に作れると思います。

PC側からもPIC側からも本物のPICKIT2として
認識されているようです。

昨日出来上がったので、早速ファームウェアを
最新版にしてみました。あっさりと更新できました。

夕べはここまで。
作り終ってファームウェアを更新した時点で遅くなって
しまったので、続きは今晩にしました。

ひとまず、ちゃんと書き込めることを確認しておかないと。
AVR-ISPmk2と違って、ターゲットに電源とか
クロックとか供給されてなくても動くので、ブレット
ボードでも書けるのが簡単で良いですね。

あと、赤ボタンのPICKIT2と互換なので、
MPLABからIDE用のコネクタとして
使うことも出来て、物凄く便利です。

今までは秋月のライターを使ってきたのですが、
IDEが使えるというのがなによりのメリット。
もちろん、対応機種が一気に増えるというのも
魅力ですが。

ハード的には本物と(ほぼ)同じ回路とプログラム
で構成されているので、今後発売される新しい
デバイスにも、ファームのバージョンアップで
即時に対応できるでしょう。

秋月のライターは、2線、3線のシリアルEEPROM
に使うと便利だし、いざ、このPICKIT2もどき
の18F2550ファームが破壊された時に、
秋月ライターで書いたり出来るので、手元に残して
おいて損はないでしょう。

ちなみに、黒ボタンのPICKIT2から赤ボタン仕様
に変更する方法がこちら↓に載ってました。ご参考まで。
http://www.ne.jp/asahi/air/variable/picmel/integration/write/pickit2/index.html

これから色々なチップに書けるかを確認します。

そういえば、この↓ZIFソケットキット。
http://iizukakuromaguro.ocnk.net/product/28
ICSPコネクタ使わずに単体で書き込む場合に
便利そうなんだよなぁ…
このピン配置、頭いいなぁ…




コメント ( 0 )




マイコンで、NTSCのコンポジット信号のカラー化に
ついても検討中という話を一昨日書きましたが、あれ以来、
どうやって90°より小さい単位の位相ズレのデータを
出力すれば良いのか悩んでいました。14.32MHz
よりも細かく分割したクロックを使うのかなぁ…とか。

で、色々考えつつ、初心に戻って、ビデオ出力をやりたい
と思ったきっかけのサイト↓
http://www.geocities.jp/kwhr0/hard/pc8001.html

(FPGAでPC-8001を作る計画)
を眺めていたのですが、YUVのVとUの信号を
V、U、-V、-Uの順で出力すればいいと書かれて
いるのを見て、しばし考えながら、ふと思いついたのが
標本化定理(サンプリング定理)のこと。
http://ja.wikipedia.org/wiki/%E6%A8%99%E6%9C%AC%E5%8C%96%E5%AE%9A%E7%90%86

標本化を行う時には元の信号の持っている最小周波数
の半分以下のサンプリングレートで標本化し、それを
再生する際にはサンプリング周波数以上の高周波を
LPF(ローパスフィルタ)でカットすることによって
もとの情報を再現できるというアレです。

私、この定理って、周波数情報の再現が出来るという
所までで理解が留まっていたのですが、メモ用紙に
単位円とサイン波のグラフ書きながらぼんやり考えていたら、
位相のズレまできちんと再現できることにふと気付きました。
(当たり前といえば当たり前だったのですが…)

そうかぁ。であれば、UとVが求まれば、YCのC信号は
簡単に再生できるんだなぁ…。( ̄ー ̄)ニヤリ

色が再現できちゃえば、あとはY信号(輝度)及びUVの
大きさ(色度)をDA変換で好きなように生成できれば
好きなだけ色が表現できるようになると…。

ははぁ、野望に向かって1歩前進!! よかった。よかった。

あとは、実際の回路とプログラムですが、若干
細かいところで調べないといけないことが残っては
いるものの、作りながら動かしながらやっていけば
何とか解決できる範囲でしょう。

いずれにしても、まずはマイコン1個(+外付けの
ロジックIC数個)で4色自由自在出力に挑戦だな!

うーん、楽しみ( ̄ー ̄)

(いざ作り始めたらあれこれ悩むんでしょうけど…
 まぁ、遠足は行く前が一番楽しいといいますから…)




コメント ( 0 )



« 前ページ 次ページ »