什麼是上位機?怎麼自己編程做一個上位機程序?這種概念問題還是建議大家百度之後,然後在知乎@電子菌,要不然問題太多,公子回復不過來!
言歸正傳,概念不懂,先看看百度百科的解釋:上位機是指可以直接發出操控命令的計算機,一般是,屏幕上顯示各種信號變化(液壓,水位,溫度等)。下位機是直接控制設備獲取設備狀況的計算機,一般是PLC/單片機之類的。上位機發出的命令首先給下位機,下位機再根據此命令解釋成相應時序信號直接控制相應設備。下位機不時讀取設備狀態數據(一般為模擬量),轉換成數位訊號反饋給上位機。簡言之如此,實際情況千差萬別,但萬變不離其宗:上下位機都需要編程,都有專門的開發系統。在概念上,控制者和提供服務者是上位機,被控制者和被服務者是下位機,也可以理解為主機和從機的關係,但上位機和下位機是可以轉換的。
說了這麼多,那麼上位機用什麼軟體工具開發呢?1、visualstudio 2008
Microsoft Visual Studio 2008是面向Windows Vista、Office 2007、Web 2.0的下一代開發工具,代號「Orcas」,是對Visual Studio 2005的一次及時、全面的升級。VS2008引入了250多個新特性,整合了對象、關係型數據、XML的訪問方式,語言更加簡潔。使用Visual Studio 2008可以高效開發Windows應用程式。設計器中可以實時反映變更,XAML中智能感知功能可以提高開發效率。同時Visual Studio 2008支持項目模板、調試器和部署程序。Visual Studio 2008可以高效開發Web應用,集成了AJAX1.0,包含AJAX項目模板,它還可以高效開發Office應用和Mobile應用。
是微軟公司提供的一個類庫(class libraries),以C++類的形式封裝了WindowsAPI,並且包含一個應用程式框架,以減少應用程式開發人員的工作量。其中包含大量Windows句柄封裝類和很多Windows的內建控制項和組件的封裝類。
3、QtQt是一個1991年由Qt Company開發的跨平臺C++圖形用戶界面應用程式開發框架。它既可以開發GUI程序,也可用於開發非GUI程序,比如控制臺工具和伺服器。Qt是面向對象的框架,使用特殊的代碼生成擴展(稱為元對象編譯器(Meta Object Compiler, moc))以及一些宏,Qt很容易擴展,並且允許真正地組件編程。2008年,Qt Company科技被諾基亞公司收購,Qt也因此成為諾基亞旗下的程式語言工具。
GTK+(GIMPToolkit)是一套源碼以LGPL許可協議分發、跨平臺的圖形工具包。最初是為GIMP寫的,已成為一個功能強大、設計靈活的一個通用圖形庫,是GNU/Linux下開發圖形界面的應用程式的主流開發工具之一。並且,GTK+也有Windows版本和Mac OS X版。
wxWidgets是一個開源的跨平臺的C++構架庫(framework),它可以提供GUI(圖形用戶界面)和其它工具。目前的2.x版本支持所有版本的Windows、帶GTK+或MoTIf的Unix和MacOS。一個支持OS/2的版本正在開發中。開源跨平臺,和 CodeBlocks (開源跨平臺的IDE)配合的很好,而且可以用 wxSmith 很方便的設計界面。而且學過MFC上手 wxWidgets 很快。