マイコンの学習(9) R8C/26とDE0のSPIで
                    データの授受


 アルテラ社のFPGAを搭載したDE0ボードのSPI機能とR8C/26でSpiでデータの授受をしました。
 

●動作確認した機能と構成

 今回の機能は、DE0ボードのスイッチの状態をSPI機能を使ってR8C/26に読込みます。そして、R8C/26は、入力したスイッチの状態をそのままDE0ボードに折り返し、DE0ボードのLEDを点灯、消灯します。

 SPIの転送速度は、5Mbpsで確認しました。

 概略ブロック図を下に示します。








●動作と結果

 最初は、1秒毎にDE0ボードのスイッチの状態を読込み、折り返してLEDに表示する動作が不安定でした。
 原因が判りません。回路もソフトも問題はありません。FPGA内の波形も正しいです。

 不具合現象は、不規則に表示内容が変化するのです。1ビットズレテいるようです。

 不具合の原因は、R8C/26に渡すタイミングでした。
 Spiのクロック信号とMISO信号のセットアップタイムの規格が100nS以上の処を80nS以下になる時が有りました。
 セットアップタイムを100nS以上にするとOKになりました。


 次に、修正したタイムチャートとFPGA内のタイミングです。






 先頭のチップセレクトは、DE0ボードのスイッチの状態を入力しています。
 第2のチップセレクトは、R8C/26からDE0に表示データを送っています。








ホームへ戻る