楽天市場
[無料でホームページを作成] [通報・削除依頼]

LPC1114 8ch簡易ロジックアナライザー USB版



先日紹介した8ch簡易ロジックアナライザーをUSB化しました。このバージョンではLPC1114のUARTを使用しません。


<仕様>
①LPC1114FN28/102の内部クロック(IRC)を使用しています。

②データ量は8ビットx3800pt。 RAMアドレス[$10000080~$10000F57]

③サンプリング速度を上げるため、トリガ検出とデータサンプリングをRAM上で実行します。

img_20150711-221456.png

④システムクロックはIRCをPLLで逓倍した48MHzを使用。以下のプログラムで6MHzでサンプリングします。

    ldr    r6,#=0x50003FFC                @@ r6 = GPIO0DATA
    ldr    r5,#=0x10000080               @@ r5 = BufferTOP
    ldr    r0,#=0x00000ED7                @@ r0 = BufferTOPからのオフセット
Measure:
    ldr    r1,[r6,#0]                           @@ Read        [2サイクル]
    strb    r1,[r5,r0]                           @@ Write       [2サイクル]
    subs    r0,r0,#1                           @@                [1サイクル]
    bpl    Measure                              @@               [3サイクル] 48/(2+2+1+3)=6MHz
    bx    lr

⑤8chロジック入力は PIO0_0(ch0)~PIO0_7(ch7)を使用します。

⑥トリガはホスト側で立ち上がり/立ち下がりを選択可能です。

⑦再計測は ホスト側の"Restart"ボタンで操作。

⑧LEDを PIO0_10に接続。 消灯でトリガ待ち。計測完了すると点灯。
計測完了後、ホストの"Data trasfer"ボタンを押すとデータがPCに転送されます。

⑨グラフ表示プログラム
株式会社データ・テクノさんが公開されているCPLT Ver1.02 (フリーソフト)を使用しました。
こちらからダウンロードできます。
http://www.datatecno.co.jp/download.htm

⑩ホストはPC内部でUSB-シリアル変換を行い、com0comのインターフェースを介して計測データをCPLTに出力します。
動作にはcom0comのインストールと設定が必要です。
com0comはこちらからダウンロードできます。
http://osdn.jp/projects/sfnet_com0com/downloads/com0com/2.0.0.0/com0com-2.0.0.0.zip/

<解説>
ホストはデバイスから送られた計測データを仮想のCOM9に出力、これとクロス接続された仮想のCOM8からCPLTに向けてデータが出力されます。
ホストにより出力先(COM9)は固定化されています。変更するにはHOSTプログラムの再コンパイルが必要です。

-com0comの設定-
img_20150711-221401.jpg

-CPLTの設定-
img_20150711-221219.jpg



<回路図> 
前ページに記載のブートローダーボードにプローブとLEDを追加。ファームウエアはブートローダーから書き込めます。
img_20150713-131044.png

こちらは簡易版。ファームウエアをLPC1114に直接書き込みます。
2015.07.14 追記、GPIO_11のラインはGNDに落す必要がありませんでした。画像を差し替えました。
img_20150714-005848.png


<計測の手順>
img_20150711-220859.jpg
①ターゲットボードをUSBに接続。このときLEDは点灯するが転送可能ではない。
②ホストプログラムを立ち上げる。
③左下のメッセージを確認する。
  "\\.\libusb 0-0001-0x04d8-0x0628" 正常
"Device was not detected"         異常
④CPLTを起動。
⑤File-ロギングでCSVファイルを指定。
⑥ホストに戻る。トリガの極性を選択し、"Restart"ボタンをクリックして計測開始、LEDが消灯する。
⑦トリガがかかり計測が完了するとLEDが点灯する。
⑧LEDの点灯を確認してホストの"Data transfer"ボタンを押す。
⑨数秒後にCPLTにデータが表示される。


<計測例> 前回同様1MHzのクリスタルオシレーター出力を計測。パルス10個の幅は60サンプリング。
img_20150711-220801.jpg


<注意>
LPC1114のIRCのクロック周波数を補正する必要があります。詳しくは"続LPC1114 USBブートローダー"のページをご覧ください。



本ページに記載のソフト一式は以下のページからダウンロードできます。

https://drive.google.com/file/d/1TvLac1mdw8gDjY7TZ_w_0htrnTGgyO8X/view?usp=sharing