プログラミング

プログラミング

DCDCコン開発(72) I2Cの不具合状況を解析してみた4

もう少し、レジスタの動作を追い掛けてみた。SSP1STATレジスタには、よくわからないパラメータがある。bit7は、先に説明した「スルーレート制御」という立上がり下がりの反応を高速にすることだった。となりのbit6もこの文言を読むだけでは、...
プログラミング

DCDCコン開発(71) I2Cの不具合状況を解析してみた3

結果的に言うと、どうもすっきりしないのだが、検討結果を以下に整理する。SSP1ADD=5F を設定してbaudレートジェネレータを6.0μsに設定したときの波形である。Tlowが5.2μs以上のため、仕様以内に収まっていそうな気がする。ただ...
プログラミング

DCDCコン開発(70) I2Cの不具合状況を解析してみた2

今度は、仕様を満たしていないときの波形を確認してみよう。Tlowが5μsとなっており、仕様の5.2μsよりも短いため、明らかに仕様から外れており、この場合は、LCDには、正常に表示がされないことが理解できる。LCDに表示できていないのだが、...
プログラミング

DCDCコン開発(69) I2Cの不具合状況を解析してみた1

理論的には動作する設定で動かないという現象が出ており、その理由を解析中。先ずは、実際の動作状況をオシロで確認してみた。I2C信号線、SCL(クロック)とSDA(データ)を見てみると、図のような波形が観測された。ただし、これは、たまに発生する...
プログラミング

DCDCコン開発(68) PICのMSSPモジュールとLCDモジュールの整合性の検証

前回までで、PICのI2Cのタイミング条件とLCDモジュールのタイミング条件を確認した。当たり前だが、それぞれの条件を満たすように接続、制御しないと、正しく動かすことができない。どこか一つでも、条件が満たされていなければ、正しく動かないとい...
プログラミング

DCDCコン開発(67) I2C通信LCDモジュールのタイミングチャートを理解する

LCDのタイミングチャートを以下に示すI2C接続LCDディスプレイのタイミング条件を確認する。タイミングチャートは、図中に規定されている時間の長さ条件を確認することが重要。一般的に、最小値(Min)か最大値(Mix)しか記述されていない場合...
プログラミング

DCDCコン開発(66) PICのMSSPモジュールのタイミングチャートを理解する

PICのbaudレートジェネレータ特に動作タイミングを規定するうえで重要なのは、PICのMSSPモジュールのbaudレートジェネレータである。baudレートジェネレータとは、データ交換するタイミングを生成するクロックと考えてよい。ただ、単純...
プログラミング

DCDCコン開発(65) PICのMSSPモジュールとI2C通信LCDモジュールの通信を解明する

ミッドレンジPICの新MSSPモジュールは、シリアル通信のSPIとI2Cに対応した機能を提供する。今回は、I2C通信を利用しているが、正しい設定方法を理解しておこうと思う。スタート、ストップ、ACKなどのシーケンスについては、解説されている...
プログラミング

DCDCコン開発(64) I2C通信LCD苦労してようやく表示成功

I2C-LCDに表示させるだけで、1日がかりになってしまった。I2Cを扱うのは、初めてだったが、ドキュメントをあれこれ見て、概ね制御方法を理解し、PICの設定、データ送信制御のプログラムを書いてみた。。。が、ぜんぜん動かず。そもそも、なにも...
ソーラー発電

DCDCコン開発(62) DCDCダウンコンバータ本番機検証再開

2013年10月13日の投稿以来進んでいなかった本番機の検証を再開した。進んでいなかった理由は、第一種電気工事士の技能試験があったり、横道にそれて人感センサー照明作りに励んだりと、まぁ、難しい問題への真正面からの取組みから目を背けていたとい...
プログラミング

DCDCコン開発(61) PIC割込み処理の注意点

一般的には、割込み処理は、割込み周期よりも短時間で完了するように設計するが、どうしても1周期以内に全ての処理を詰め込むことが難しい場合がある。処理内容によっては、それでも特に問題は無い場合もあり、その際は2周期目を利用して1処理を行うことで...
プログラミング

DCDCコン開発(60) 計測タイミングに関する考察

最近おサボりして、なかなか進展の無かった自宅PVシステムについて久しぶりに検討状況を記録する。サボっていたと言っても、あれやこれやと頭の中では思考をしており、ようやく整理できてきたのできちんと書き留めておこうと思った次第。今まで、DCDCコ...