-
1 # 會寫程式的魔法師劍劍
-
2 # 工控程式設計
答案。
個人經歷,建議學習MFC吧,進可攻退可守。
1.執行效率原因。
上位機,總的來說都是與硬體打交到,硬體多追求執行效率,MFC程式碼相對其他語言執行效率高些。
2.硬體支援。
生產廠家都對MFC有很好支援,提供MFC的開發包,程式設計手冊,例項等等。
可以很快速的上手使用硬體,開發與完成硬體控制。
3.向下相容。
工業控制不像娛樂的軟體,更新週期很慢,你想想,我好好的裝置,你一會讓我升級系統,一會讓我換個開發語言改造 軟體,也不現實。所以工業上大量存在MFC編寫的程式,XP系統,所以退可守,也不至於學了流行的程式語言,改造,維護裝置時無從下手。
4.向上擴充套件性好。
MFC學習,都要學習C++語法,熟悉視窗訊息機制。而這些基礎性的知識,可以幫助我們很快上手其他語言,比如C#。
-
3 # 一枚老頭
當然是c++和c#,這兩種語言在windows平臺下是最廣泛的存在。
現在的硬體裝置,最常見的是串列埠裝置,usb裝置和乙太網裝置。這些標準介面,在windows下都有底層驅動,開發起來難度並不大。
串列埠裝置,包括232串列埠和485串列埠,多半命令格式是一發一收的互動模式。c++工程師建議使用臺灣moxa的串列埠封裝模組(dll),可以極大地簡化底層程式碼工作量。c#工程師簡單多了,直接操作串列埠就可以。
usb裝置和乙太網裝置也是如此。可以去找一下標準例程,上手還是很快的。
但是普遍存在的一個問題是:硬體工程師寫一個好的上位機軟體卻很難。經常侷限於硬體本身,卻忽略軟體工程的全域性,做出來的東西不適合使用者使用。所以我個人建議,硬體工程師可以做好上位機的測試程式,其他工作,還是交給軟體工程師來做吧,畢竟你的精力有限,想一個人通吃所有,不太現實!
-
4 # 狼人沒狼心
我是做硬體,除錯的話,自個兒用Qt能很快搭建demo,至於沒沒化就不知道了,現在有個問題是怎麼使用Qt呼叫window的dll
回覆列表
上位機這個詞一看就知道你是做硬體相關的。電子相關專業在用到計算機與硬體通訊的時候就要用到上位機程式設計,來實現操作介面,資料處理等功能,比如把感測器資料資訊儲存起來,繪製圖表,記錄存檔。以及使用者操作介面來控制硬體機器都需要上位機程式設計。
建議你使用Python最近很火的語言。Python加上PyQt5加上PyCharm製做的上位機很不錯。這個語言本身學起來還比較輕鬆,關鍵是資料太多了可以很好的進步。如果你覺得不像跟風可以學習成熟的C#,QT這兩個是用的最多的在上位機程式設計領域。
我之前最開始學生時候用到的就是VB6.0了,雖然以及淘汰了,但是這個工具直接拖拖拉拉就可以有一個不錯的介面,還可以實現簡單的功能。在工業生產上還是用的很多的,比如一些自動化生產線,居然這個淘汰的VB6.0一樣存在。
這個圖是我自己編寫的小工具,用來在微控制器程式設計的時候整理格式用的。介面不酷炫,不過不耽誤使用。
當然那是由於之前學習的人不好換平臺,加上夠用了,所以還有活力。
後來我就學習了MFC 就是微軟的VC6.0現在是VS201X這個版本。這個採用的是C++程式設計,我也用這個在工程上使用過,只是這個東西實現漂亮的UI很麻煩,不夠智慧化,或者是我沒找到,畢竟也學了不久。
現在來說就這兩個了
C#在windows平臺算是微軟支援比較好的,擁有.net框架使用,如果對這個不熟悉,那就可以學習QT,這樣進度會快很多。QT的介面可以做的非常酷炫,新潮,而不是其他的感覺上世紀的軟體介面風格很low。