2012-08-13 352 views
2

我是電子和通信工程專業的學生。我正在研究一個微控制器發送數據到計算機串行端口(異步)的項目。 我目前正在爲我的GUI工作學習wxWidgets。如何使用wxwidgets訪問C++中的串口數據

我的問題 - 是否有可能使用wxWidgets來獲取數據和顯示。這是非常困難的。 我搜索它,但沒有得到直接的答案,如何實現這一點。所以建議我爲此需要閱讀。以及可以做什麼替代方案。我使用Windows 7

我還需要將此數據上載到網絡服務器(這是以後需要)

+0

不確定,但我認爲wxWidgets只涵蓋了GUI的東西。要訪問PC端的COM端口,您需要使用Windows意識到的串行IO實現。 Boost.Asio可能會有所幫助:http://www.boost.org/doc/libs/1_43_0/doc/html/booster_asio/overview/serial_ports.html – 2012-08-13 18:01:42

+0

在搜索了很多解決方案後,我決定使用C#for gui和串行通信。它很容易在c#中實現它。 – netsmertia 2013-11-14 08:08:28

回答

3

wxWidgets的,給我所知,沒有實現串行I/O設備。還有其他可用的庫提供此功能。最好的選擇之一可能是boost :: asio(參見http://www.boost.org/doc/libs/1_40_0/doc/html/boost_asio/overview/serial_ports.html

+0

我同意,只是發送我的評論,當你回答; o)... – 2012-08-13 18:02:44

+0

你知道任何有關升壓串行教程。他們沒有提供任何一個。有沒有其他的圖書館。我也讀過一些qt有序列庫的地方。哪一個對於C++初學者來說很容易。 – netsmertia 2012-08-13 18:28:41

+0

Boost :: asio也有一些http協作的例子。 – 2012-08-13 19:23:27

0

wxWidgets是一個跨平臺的GUI框架。

讀取串口與GUI無關,也不是跨平臺。

所以wxWidgets與讀取串口無關。

您可以使用Windows API從串口讀取數據或寫入串行端口。

CreateFile打開端口

ReadFile從端口讀取數據

難嗎?還挺!

0

我從來沒有用過它,但有wxCTB

+0

我建議,然後嘗試它。生成文件沒有爲MSVC設置得特別好,並且需要進行一些調整才能獲得靜態以外的工作庫(靜態鏈接到CRT)。我並不喜歡端口枚舉,這是通過使用'GetDefaultCommConfig()'端口COM1到100來完成的,而不是使用安裝API。看起來他們重複使用它們的重疊結構(至少如果你設法同時調用Read()和Write())。它看起來不錯,並且必須爲它們工作,因爲它們有用於Linux和Mac的串行工具,但它看起來像在Windows下需要一些工作。 – tinman 2012-08-14 21:46:41

相關問題