PIC16F88 boot loader [PIC]
OneBitLoaderではシリアル送受信を1つのI/Oポートでソフトウェアで実現していましたが、16F88に内蔵されているハードウェア調歩同期シリアルI/F(USART)に対応してみました。
シリアル通信部分はハードウェア処理でサイズが小さくなるのでブートローダサイズの最小化を目指した結果、0x0fa2-0x0fffの94ワードに収まりました(^^)
従来のソフトウェアによる1ビットシリアル送受信の場合も138ワードにダイエットできました。
近々公開予定です。
[ 前へ ] 連載記事 [ 次へ ]
シリアル通信部分はハードウェア処理でサイズが小さくなるのでブートローダサイズの最小化を目指した結果、0x0fa2-0x0fffの94ワードに収まりました(^^)
従来のソフトウェアによる1ビットシリアル送受信の場合も138ワードにダイエットできました。
近々公開予定です。
[ 前へ ] 連載記事 [ 次へ ]
2008-11-17 02:42
nice!(0)
コメント(4)
トラックバック(2)
更にダイエットした結果、USART版は91ワードまでになりました^^。
ソフトタイマを2バイトから1バイトにしたため、時間を稼ぐために動作クロックを2MHzにしていますが、通信速度設定でSPBRGを6(19.3Kbps)にするとビットずれを起こしてNGになるため、9600bpsにしています。
2つのPICと二つのパソコンで確認しましたが同様な結果でした。クロック1MHzで9600bpsにできれば、ソフトタイマ用に入れいているnop(実際はnop2+returnの場所をコール)を減らせ90ワードに出来るのですが・・・(この当たりが限界サイズでしょう。)
91ワードというサイズはブートローダとしては世界最小クラスの部類に入ると思います。
アプリケーションからは0x0000〜0x0fa4の範囲が自由に使えます(0x0000に固定アドレスにジャンプ命令を入れる等の制限はありません←OneBitLoaderの特徴の一つです)
ソフトシリアル通信版の方は133ワードのサイズになりました。
by さと (2008-11-23 07:24)
16F88用USART対応版ブートローダを公開しました。^^
興味を持たれた方はホームページからダウンロードしてください。
(あれ、url入れるとエラーでカキコできない・・不便だぁ〜^^;)
by さと (2008-11-23 20:47)
今日は!
PIC16f88のアプリケーションを作成しています。
PICの書込みは、PicKit2を使用していますが、
出来れば、BootLoaderをPicに組込み、アプリケーションから、直接Picプログラムを書き込みたいと考えています。
Q1)App側の書込みプログラムのダウンロードの
方法は?
Q2)Pic側のBootLoaderのダウンロードの方法は?
Q3)前項に関して、購入費用等の情報が
あれば、お教えください
重松
E-mail:nqf27650@nifty.com
注)Picのプログラム経験は、約1年未満で
殆ど初心者です。
ご指導のほど、宜しくお願いします。
by 重松 宏昌 (2008-11-29 13:47)
こんにちは 重松さん、はじめまして
>PICの書込みは、PicKit2を使用していますが、
>出来れば、BootLoaderをPicに組込み、アプリケーションから、
>直接Picプログラムを書き込みたいと考えています。
秋月さんでPicKit2を破格で出したのでヒット商品だったPICライタはどうなるんだろう(ぼそ)
>Q1)App側の書込みプログラムのダウンロードの
> 方法は?
「App側」がパソコン側という意味であれば、「PIC側」といっしょにホームページで公開していますので、自由にダウンロードできます。
>Q2)Pic側のBootLoaderのダウンロードの方法は?
同じくホームページで公開しています。
>Q3)前項に関して、購入費用等の情報が
> あれば、お教えください
商用目的以外であれば、自由に使用できます。
「さと」をクリックでホームページに飛べます。
↓
by さと (2008-11-29 16:00)