歩き遍路 平成19年春(J1) 記録の準備
Visual C#で組込みUSBホスト経由して
   USBキーボードと通信(1) 
     構想とハードウエア

 USBキーボードとマイコンに接続した組込みUSBホストを通して通信実験をします。
 マイコンはPIC18F4520でC18コンパイラでプログラムをします。組込みUSBホストはSL811です。
 マイコンだけでは、入力や表示に制限があることとターンアラウンドが大きいのでパソコンとFT245で接続します。 FT245は手軽に使えるUSBターゲットデバイスで、マイコンからはFIFOの様に見えます。

 今回は、構想とハードウエアです。

●システム構成

 パソコンのVisual C#で組込みUSBホスト経由してUSBキーボードと通信するシステム構成を次に示します。
 パソコンのUSBポートからマイコンボードのFT245に繋ぎます。パソコンではVisual C#で作った通信アプリソフトとFT245用D2XXドライバを実行します。
 マイコンボードには、パソコンと通信するUSBターゲットのFT245、USBターゲットと組込みUSBホスト間を橋渡しするコントローラとしてのPIC18F4520、そして組込みUSBホストのSL811を実装します。橋渡しするコントローラとしてのPIC18F4520はC18コンパイラでプログラムをします。



●パソコン上のVisual C#で作った通信アプリソフト

 Visual C#で作った通信アプリソフトのGUIを次に示します。





今のところ、4つの群があります。

・左上は、SL811を初期化することとマイコンボードのLEDを点滅します。

・右上は、USBキーボード上のLEDを点滅します。デバッグ中です。

・中央は、ファイル単位でコマンド群を発行します。デバッグ中です。

・下部は、、SL811のレジスタをレジスタ単位で読み書きします。
  レジスタは、左に示すようにプルダウンして指定します。















●組込みUSBホストのSL811の実行
 
 パソコンからSL811を初期化を実行すると、次の様に1ms周期のSOF信号が出力されます。

・困った事
 SOF信号が1ms周期で発生していますが。
 調整を開始した時点では、0.5ms周期でした。
 周期カウンタを変化させたら、0.5ms周期を基準に変化するので困りました。
 12Mhzの水晶が24Mhzを発生しのかとシンクロスコープで見ても正常です。見えない信号でSL811動作してるのでは?と思い、X2端子から100Ωを接続したら
正常に動作しました。





●マイコンボードの回路
 
 パソコンと通信するUSBターゲットのFT245、USBターゲットと組込みUSBホスト間を橋渡しするコントローラとしてのPIC18F4520、そして組込みUSBホストのSL811を実装するマイコンボードの回路を示します。 PIC18Fの回路と変わりありません。











ホームへ戻る