K U R S
Programowanie portu szeregowego
w systemach operacyjnych Linux
i Windows, część 7
Umiejętność programowej obsługi interfejsu RS232 od strony Jeśli tego nie zrobimy, jako
katalog w którym znajduje się
komputera PC jest dziś istotnym elementem elektronicznego
biblioteka rozumiany będzie do-
rzemiosła. W niniejszym kursie piszemy jak w praktyce
myślny katalog /usr/local/Troll-
oprogramować port szeregowy w środowiskach Linux i Windows.
tech/Qt 4.0.1.
8. Uruchomić skrypt konfiguracyjny
Wiele miejsca poświęcamy pisaniu przenośnych aplikacji GUI,
wpisując:
które korzystają z interfejsu szeregowego i zachowują się tak samo
$ ./configure
w systemach Windows jak i Linux. Wszystkie omawiane zagadnienia
a następnie yes w celu zaakcep-
poparte są szczegółowo opisanymi praktycznymi przykładami.
towania licencji.
9. Po skonfigurowaniu należy skom-
Instalacja biblioteki Qt 3. Rozpakować archiwum wpisując: pilować bibliotekę wpisując:
w systemie Linux (X11) $ tar xvzf qt x11 opensource $ gmake
Instalacja pakietu Qt 4.0.1 src 4.0.1.tar.gz lub
w systemie Linux przebiega bardzo W efekcie powstanie katalog $ make
podobnie do instalacji w systemie o nazwie qt x11 opensource src- Podobnie jak w przypadku
Windows, choć może być nieco 4.0.1. systemu Windows, proces kom-
bardziej skomplikowana. W celu jej 4. Przejść do utworzonego katalogu. pilacji jest bardzo długi może
przeprowadzenia należy ściągnąć 5. Jako root stworzyć dowiązanie dochodzić do kilku godzin.
plik qt x11 opensource src 4.0.1.tar. symboliczne do tego katalogu, 10. Po skompilowaniu biblioteki Qt
gz spod adresu [1]. Przykładowy wpisując: należy dodać następujący wiersz
proces instalacji przedstawiono dla $ ln s /home/arek/qt x11 do pliku /etc/ld.so.conf:
systemu Mandrake 10.1, ale oczy- opensource src 4.0.1 /usr/local/qt /usr/local/qt/lib
wiście jest ona taka sama dla in- Dzięki temu możliwe jest a następnie zalogować się jako
nych dystrybucji systemu Linux. zainstalowanie kilku wersji bi- root i wpisać:
Ewentualne różnice są kosmetyczne blioteki Qt. Poprzez odpowied- $ ldconfig
i związane ze specyfiką konkretnej nie manipulowanie tym dowią- Dzięki temu konsolidator (lin-
dystrybucji. zaniem, do każdej z nich można ker) będzie miał informację o ka-
Kolejne czynności związane z in- się odwoływać poprzez /usr/lo- talogu w jakim umieszczone są
stalacją są następujące: cal/qt. biblioteki pakietu Qt.
1. Sprawdzić, czy w katalogu /usr/ 6. Nadać następującym zmiennym 11. Jeśli jako katalog instalacji pozo-
X11R6/include/X11 (lub analo- środowiskowym nazwy: stawiono katalog domyślny (nie
gicznym, zależnie od dystrybu- QTDIR=/usr/local/qt skorzystano z opcji prefix skryp-
cji systemu Linux) znajdują się PATH=$QTDIR/bin:$PATH tu konfiguracyjnego configure), to
pliki o nazwach X*.h (np. Xlib. Zapis powyższy należy umie- należy utworzyć dodatkowe do-
h, Xatom.h). Jeśli nie, to na- ścić w pliku konfiguracyjnym wiązanie symboliczne:
leży zainstalować którykolwiek używanej powłoki. Dla powłoki $ ln s /home/arek/qt x11 open-
z pakietów RPM, jaki zawiera te bash jest to plik .bash_profile. source src 4.0.1 /usr/local/Troll-
pliki. Ja wykorzystałem pakiet Aby zmiana przyniosła skutek, tech/Qt 4.0.1
xorg x11 devel 6.8.2 9tr.i586.rpm, należy się wylogować i ponow- Przy wykorzystaniu opisanego
ale nadaje się do tego dowolny nie zalogować. Można też ustalić sposobu instalacji biblioteki Qt nie
pakiet, który w nazwie zawiera wartości wymienionych zmien- ma potrzeby wykonywania polece-
człon x11 devel . Jeśli system, nych na czas trwania bieżącej nia make install.
którym dysponujemy nie używa sesji wpisując:
serwera X.Org lecz XFree86, na- $ export QTDIR=/usr/local/qt Kompilacja aplikacji testowej
leży zainstalować pakiet odpo- $ export PATH=$QTDIR/ w systemie Linux
wiedni dla tego serwera. bin:$PATH Dzięki dobrej jakości biblioteki
2. Skopiować plik qt x11 openso- 7. Warto poinformować skrypt kon- Qt, przeniesienie programu stworzo-
urce src 4.0.1.tar.gz do katalogu figuracyjny o tym, w jakim kata- nego w systemie Windows do sys-
domowego lub innego, w którym logu ma się znajdować biblio- temu Linux jest niezwykle proste.
chcemy mieć umieszczoną bi- teka Qt. W niniejszym przykła- Wystarczy skopiować pliki zródłowe
bliotekę Qt. W moim przypadku dowym przypadku można tego do dowolnego katalogu (np. /home/
był to katalog /home/arek i ta- dokonać wpisując: arek/Example2W w przypadku apli-
kiego katalogu dotyczy niniejszy $ configure prefix /home/arek/ kacji Example2W) i znajdując się
opis przykładowej instalacji. qt x11 opensource src 4.0.1 w nim wpisać:
Elektronika Praktyczna 7/2007
89
K U R S
Rys. 13. Aplikacja testowa działająca w systemie Linux (styl Rys. 14. Aplikacja testowa działająca w systemie
Plastique) Linux (styl Motif)
$ qmake project (opcjonalnie) Podsumowanie ca się z urządzeniami zewnętrzny-
$ qmake Wiemy już jak stworzyć prostą mi przez interfejs RS232.
$ gmake (lub make) aplikację przenośną, wykorzystują- Arkadiusz Antoniak, EP
Jeśli podczas instalacji nie po- cą łącze RS232. W następnej czę- arkadiusz.antoniak@ep.com.pl
pełniono żadnego błędu, w wyni- ści kursu zostanie zaprezentowany www.antoniak.ep.com.pl
ku otrzymamy plik wykonywalny przykładowy program woltomierza
Example2W. Aplikację uruchamiany cyfrowego działający w systemach Linki internetowe:
wpisując: Windows i Linux. Program o ty- [1] ftp://ftp.trolltech.com/qt/source/
$ ./Example2W le ciekawy, że zawierający pew-
i możemy cieszyć oczy widokiem ne elementy wielowątkowości, bez
podobnym do tego, który przedsta- których nie może się obyć żadna
wiono na rys. 13 i 14. nietrywialna aplikacja komunikują-
R E K L A M A
180x128
1/2
Elektronika Praktyczna 7/2007
90
Wyszukiwarka
Podobne podstrony:
rs232 linux win32 cz2rs232 linux win32 cz6rs232 linux win32 cz1rs232 linux win32 cz8rs232 linux win32 cz3rs232 linux win32 cz4rs232 linux win32 cz5STM32 Butterfly RS232Linux 2000 DVB T Experimentslinux kobietycompilar linuxLinux IPCHAINS HOWTO Appendix Differences between ipchains and ipfwadmsystemy operacyjne cw linux apache mysqlLinux materialyLinux System PlikówAsembler linuxNauka słówek i memoryzacja na Puppy Linuxlinux 1 0032 Kanal Digital Eingangskarte fuer RS232więcej podobnych podstron