1056934 ランダム
 HOME | DIARY | PROFILE 【フォローする】 【ログイン】

緑のボタンを押せ! Press the green button

緑のボタンを押せ! Press the green button

【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! --/--
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x

PR

Category

Keyword Search

▼キーワード検索

Archives

2024.04
2024.03
2024.02
2024.01
2023.12

Comments

 effelpist@ kilovermek.es effelpist &lt;a href=&quot; <small> <a href="http…
 Jun@ Re:「いっちゅう」さんのiEPG用ソフト入れてみた(09/15) TVdeIEPG Ver.1.2.1.0がリンク切れしてい…
 スター@ Re:hauppauge HD PVR 速報(08/25) スタービーチ <small> <a href="http://c…
 ASOBO@ Re:hauppauge HD PVR 速報 ASOBO攻略 <small> <a href="http:/…
 ハッピーメール@ Re:hauppauge HD PVR 速報 ハッピーメール <small> <a href="http:/…

Freepage List

Favorite Blog

まだ登録されていません
2007.11.04
XML
テーマ:電子工作(533)
カテゴリ:電子工作

積分器をRC(抵抗とコンデンサ)タイプにして見ます。相変わらず、積分は差分式なのでむちゃくちゃ遅いです(そのうち、Veritakのルンゲ・クッタに変えます)。ついでに、ディジタル回路のなかで使いやすいように、オフセットをつけて、入力電圧の範囲を0~5Vに変更しました。
実行結果はこんな感じ。
RCintegral

だいたいよさそうです。この例では、前回の時定数より、1/10にしていますが特に問題はないようです。
CMOSデジタル回路では、コンパレータをどうするかは、ちょっと悩ましいですね。ディジタルICでのスレッショルド電圧を使うとすると、スレッショルド電圧に近い電圧で変化することになり、ラッチアップの可能性を考慮する必要があります。
(とりあえずこの項終わり)
---
本日の御託
横浜市水道局のホームページが更新されて、「はまピョン」のカレンダーのコーナーがなくなってしまった。orz・・・

     1  //  behavior model of sigma delta A/D converter
     2  //    with RC intergral model
     3  // (c) 2007 Bakaoyaji
     4  //
     5  `include "ANALOG.H"
     6 
     7  `timescale 1ns/100ps
     8 
     9  `define RESOLUTION (1.0)
    10  `define GAIN2   (0.000001)
    11  `define RELATIVE_GAIN2 (`GAIN2 * `RESOLUTION)
    12  `define VDD (5.0)
    13 
    14  module sigma_delta_adc(
    15      input clk_i ,
    16      input `ANALOG analog_i ,
    17      output reg digital_o 
    18  ) ;
    19 
    20      real real_in , integ_in , integral = `VDD/2.0 ,feedback = 0.0 ;
    21 
    22      always@ * begin // converting `ANALOG to real
    23          real_in = $bitstoreal( analog_i) ;
    24      end
    25     
    26      always@ * begin // summing
    27          integ_in = real_in - feedback ;
    28      end // always
    29 
    30      always begin // integral
    31          # `RESOLUTION
    32          integral = integral + `RELATIVE_GAIN2 * (integ_in-integral+2.5) ;
    33      end
    34 
    35      always@( posedge clk_i) begin // comparater and delay
    36         if( integral >= (`VDD/2) ) begin
    37              feedback <= `VDD ;
    38              digital_o <= 1'b1 ;
    39          end
    40          else begin
    41              feedback <= 0.0 ;
    42              digital_o <= 1'b0 ;
    43          end
    44      end
    45  endmodule // sigma_delta_adc
 






お気に入りの記事を「いいね!」で応援しよう

Last updated  2007.11.04 20:10:29
コメント(0) | コメントを書く



© Rakuten Group, Inc.