在前段時間搞定了溫控系統後,嵌入式大作業要開始搞了
選定了計算器,一開始的想法是不能多不運算
但是前兩天找了點資料,然後看了相關的堆疊計算方法,於是決定好好搞一下表示式運算
因為lineedit->settext(qstring str) 而計算則需要double型,所以需要格式的多次轉換,自己寫了個atof(),ftoa()
還有負數的運算,則需要在加一些判斷函式,同樣,*-或/-是可以,所以在獲取操作符也需要判斷,因此atof中還要有對『-』的判斷。
void check()
if(strdata[i]=='-'&&(strdata[i-1]=='*'||strdata[i-1]=='/'))
else
}pdata=data;
scanf(1,&r);
push(r);
scanf(0,&c);
while(c!='=')
else if(c=='/')
else if(c=='+'||c=='-')
scanf(0,&c);
}for(i=1;istringtemp.setnum(datastack[0]);
clearchar(strdata);
ftoa(datastack[0],strdata);
嵌入式系統的優先順序倒置
以前也看到過嵌入式系統優先順序倒置的問題,但由於沒有實際的程式,理解的不夠透徹。今天終於有機會來看清廬山真面目了。我們的dsp 上有兩個 task spa 和txp,什麼意思,我就不說了。這兩個程序都會用到乙太網模組。txp的優先順序比 spa要高。spa作為乙個低優先順序的任務,執行時間比較長。現...
嵌入式開發 中斷優先順序的重要性
ti的lm3s1607,一開始中斷優先順序沒有設定,採用預設值 所有優先順序相同 則就是中斷不可巢狀。出現了uart通訊有時會丟失資料的問題,一開始以為是硬體干擾導致的。uart的接收緩衝佇列fifo長度設定為1,即接收到字元後就觸發中斷。因為外部通訊命令一般為多個位元組連續發,所以如果uart中斷...
C語言優先順序在嵌入式程式設計中的重要性
c語言優先順序在嵌入式程式設計中的重要性 最近在弄pic的乙個小專案,之前是前乙個同事在原有程式的基礎上經行了 的優化,同時新增了一點新的功能,由於pic微控制器的容量還是相對較小,所以不得不把眾多的adc轉換的函式整合到乙個函式裡,同時又有8位和10位的ad轉換功能。在程式裡需要用到c語言裡的位運...