サンプリング後の周波数関係は?(実験編)
大した結果では、ありません。
シングルトーンと、帯域を持つもので、観察してみただけです。
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