代码改变世界

windows下编译QextSerialPort

2011-04-16 02:13  bingcaihuang  阅读(2353)  评论(0编辑  收藏  举报

QextSerialPort是一个跨平台的第三方串口类,可以很方便地在QT中对串口读写操作。但是默认使用的读写方式是查询方式,一般都是在程序中使用定时器。如果需要快速响应串口读写,可以使用多线程方式。最近了解了下QextSerialPort,写了个小程序用VSPM模拟串口接收到数据,于MainWindows中显示。

编译QextSerialPort前提是要了解QMAKE,编写QextSerialPort工程.pro文件如下:

  1. PROJECT                 = qextserialport  
  2. TEMPLATE                = vclib  
  3. CONFIG                 += release  
  4. CONFIG                 += qt  
  5. CONFIG                 += warn_on  
  6. CONFIG                 += thread  
  7. CONFIG          += dll  
  8. #CONFIG         += staticlib  
  9. QT                     -= gui  
  10. OBJECTS_DIR             = build/obj  
  11. MOC_DIR                 = build/moc  
  12. DEPENDDIR               = .  
  13. INCLUDEDIR              = .  
  14. HEADERS                 = qextserialbase.h \  
  15.                           qextserialport.h \  
  16.                           qextserialenumerator.h  
  17. SOURCES                 = qextserialbase.cpp \  
  18.                           qextserialport.cpp \  
  19.                           qextserialenumerator.cpp  
  20. unix:HEADERS           += posix_qextserialport.h  
  21. unix:SOURCES           += posix_qextserialport.cpp  
  22. unix:DEFINES           += _TTY_POSIX_  
  23.   
  24. win32:HEADERS          += win_qextserialport.h  
  25. win32:SOURCES          += win_qextserialport.cpp  
  26. win32:DEFINES          += _TTY_WIN_  
  27. win32:LIBS             += -lsetupapi  
  28.   
  29. DESTDIR                 = build  
  30. #DESTDIR                = examples/enumerator/debug  
  31. #DESTDIR                = examples/qespta/debug  
  32. #DESTDIR                = examples/event/debug  
  33. CONFIG(debug, debug|release) { 
  34.     TARGET = qextserialportd 
  35. } else { 
  36.     TARGET = qextserialport 
  37. }  
  38. unix:VERSION            = 1.2.0  
 

要注意模板选择成vclib,生成库文件,VS2005中选择配置属性->常规-> 配置类型选择”静态库(.lib)”,确定后再编译,把编译好的lib文件放到Qt的lib目录中,在对应工程中添加该库,即可直接用QextSerialPort提供的接口。