RS 232C - praktyczne programowanie. Od Pascala i C++ do Delphi i Buildera. Wydanie III - ebook
RS 232C - praktyczne programowanie. Od Pascala i C++ do Delphi i Buildera. Wydanie III - ebook
Na uczelniach, w szkołach i biurach pojawia się coraz więcej zaawansowanych urządzeń komputerowych podłączanych przez port szeregowy. Czy koniecznie trzeba płacić wysokie stawki informatykom, aby wykorzystać pełnię możliwości tych nowoczesnych narzędzi? Na szczęście nie. Obsługa transmisji szeregowej przy użyciu standardu RS 232C może być na tyle łatwa, że uczniowie, studenci, nauczyciele, pracownicy naukowi czy inżynierowie mogą samodzielnie tworzyć potrzebne im oprogramowanie.
Dzięki książce "RS 232C -- praktyczne programowanie. Od Pascala i C++ do Delphi i Buildera. Wydanie III" także i Ty szybko nauczysz się pisać programy sterujące urządzeniami podłączanymi przez port szeregowy. Dowiesz się, jak działa transmisja asynchroniczna oraz czym jest standard RS 232C. Poznasz interfejs RS 232C dla systemu Windows i nauczysz się go używać w środowiskach programistycznych Builder i Delphi, co pozwoli Ci pisać potrzebne oprogramowanie w języku Pascal lub C++. Najnowsze, poprawione wydanie zawiera jeszcze więcej przykładów, dzięki którym błyskawicznie będziesz mógł sprawdzić nabytą wiedzę w praktyce.
- Standard RS 232C
- Transmisja asynchroniczna
- Obsługa RS 232C w systemach MS-DOS i Windows
- Wykorzystanie elementów interfejsu Windows API w środowiskach Builder i Delphi
- Testowanie programów do obsługi transmisji szeregowej
- Tworzenie aplikacji wielowątkowych
- Narzędzia graficzne
- Przykładowe aplikacje i ich analiza
- Specyfikacje najważniejszych funkcji
Spis treści
Przedmowa do wydania trzeciego (9)
Wprowadzenie (11)
Rozdział 1. Definicja interfejsu (15)
Rozdział 2. Nowoczesna transmisja asynchroniczna oraz standard RS 232C (19)
- RTS-CTS handshaking (24)
- Konwertery interfejsu RS 232C (28)
- Konwertery USB/RS 232C (29)
- Właściwości portu konwertera (31)
- Protokół XON-XOFF (33)
- Protokół ENQ-ACK (33)
- Protokół ETX-ACK (34)
- Protokół SOH-ETX (34)
- Protokoły typu master-slave (34)
- Rola oprogramowania a podstawowe funkcje interfejsu (36)
- Podsumowanie (38)
Rozdział 3. Jak testować programy do transmisji szeregowej? (39)
- Mirror w MS-DOS (39)
- Terminal dla Windows (41)
- Podsumowanie (43)
Rozdział 4. Transmisja szeregowa w MS-DOS (45)
- Borland C++ (45)
- Borland Pascal (53)
- Funkcja 00h (55)
- Funkcja 01h (56)
- Funkcja 02h (56)
- Funkcja 03h (56)
- Podsumowanie (58)
- Ćwiczenia (58)
Rozdział 5. Programowa obsługa interfejsu RS 232C w Windows (59)
- Typy danych Windows (61)
- Proces projektowania oprogramowania (64)
- Wykorzystanie elementów Windows API w C++Builderze. Część I (64)
- Struktura DCB (65)
- Funkcja CreateFile() (65)
- Funkcja GetCommState() (70)
- Funkcja SetCommState() (71)
- Funkcja CloseHandle() (71)
- Testowanie portu szeregowego (74)
- Struktura COMMPROP (78)
- Funkcja GetCommProperties() (82)
- Struktura COMMCONFIG (88)
- Funkcje GetCommConfig() i SetCommConfig() (88)
- Funkcja CommConfigDialog() (89)
- Struktura COMMTIMEOUTS (90)
- Funkcje GetCommTimeouts() i SetCommTimeouts() (91)
- Nawiązanie połączenia. Wariant I (91)
- Segment inicjalizująco-konfiguracyjny (92)
- Segment wysyłający komunikaty. Funkcja WriteFile() (92)
- Segment odbierający komunikaty. Funkcja ReadFile() (93)
- Przykładowa aplikacja (94)
- Nawiązanie połączenia. Wariant II (97)
- Funkcja SetupComm() (98)
- Funkcja ClearCommError() (98)
- Struktura COMSTAT (100)
- Przykładowa aplikacja (102)
- Zamknięcie portu komunikacyjnego (106)
- Nawiązanie połączenia. Wariant III (107)
- Funkcje GetCommMask() i SetCommMask() (107)
- Funkcja WaitCommEvent() (109)
- Przykładowa aplikacja działająca w środowisku tekstowym (110)
- Przykładowa aplikacja działająca w środowisku graficznym (118)
- Nawiązanie połączenia. Wariant IV (123)
- Funkcja BuildCommDCB() (123)
- Funkcja BuildCommDCBAndTimeouts() (125)
- Inne użyteczne funkcje (126)
- Podsumowanie (128)
- Ćwiczenia (128)
- Wykorzystanie elementów Windows API w C++Builderze. Część II (129)
- Wysyłamy znak po znaku. Funkcja TransmitCommChar() (129)
- Wysyłamy pliki. Funkcje _lopen, _lread(), _lwrite(), _lclose() (133)
- Wykorzystanie komponentu klasy TTimer (143)
- Aplikacja nie lubi milczeć. Funkcja GetLastError() (162)
- Break Time - czas oczekiwania aplikacji (167)
- Podsumowanie (176)
- Ćwiczenia (176)
- Wykorzystanie elementów Windows API w Delphi. Część I (177)
- Testowanie portu szeregowego - inaczej (177)
- Rekord TCOMMPROP (183)
- Nawiązanie połączenia (191)
- Przykładowe aplikacje (194)
- Podsumowanie (203)
- Ćwiczenia (203)
- Wykorzystanie elementów Windows API w Delphi. Część II (203)
- Wysyłamy znak po znaku (204)
- Wysyłamy pliki (209)
- Timer w Delphi (224)
- Podsumowanie (238)
- Ćwiczenia (239)
Rozdział 6. Aplikacje wielowątkowe (241)
- Najważniejszy jest użytkownik (242)
- Użytkownik steruje programem (242)
- Możliwość anulowania decyzji (243)
- Możliwość odbioru komunikatu nawet w trakcie wysyłania danych (243)
- Możliwość wysłania odrębnej informacji w trakcie transmisji pliku (243)
- Delphi (244)
- Funkcja BeginThread() (244)
- Konkurencja dla Timera (256)
- Klasa TThread (264)
- Wielowątkowość i DLL-e (272)
- C++Builder (280)
- Zamiast Timera (289)
- Zamiast Timera. Inny sposób (296)
- Klasa TThread (304)
- Podsumowanie (315)
- Ćwiczenia (315)
Rozdział 7. Wykorzystanie niektórych narzędzi graficznych (317)
- Komponent klasy TChart (318)
- Podsumowanie (328)
- Ćwiczenia (328)
Rozdział 8. Przykładowe aplikacje wykorzystywane w systemach pomiarowych (329)
- Kontroler temperatury (330)
- Aplikacja obsługująca kilka urządzeń (347)
- Programowanie inteligentne (358)
- Brak powtarzalności kodu (359)
- Czytelność kodu (360)
- Łatwość testowania (364)
- Podsumowanie (366)
- Ćwiczenia (366)
Rozdział 9. Tworzenie komponentów (369)
- Komponent TOpenSerialPort. Realizacja w Delphi (369)
- Testowanie komponentu (374)
- Komponent TOpenSerialPort. Realizacja w C++Builderze (380)
- Testowanie komponentu (386)
- Komponenty aktywne (389)
- Kompilacja projektu zawierającego komponent aktywny (393)
- Odczytywanie i modyfikacja wartości własności komponentu aktywnego (395)
- Komponenty w BDS 2006 (397)
- Podsumowanie (398)
- Ćwiczenia (398)
Rozdział 10. Modelowanie oprogramowania sterującego portem szeregowym (399)
- Schematy dziedziczenia (400)
- Ukrywanie konstruktora (405)
- Interfejsy (409)
- Delegowanie operacji (415)
- Delegowanie realizacji interfejsu do własności (422)
- Podsumowanie (426)
- Ćwiczenia (427)
Rozdział 11. POSIX (435)
- Polecenie stty (436)
- Ustawienia kontroli przesyłu danych (sterowanie transmisją) (437)
- Ustawienia wejściowe (437)
- Ustawienia wyjściowe (439)
- Ustawienia czasów oczekiwania (439)
- Ustawienia lokalne (440)
- Specjalne znaki sterujące (441)
- Łączenie atrybutów (442)
- Podstawowe funkcje obsługi portu szeregowego (442)
- Funkcja open() (442)
- Funkcja read() (443)
- Funkcja write() (443)
- Funkcja close() (443)
- Struktura termios (444)
- Funkcja tcgetattr() (448)
- Funkcja tcsetattr() (448)
- Funkcje cfgetispeed() i cfgetospeed() (449)
- Funkcje cfsetispeed() i cfsetospeed() (449)
- Funkcja tcflush() (450)
- Funkcja tcdrain() (451)
- QNX (451)
- Funkcja dev_insert_chars() (453)
- Funkcja dev_ischars() (453)
- Funkcja dev_read() (454)
- Funkcja Receive() (455)
- Funkcja Send() (455)
- Funkcja Creceive() (455)
- Funkcja Reply() (456)
- Funkcja qnx_proxy_attach() (456)
- Funkcja qnx_proxy_detach() (456)
- Podsumowanie (457)
- Ćwiczenia (457)
Dodatek A Specyfikacja funkcji CreateFile() - operacje plikowe (461)
Dodatek B Specyfikacja struktur MODEMDEVCAPS, MODEMSETTINGS oraz funkcji GetCommModemStatus() (467)
- MODEMDEVCAPS (467)
- MODEMSETTINGS (470)
- GetCommModemStatus() (471)
Dodatek C Transmisja asynchroniczna. Funkcje rozszerzone (473)
- Funkcja WriteFileEx() (473)
- Funkcja ReadFileEx() (474)
- Funkcja FileIOCompletionRoutine() (474)
- Funkcja SleepEx() (475)
- Funkcja WaitForSingleObjectEx() (475)
Dodatek D Zamiana liczb z postaci dziesiętnej na binarną (477)
Dodatek E Funkcje CreateThread(), CreateMutex() i CreateSemaphore() (481)
Skorowidz (487)
Kategoria: | Programowanie |
Zabezpieczenie: |
Watermark
|
ISBN: | 978-83-246-9446-4 |
Rozmiar pliku: | 5,4 MB |