<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

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

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

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

假設定時(shí)器用TMR0,預分頻系數為256,晶振的振蕩頻率為4MHz,則最大延時(shí)為65.535ms。如下(其中與A.C相同或類(lèi)似的均略去):

/*B.C*/
……
fprintf(fp,SUB2 MOVWF BUF);
fprintf(fp,MOVLW HIGH($+4));
fprintf(fp,MOVWF PCLATH);
fprintf(fp,MOVF BUF,W);
fprintf(fp,ORG 200H,F); /*表格從200H開(kāi)始,避免跨頁(yè)*/
fprintf(fp,ADDWF PLC,F);
for(i=0;i=254;i++)
{ad=i;
v=ad*5/255; /*求相應于A(yíng)/D值的電壓V*/
I=100*v/3; /*求相應的電流I*/
T=1033.58/(I+11.1111)-0.2222; /*按式(3)求相應的延時(shí)時(shí)間*/
T0=256-T*1000*256; /*轉換為時(shí)間常數*/
k=T0+0.5;
if(k0)k=0;
if(k>255)k=255;
fprintf(fp,)
RETLW.%d;AD=.%d,I=%5.1f(A),T=%5.1f(ms),k,i,I,T);
}
……
形成的程序如下(共255行表格,略去其中的大部分表格):
;B.asm
SUB2 MOVWF BUF
MOVLW HIGH($+4)
MOVWF PCLATH
MOVF BUF,W
ORG 200H
ADDWF PCL,F
RETLW .0;AD=.0,I=0.0(A),T=92.8(ms)
……
RETLW .116;AD=.27,I=17.6(A),T=35.7(ms)
RETLW .120;AD=.28,I=18.3(A),T=34.9(ms)
RETLW .123;AD=.29,I=19.0(A),T=34.2(ms)
RETLW .125;AD=.30,I=19.6(A),T=33.4(ms)
……
RETLW .234;AD=.254,I=166.0(A),T=5.6(ms)

進(jìn)行電流采樣A/D,把A/D結果賦給W,CALL

SUB2便可得到相應的延時(shí)時(shí)間常數W。

3 結論

利用高級語(yǔ)言程序,可以完成許多難以完成或需要進(jìn)行大量計算才能完成的復雜運算,計算精度高。單片機利用此結果進(jìn)行插值運行速度要快得多。典型的4MHz晶振時(shí),需要的運算時(shí)間為10μs。限于篇幅,本文只給出兩個(gè)實(shí)例,實(shí)際上它可以用于單片機測控系統中的許多方面,如模糊控制中的模糊規則的推理、非線(xiàn)性傳感器的特性讀取以及其它方面。

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

上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>