單片機(jī)的上位機(jī)在各個項目的進(jìn)程中起到的作用至關(guān)重要,它可以將單片機(jī)的工作狀態(tài)以及你想要知道的一些參數(shù)形象準(zhǔn)確的通過友好的界面表現(xiàn)出來。你只需要點(diǎn)點(diǎn)人機(jī)界面的按鈕就可以得到想要的結(jié)果,而不必再親自動手頻繁的操作各種儀器去獲得各種參數(shù)。從而加速項目的進(jìn)度,提高準(zhǔn)確性,效率提高的也不是一點(diǎn)半點(diǎn)。當(dāng)項目完成交付客戶使用或生產(chǎn),如果需要人工控制和操作、設(shè)置工作狀態(tài)等。還是需要一個簡單好用的操作界面。所以上位機(jī)在單片機(jī)應(yīng)用開發(fā)領(lǐng)域炙手可熱。
目前被廣泛使用的上位機(jī)軟件不外乎LabVIEW、VB、VS、VC、Delphi、C#、JAVA這幾種,各有各的優(yōu)點(diǎn)。其中LabVIEW雖然在工業(yè)測試領(lǐng)域已經(jīng)成為毋庸置疑的老大,各種工具包齊全,控鍵也是應(yīng)有盡有,但是它的缺點(diǎn)也顯而易見。現(xiàn)在軟件的規(guī)模越來越大,功能強(qiáng)大的軟件占用的計算機(jī)資源也越來越多。這導(dǎo)致了它對運(yùn)行它的硬件條件的要求也很高,這無疑也增加了工業(yè)大規(guī)模使用成本。就算個人電腦目前大多配置還算不錯,可是運(yùn)行起來還是會明顯感覺到速度變慢。如果同時還想跑別的程序電腦很容易崩潰。
雖然LabVIEW提供了豐富的控件包,可是有時候用戶還是想做符合自己要求的控件。但是這種想法目前想在LabVIEW上實現(xiàn)不是一般的難(簡單一點(diǎn)的想法還可以,稍微復(fù)雜一點(diǎn)就會有很多限制),這一定程度上暴露了LabVIEW封閉的特點(diǎn)。
?
所以LabVIEW在上位機(jī)編寫領(lǐng)域?qū)儆谥匦脱b備。功能強(qiáng)大、開發(fā)快速、使用簡單、門檻低,在單片機(jī)應(yīng)用開發(fā)的單機(jī)測試中用的比較多。但是它霸道的硬件要求,以及靈活性,開放性方面的缺點(diǎn)也在一定程度上制約了它的發(fā)展。如果它能保持現(xiàn)有的功能,恢復(fù)到VB的“身材”,擁有JAVA的靈活,那么它絕對“艷冠群芳”。
C#和Java用在聯(lián)網(wǎng)設(shè)備的上位機(jī)開發(fā)上優(yōu)勢明顯,有強(qiáng)大的聯(lián)網(wǎng)控件和靈活多變的實現(xiàn)方式。但是門檻比較高一點(diǎn),堅實的C語言基礎(chǔ)必不可少,而且開發(fā)速度和LabVIEW不在同一數(shù)量級上。雖然現(xiàn)在可以找到現(xiàn)成的功能語句,復(fù)制粘貼就可以完事了(這也是開源的一個優(yōu)點(diǎn)),但是一整個項目不可能找到相同的,那么接下來就要花費(fèi)很多時間去調(diào)試代碼的正確性和控件的協(xié)調(diào)性(如果人品不佳的時候,比自己寫花費(fèi)的時間還長)。
雖然C#和Java的開發(fā)環(huán)境對硬件要求沒有LabVIEW高,也夠靈活(有廣闊的空間讓你發(fā)揮靈感)。但是在“快”上缺的明顯。
VB不是強(qiáng)類型語言,做做功能不復(fù)雜,數(shù)據(jù)處理、通信要求不高的應(yīng)用還是可以的。在上述的幾種語言里屬于最底層。Delphi確實已經(jīng)沒落了,在C語言當(dāng)?shù)赖慕裉臁罢嬲某绦騿T用c,聰明的程序員用Delphi”這句話已近顯得那么的無力。
VS實際意義上來說它是一個集成式的平臺,它將微軟這些年來的開發(fā)工具集為一體。功能是強(qiáng)大的沒法說,也靈活。可是也同樣面臨LabVIEW“體重”超標(biāo)的問題。在“快”上面臨著和C#和Java同樣的困境。
有人覺得TI的WEBENCH是可以借鑒的方式,將龐大的資源置于云端。使用時只要調(diào)用相關(guān)資源,無需安裝對硬件要求苛刻的客戶端。所有計算、設(shè)計全部可以在云端完成。這樣既節(jié)省了客戶端的硬件資源,也方便將更多設(shè)計資源整合。靈活性和快速性也得到提高,一舉兩得。
總的來說,目前單片機(jī)上位機(jī)開發(fā)工具在“輕、快、靈活”這三個方面難以兼顧,只能權(quán)衡后做取舍。期待把輕、快、靈活集于一身的單片機(jī)上位機(jī)編程工具的出現(xiàn),如果開源免費(fèi)就更好了!
?
更多上位機(jī)內(nèi)容,請訪問與非網(wǎng)上位機(jī)專區(qū)
?
與非網(wǎng)原創(chuàng),未經(jīng)許可,請勿轉(zhuǎn)載!