先ほど下記間違いました。符号ビット付きのものじゃ無くて小数点を表す重み 付きのものです。 以上 -----Original Message----- From: Pan, Guanguru [mailto:pang@xxxxxxxx] Sent: Wednesday, June 18, 2003 3:05 PM To: h8@xxxxxxx Subject: [H8-ML(3396)] Re: 16bit正弦波のディジタル信号 エクセルってこんな便利の機能があるのは知りませんでした。 勉強になりました。下記の式で試しているところです。分らないところ 追って質問させていただきます。 DEC2HEX(ROUND(SIN(nn*PI()/180)*65535,0),4) 1)SIN値ですので、65535後ろの値0以上じゃないと値は全部0になりました。 2)DEC2HEX(VALUE,4) VALUEは1以下ですと、値は全部0000になります。 符号ビット付きにものになりません。どうすればよいでしょうか?また、桁数 を4から2に変更すれば、バイポーラになるではないでしょうか? 以上宜しくお願い致します。 -----Original Message----- From: 廣田 正孝 [mailto:mhirota@xxxxxxxxxxxxx] Sent: Wednesday, June 18, 2003 12:18 PM To: h8@xxxxxxx Subject: [H8-ML(3395)] Re: 16bit正弦波のディジタル信号 廣田です。 "Pan, Guanguru" wrote: > > D/Aコンバータの特性を調べる為に、MPUから正弦波のディジタル信号を > 出したいと思います。正弦波の16bit、リニアコード(出来れば、サンプリング > 周波数8KHz)が欲しいのです。データあるいは情報を持っていれば、ぜひ > 教えてください。 > > 以上 聞きたいことがよく判らない質問ですが、とりあえず 「1度毎の正弦波波形データテーブルを16ビットで得たい」と解釈して エクセルで下記のような計算式を実行させてテーブルを作ると 16ビットテーブルが得られると思います。 DEC2HEX(ROUND(SIN(nn*PI()/180)*65535,0),4) nnは任意の角度(度)で、0から90までを代入すれば1/4波形分のデータが得られます。 ただしこの式で得られる数値は0000からFFFFの数値ですから、バイポーラ出力する ためにはオフセットバイナリとか2の補数表示に変換するなどDACの仕様に合わせる 必要があります。 もちろん、ターゲットCPUで上式を計算させてRAMに展開するのもいいですね。 -- /*************************************************************************** *** Name: 廣田 正孝 "Hirota Masataka" E-mail address: mhirota@xxxxxxxxxxxxx **************************************************************************** **/