サンプリング後の周波数関係は?(実験編)

 

大した結果では、ありません。

シングルトーンと、帯域を持つもので、観察してみただけです。

20KHzと60KHzのシングルトーンと、その周波数で少し帯域を持ったもの    で、観察してみました。

帯域をつくるには

   以前作った2トーンジェネレータで、500Hzと2KHzの2トーンを発振し、それを使って、シングルトーンに変調をかけた。

   (変調には、やはり、以前に実験したDBM(SN16913P)を使用)

 

CPU:    AKI H8 3664F(やはり以前で、作ったプリント基板版)

          サンプリング周波数 約 95KHz(1/2は、約 47KHz)

スペアナ:    MS8606A

プローブ:    自作2SK241Yパラ

オシロ:       Tektronixs 2432A( プローブ 10:1 P6109B)

 

            こうやって、以前に自作した練習器ばかりですから、精度は、さっぱりですわ  (^_^;;

 

今回の実測に際して、

自作プローブと、P6109Bの受動プローブで、スペクトラムの差を、計測してみました。

    下側:自作FETプローブ (50Ω入力端子)   上側:受動プローブ(1MΩ入力端子使用)

    スペアナは、アドバンTR4171

 

やっぱ、色々な周波数が出る所で、測定すると、自作FETプローブは、見劣りしますね。(これしか、無いもん)

それから、2トーンで変調された20KHzと60KHzを観測しておきます。(フィルター全くなしです。)

 

2トーンの発振器、出力小さいのに、アンプ、かましてないので、出力は、小さいです、ゴメン。

 

フィルタ作るの省略...勘弁してちょ。

DA変換後の

搬送波が20KHzの、DA変換後の出力

    オシロの観測の時だけ、2KHzのシングルトーンでの変調です。

                                        (真ん中が、1/2Fs)  

 

 

搬送波が60KHzの、DA変換後の出力

                            (20KHzのものと、変わらんにゃ。)

 

 

これだけでは、

    1/2Fs以下の周波数の元信号をサンプリングしたもの、と

    1/2Fs以上の周波数の元信号をサンプリングしたもの、とで、

違いを見つけることは、できませんでした。

2.高次サンプリングは?

   最後に、搬送波を120KHzにして、観測

                                    変調は、2KHzのみの時

 

こちらは、500Hzと2KHzのツートーンで変調しました。

                    周波数スパンは、150KHz    (H8のサンプリング周波数は95KHz付近)

 

    高次サンプリング、中々、ええですね....好きやわ。

 

それから、AD_DA変換のプログラムは、これです。

(RENESAS HEW2無償版+HTERM)

;------------------------------------------------------------------------
; |
; FILE :DA_test.src |
; DATE :Fri, Feb 18, 2005 |
; DESCRIPTION :Main Program |
; CPU TYPE :H8/3664F |
; |
; This file is generated by Hitachi Project Generator (Ver.2.1). |
; |
;------------------------------------------------------------------------

ADDRA     .equ H'FFB0
ADCSR     .equ H'FFB8
ADF .        bequ 7,ADCSR
ADST      .bequ 5,ADCSR

PDRB      .equ H'FFDD

PCR5      .equ H'FFE8
PDR5        .equ H'FFD8

PCR1      .equ H'FFE4
PCR2      .equ H'FFE5
PCR7      .equ H'FFEA
PCR8        .equ H'FFEB

INT_AD     .equ H'F880+H'0032
.

    export _main

_main:

    ORC #H'C0,CCR ;DI

    bclr    ADST
    mov.b  #B'01001000,r0l ;高速モード
    ;mov.b  #B'01000000,r0l ;低速モード

    mov.b r0l,@ADCSR        ;set AD MODE ,AN0=in, ADIE=1

    mov.b #255,r0l

    mov.b r0l,@PCR5         ;set mode output

    mov.b r0l,@PCR1         ;空きI/Oポートの処理 Port1を出力に設定して置く。

    mov.b r0l,@PCR8 ;Port8

    mov.b #H'07,r0l

    mov.b r0l,@PCR2 ;Port2

    mov.b #H'70,r0l

    mov.b r0l,@PCR7 ;Port7

    mov.w #to_da,r0

    mov.w r0,@INT_AD         ;r0= AD_Interrupt vector address to to_da

    ANDC #H'3F,CCR         ;EI

    bset ADST

    loop: bra loop



    to_da:     ;(A/D変換の割込みルーティン)

test:
    btst ADF
    beq test
    mov.b @ADDRA,r1l

                                ;AKI-3664Fは、ADDRAの上位10ビットに取り込んだ値が格納される。

    not.b r1l                 ;上位8ビットのみ取り出し、製作したD/A変換器は、符号が反転するので

    mov.b r1l,@PDR5     ;R1Lを符号反転し、D/Aに送る

    ;bclr ADF                ;これを入れると、メチャ遅くなる
    bset ADST

    rte



.end

−−−−−−−−−−−−−−−−−−−−−−−−−−

 

    H.17.2.21