新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 無運放的權電阻網絡在單片機控制系統中的應用(下)

        無運放的權電阻網絡在單片機控制系統中的應用(下)

        作者:羅國發 時間:2015-04-28 來源:電子產品世界 收藏

          接上篇

        本文引用地址:http://www.104case.com/article/273258.htm

          編程思路

          對于類數據,常用的數表有數表、

          1. 數表,優點是直觀,方便后期查驗,與電源電壓無關;缺點和AD值之間需要額外的計算,占用系統時間。

          2. ,優點是只需做比較而無需乘除,與電源電壓無關;缺點是不直觀,需要保存好原始的計算表格以備查驗。

          這里使用第二種,我們推導一下AD值與地址設置值之間的關系:

          因為并聯電路和串聯電路都是線性電路,電源的波動會直接導致輸出電壓波動,所以直接把和Vref連接能更好地去除電源波動對電壓采集的影響,即令=Vref,化簡得:Ad=(2n-1)*K

          之前的Excel表格已經算出了系數K,在I4寫入=H4*(2^$I$2-1),復制粘貼即可得到AD數表,再把它定義成數組即可。

          主要程序

          #define uint unsigned int
          #define uchar unsigned char
          #define parallel
          #ifndef parallel
          #define series
          #endif
          #ifdef parallel
          //并聯電路AD數表
          const uint code ad_table[]=
          {
          0 , 59 ,113 ,160 ,204 ,242 ,278 ,310 , //0~7
          341 ,368 ,393 ,416 ,438 ,458 ,477 ,494 , //8~15
          512 ,527 ,541 ,555 ,568 ,580 ,592 ,603 , //16~23
          614 ,624 ,633 ,642 ,651 ,659 ,667 ,674 , //24~31
          };
          //并聯電路AD數表為
          uint address_cal(uint value)
          {
          uchar i=0;
          uint address=0;
          uint buff=value;
          for(i=0;i<31;i++)
          {
          if((buff>=ad_table[i]) && (buff<ad_table[i+1]))
          {
          address=i;
          break;
          }
          }

        電阻相關文章:電阻的作用居然有這么多,你造嗎


        光敏電阻相關文章:光敏電阻工作原理



        上一頁 1 2 下一頁

        關鍵詞: MCU PCB 電阻 AD數表 VCC

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 邻水| 依安县| 银川市| 防城港市| 长顺县| 班玛县| 安仁县| 龙海市| 弥渡县| 张北县| 达孜县| 淮北市| 金阳县| 南涧| 乌鲁木齐市| 永泰县| 东光县| 锡林浩特市| 兰西县| 玉屏| 共和县| 防城港市| 龙山县| 南京市| 阿拉善右旗| 两当县| 兴文县| 广德县| 宁南县| 永清县| 乐业县| 敦化市| 梓潼县| 大连市| 华容县| 米林县| 安平县| 双城市| 广丰县| 安远县| 孝感市|