PIC16F1939からPIC16F1827にマイグレーション
2013-02-17



禺画像]

とある案件で開発中。納品物件はプログラムと回路図なので、ブレッドボードで開発していた。
キャラクターLCDやスイッチなどを付けることを見越して40ピンタイプのPIC16F1939を使用していたが、仕様がある程度決まって、周辺もI2Cとシリアル通信、数個のLED表示になったので、ピン数の少ないPICマイコンにマイグレーション(migration:移植)することにした。


禺画像]

移植先はPIC16F1827。PIC16F1939ではSSPがひとつだったのに対してこれはI2CやSPIのエンジンであるSSPグループが2つある。というわけで、ソースを少し変更することになる。
SSPxxxというレジスター名を全部SSP1xxxに置換してしまう。SSP2はUARTのピンと排他的に使うことになるので、今回は使用しなかった。

またUARTピンと重複しているのでRXDTSEL =1、TXCKSEL =1にに設定。これで、
 RB1→SDA
 RB4→SCL
 RB2→RXD
 RB5→TXD
と使えるようになった。これらの特別機能ピンを使う時は入力に切り替える。TXDだから出力と勘違いして動かなかったりした事があった。UARTやI2C設定に切り替えると自動的にポートがその機能にあった入出力に設定される。


禺画像]

PORTもAとBだけになるので、それ以外の要らないポートは削除。数回エラーを取り除いたら、さほど苦労もせずにマイグレーション完了。けっこうあっさり終わるものだ。


禺画像]

I2Cの動作も問題なく動いている。


禺画像]

一日かけて、納品に耐えうるプログラムと手作り基板を作り上げたので、今まで使ったブレッドボードはこれにて役目を終える。


禺画像]

数十分かけて組み上げたブレッドボードは数分で分解。それと引き換えに回路図とプログラムが出来上がる。10年以上前はブレッドボードの使用に否定的だったが、今ならブレッドボード+PIC+PICkit3+USBシリアルでの構成が一番デバッグが楽でよく行う開発手法となった。資源の有効活用できるし、時間もさほど掛からない。


続きを読む

[電子]
[PIC]

コメント(全5件)
コメントをする


記事を書く
powered by ASAHIネット