<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 單片機查表程序的自動生成技術(shù)

          單片機查表程序的自動生成技術(shù)

          作者: 時間:2012-11-15 來源:網(wǎng)絡(luò) 收藏


          利用以上,計算時輸入文件名為A.ASM,Vmax=3,得至的A.ASM的內(nèi)容如下(共90行表格,略去其中的大部分表格):
          ;A.ASM
          SUB1 MOVWF BUF
          SUBLW .90
          BTFSS STATUS,C
          RETLW .0
          MOVLW HIGH($+4)
          MOVWF PCLATH
          MOVF BUF,W
          ADDWF PCL,F(xiàn)
          RETLW .0;0
          RETLW .5;1
          ……
          RETLW .90;72
          RETLW .86;73
          RETLW .81;74
          ……
          RETLW .11;88
          RETLW .5;89
          RETLW .0;90

          把以下插入的適當?shù)胤剑?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/查表">查表時中要賦以W相應(yīng)的值,再CALL

          SUB1就可以得到sin(x)第W點上的值。整個計算約10個指令周期(如采用4MHz晶振,為10μs左右)。如果采用乘除的方法計算,至少要花幾百甚至上千個指令周期,而且得到的結(jié)果精度也差。

          2.2 非線性插值

          應(yīng)用中會遇到非線性元件,例如熱敏電阻的電阻-溫度特性、斷路器的保護特性等都是非線性關(guān)系。這里以斷路器的保護特性為例,說明自動編程的應(yīng)用。假設(shè)現(xiàn)在要仿真的斷路器的特性為雙曲線,如圖1所示。

          據(jù)此,可以設(shè)延時時間與電流的關(guān)系為

          (I+I0)(t+t0)=K

          (1)

          由圖1的三個點可以得到以下聯(lián)立方程組:

          (I+20)(t+33)=K

          (I+40)(t+20)=K (2)

          (I+90)(t+10)=K

          采用迭代法解得I0=11.111 1,t0=0.222

          2,K=1 033.58,代入式(1)得

          t=[1 033.58/(I+11.111 1)]-0.222

          2 (3)

          現(xiàn)在假設(shè)在硬件線路中,電流信號是轉(zhuǎn)換為電壓信號經(jīng)A/D后得到的,其相應(yīng)點的關(guān)系為:0A→0V,100A→3V,A/D為8位,A/D參考電壓為5V。轉(zhuǎn)換計算首先將A/D值轉(zhuǎn)換為對應(yīng)的電壓值,再將電壓值轉(zhuǎn)換為對應(yīng)的電流值I,再根據(jù)式(3)求相應(yīng)的延時時間T,最后將延時時間T再轉(zhuǎn)換為延時的間常數(shù)T0。T0按式(4)計算:

          (256-t0)·Tcy·K=T (4)

          t0=256-t/(Tcy·K) (5)

          其中,Tcy為指令周期,在4MHz晶振時,Tcy=1μs;K為預(yù)分頻系數(shù);t為欲延時的時間,單位為μs。

          晶振相關(guān)文章:晶振原理


          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();