2025.3.21
前へ
次へ
ホームページトップへ戻る


超ローコストPICWRITERの製作

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
「PICBASICコンパイラ」からスピンオフ!!
過去記事を参照することなどを考えて該当する過去記事は「PICBASICコンパイラ」のまま連載回もそのままとします。
以後は前回記事からの流れで[第236回]からとします。
「PICBASICコンパイラ」はなるべく早く連載を再開したいと考えています。
PICはローコスト、高機能で種類も豊富なお手軽マイコンですがプログラムを書き込むためのWRITERが必要です。
それをできるだけ安価に作ってしまおうというプロジェクトです。
最終的には製品化を考えています(組立キット、完成品)。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

[第239回]



●PIC16F1503(3)/ERASE

ノートを確認したところPIC16F1503用のWRITERプログラムは今年1月に作成してテストもしておりました。
もううっすらとしか記憶に残っておりません。
その後にPIC16F627とか16F628AなどのWRITERプログラムを作ってきたため、当初作成したPIC16F1503用のWRITERプログラムとはかなり違ってきてしまっているのではと思います。
PIC16F84A用WRITERプログラムはPIC16F84、PIC16F84A、PIC16F627用WRITERとして使えることを確認しました。
PIC16F628A用は別に作りました。
多分PIC16F84A用のWRITERプログラムはPIC16F1503用のWRITERにはならないだろうなとは思いましたが全く駄目なのかある程度直せば使えるのか、そのあたりをまずは試してみることにしました。

最初は/ERASEです。
PIC16F1503をWRITER回路にセットしてPIC16F84A用のWRITERプログラムでテストをしました。
ここでひとつ注意する点があります。
PIC16F1503はPIC16F84やPIC16F627などよりもずっと新しいPICなので書き込み用のVpp電圧が低くなっています。


[出典]Microchip Technology Inc.PIC16F150X Memory Programming Specification

Vppは8V〜9Vです。
13.5Vをかけてしまうと壊れてしまうかもしれません。
Vpp電圧には十分注意する必要があります。

/ERASEを実行したあと/PICRDを実行しました。
logfile piciolog\0321175144.txt open
*** pic i/o ***
picio-30 connected
>/erase
400C[FF][3F][FF][3F]
>/picrd
400C[FF][3F][FF][3F]
type=04,uadrs=00
[08]
0000[10][05][28][FF][3F][FF][3F][FF][3F][FF][3F][21][00][68][30][99][00]
0010[10][8E][01][23][00][8E][01][20][00][14][20][14][20][14][20][14][20]
0020[10][21][08][8E][00][A1][0A][0C][28][19][20][19][20][19][20][19][20]
0030[10][08][00][00][00][A0][0B][19][28][08][00][FF][3F][FF][3F][FF][3F]
0040[10][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F]
0050[10][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F]
0060[10][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F]

予想はしていましたがやっぱり全然消去できませんでした。
/PICRDはできたようです。
それらしいデータが読み出せています。
このPIC16F1503には今年1月に作ったWRITERプログラムでテストプログラムを書き込み済みだったようです。

PIC16F1503のData Sheetと1月に作成したPIC16F1503用のWRITERプログラムとPIC16F84A用のWRITERプログラムを比べてみて/ERASEと/PICWRのプログラムで異なっているところをPIC16F1503用に合わせて新しいWRITERプログラムを作成しました。
PIC16F84AWRITERプログラムをもとにして上記の部分を変更して新しいPIC16F1503WRITERプログラムとしました。

もう一度/ERASEを実行したあと/PICRDを実行しました。
logfile piciolog\0321181328.txt open
*** pic i/o ***
picio-30 connected
>/erase
400C[FF][3F][FF][3F]
>/picrdf
400C[FF][3F][FF][3F]
type=04,uadrs=00
[08]
0000[10][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F]
0010[10][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F]
0020[10][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F]
0030[10][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F]
0040[10][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F]
0050[10][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F]

07D0[10][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F]
07E0[10][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F]
07F0[10][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F][FF][3F]
[01]
type=04,uadrs=01
[08]
400E[FF][3F]
[10]
>

/ERASEは正しく実行できるようになりました。

時間がなくなってしまいました。
次回に続きます。

超ローコストPICWRITERの製作[第239回]
2025.3.21 upload

前へ
次へ
ホームページトップへ戻る