-
Data: 2009-03-05 23:12:23
Temat: Re: WinAPi serial port
Od: "cubah" <c...@t...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]To otwarcie portu:
m_hCom = ::CreateFile( "COM1", GENERIC_READ | GENERIC_WRITE,
0, // exclusive access
NULL, // no security attributes
OPEN_EXISTING,
0,
NULL );
// Driver setup = HT:
ok = ::SetupComm( m_hCom, 8192, 8192 );
ASSERT( ok );
DCB m_Dcb;
ok = ::GetCommState( m_hCom, &m_Dcb );
ASSERT( ok );
m_Dcb.fParity = 0; // no errors reported
m_Dcb.fBinary = TRUE;
// Flow ctrl:
m_Dcb.fInX = FALSE;
m_Dcb.fOutX = FALSE;
m_Dcb.fOutxCtsFlow = FALSE; // RTS/CTS
m_Dcb.fRtsControl = RTS_CONTROL_DISABLE;
m_Dcb.fOutxDsrFlow = FALSE; // DTR/DSR
m_Dcb.fDtrControl = DTR_CONTROL_DISABLE;
m_Dcb.BaudRate = CBR_19200;
m_Dcb.Parity = NOPARITY; // no parity
m_Dcb.StopBits = ONESTOPBIT;
m_Dcb.ByteSize = 8;
m_Dcb.fAbortOnError = 1;
m_Dcb.fDtrControl = 1;
m_Dcb.fTXContinueOnXoff = 1;
m_Dcb.fRtsControl = 1;
m_Dcb.XonLim = 80;
m_Dcb.XoffLim = 200;
ok = ::SetCommState( m_hCom, &m_Dcb );
ASSERT( ok );
COMMTIMEOUTS m_CommTimeouts;;
m_CommTimeouts.ReadIntervalTimeout = 10;
m_CommTimeouts.ReadTotalTimeoutConstant = 0;
m_CommTimeouts.ReadTotalTimeoutMultiplier = 0;
m_CommTimeouts.WriteTotalTimeoutConstant = 5000;
m_CommTimeouts.WriteTotalTimeoutMultiplier= 0;
ok = ::SetCommTimeouts( m_hCom, &m_CommTimeouts );
ASSERT( ok );
ok = SetCommMask( m_hCom, EV_RXCHAR | EV_ERR );
ASSERT( ok );
tu reszta kodu ktory juz przeslalem....
Użytkownik "cubah" <c...@t...pl> napisał w wiadomości
news:gopmcp$mik$1@mx1.internetia.pl...
> Hello, mam podlaczony modul GSM do RS232, pod hyperterminalem po kazdym
> wyslanym znaku "A" dostaje odpowiedz od modulka (znak ktory wyslalem).
> Napisalem kod jak ponizej:
>
> ok = ::WriteFile ( m_hCom, "A", 1, &len, NULL );
> ASSERT( ok );
> ASSERT( len == 1 );
> ::Sleep( 100 );
> ok = ::ReadFile( m_hCom, buf, 1, &len, NULL );
> ASSERT( ok );
> ASSERT( len == 1 );
>
> i kod zatrzymuje sie na funckji ReadFile.
>
> Juz mnie trafia szukalem z 5 godzin co moze byc nie tak i nie wiem czemu
> synchorniczny odczyt/zapis nie dziala skoro na stronie MSDN taki sposob
> rekomenduja (ponad OVERLAPPED).
>
> Kuba
>
>
>
Następne wpisy z tego wątku
- 05.03.09 23:14 cubah
Najnowsze wątki z tej grupy
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
Najnowsze wątki
- 2025-07-18 celnicy pobili policjanta
- 2025-07-18 Warszawa => Technik IT - Konfiguracja i Wsparcie Sprzętowe <=
- 2025-07-18 Warszawa => Specjalista ds. Sprzętu IT i Wsparcia Technicznego <=
- 2025-07-18 Białystok => Kotlin Developer <=
- 2025-07-18 Warszawa => Sales Director (Cloud solutions) <=
- 2025-07-18 Spalinowa trauma
- 2025-07-18 Polska => Senior Key Account Manager <=
- 2025-07-18 Białystok => Programista Kotlin <=
- 2025-07-18 Szczecin => Key Account Manager IT <=
- 2025-07-18 Łódź => Programista Mainframe (z/OS, Assembler) <=
- 2025-07-18 Łódź => Mainframe (z/OS, Assembler) Developer <=
- 2025-07-18 Lublin => Delphi Programmer <=
- 2025-07-18 Lublin => Programista Delphi <=
- 2025-07-17 Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- 2025-07-17 Andrzej Duda ułaskawił Roberta Bąkiewicza od zarzutu zapchnięcia ze schodów aktywistki Babci Kasi