1. | はじめに | |||||||||||
PICのプログラム書込み時間は数十秒で済み、一昔前にマイコンで2732等にプログラムを書いていた頃に比べたら隔世の感があります。 しかし、「1BIT I/Oでのシリアル送受信実験」のページで紹介した1ビットシリアル通信を使ってディバッグしながらPICライタでプログラムを更新するためには、シリアルケーブルの繋ぎ替えが必要であり、またPIC自体の抜き差しも必要で不便でした。 そこで1BITシリアル通信を使ったPIC16F88用のブートローダを作成しました。シリアル通信はソフト制御なので好きなI/Oピンを割り振ることができ、プログラム更新とディバッグとでケーブルの繋ぎ替えもPICの抜き差しも必要なくなるのでディバッグ環境がかなり改善されます。 今回は勉強も兼ねてパソコン側のソフト開発環境としてマイクロソフトのホームページから無料でダウンロードできるVisual C++ 2005 Express Editionを使いました(自前でVC6は持っているのですが)。 ガベージコレクションでメモリ領域が管理されたことで開放忘れを気にせずにプログラムできるのは良いのですが、慣れていないせいもあってヘルプを引き引きのんびりと作りました(VC6で作った方が絶対早かったでしょう・・まぁ馴れれば.Net環境でも効率が上がるのでしょうが) |
||||||||||||
2. | 特徴 | |||||||||||
主な特徴は次のとおりです。 |
||||||||||||
|
||||||||||||
3. | 使用方法 | |||||||||||
本ブートローダを使用するためには、PIC側ハードウェアがパソコンとシリアル通信できることが基本条件です。 「1BIT I/Oでのシリアル送受信実験」のページで紹介している1bit通信用のハードウェアを作成することを推奨します(ディバッグにも役立ちます)。 MAX232等のI/F用ICを使ったインターフェースでも使用可能です。 本ブートローダの使用手順は
|
||||||||||||
4. | ダウンロード | |||||||||||
本ソフトウェアのダウンロードはここをクリックしてください。 |
||||||||||||
5. | その他 | |||||||||||
|
[history] | |
---|---|
2008/11/23 Ver 0.0.5 |
16F88に内蔵のシリアル通信機能(USART)に対応。従来のソフトウェア通信の場合のブートローダサイズをダイエット。 注意:バージョンアップはPIC側とPC側の両方行ってください |
2008/10/04 Ver 0.0.4 |
PC環境により、動作しないという報告を頂きましたので、WinXPで再コンパイルしました。(前回はWin2Kでコンパイル) |
2008/04/19 Ver 0.0.3 |
Vcc5V時の安定化のために配布版の通信速度を19200bpsから9600bpsに変更 (通信速度を下げても予想に反して書込み時間はほとんどかわらず(EEPROM書込み自体に時間がかかっているということでしょう)) 0000hにgoto 1のようなコードはうまく動作しませんでしたが今回対応しました。(大久保様 バグレポートありがとうございました) 注意:バージョンアップはPIC側とPC側の両方行ってください |
2006/02/12 Ver 0.0.2 |
初期化処理を含まない部分的なコードの書込みに対応 |
2006/01/22 |
more shorter code and modify receive error function by T.Satoh |
2006/01/09 |
first published by T.Satoh |