:arrow: Graziu: Wlasnie skonczylem pisanie programu do aktualizacji firmware do mojego alarmu GSM, ktory korzysta z bootloader'a i odczytuje dane wlasnie z RS232 i zapisuje je we flashu MCU. Napisane w czystym WinAPI i na watkach. Wykorzystalem oczywiscie biblioteke, ktora tobie polecilem 8) i wszystko smiga jak powinno! http://obrazki.elektroda.net/30_12195067...
Funkcja itoa() zamienia integer na text. W ten sposób można na przyklad wszystkie liczby wstawić do MessageBox. Przykład: char text[8]; itoa(dwErrorFlags,text,10)); MessageBox(NULL,text,"ERROR&quo...
Gdzie ty tą funkcje chcesz wywołać...
Od Pascala i C++ do Delphi i Buildera." pachnie bardzo staro. Używanie RS232 ze współczesnego windows jest proste, to nie to, co za DOS-a( żadnego sterowania kontrolerem, przerwań itd) Kazdą "elegancka" warstwa, czego byś nie używał, i tak siedzi na WinAPI USB jest jeszcze prostsze, bo to emulacja RS232, i odpada gospodarka flagami (uwaga, ze względu...
WinAPI masz w każdej, obsługe baz danych też praktycznie w każdej wersji (ale nie w każdej odmianie), obsługi portów szeregowych przez API masz w każdej, bez API nie ma domyślnie w żadnej, są komponenty ale nie firmowane przez borlanda. Obsługe TCP możesz robić przez winsock (takie API do netu) przy każdej wersji, przez komponenty Client/Server Socket...
Proszę bardzo: Pamiętaj żeby czytać warningi kompilatora. Wg http://msdn.microsoft.com/en-us/library/... parametr nNumberOfBytesToRead (u Ciebie len) to ilość danych jaka maksymalnie może być odebrana. Powinieneś wpisać tam 256, w Twoim kodzie jest to losowa wartość z pamięci.
Nie zaglądałem do źródeł, ale jeśli piszesz pod XP - potrzebujesz specjalnego sterownika w stylu UserPort. To tyczy się starego oprogramowania które próbuje dostać się do portu poprzez jego adres w przestrzeni I/O, program korzysta z WinAPI (do źródeł zajrzałem). Stawiałbym na błędną konfigurację portu. COM4 to pewnie port wirtualny. Miałem kiedyś...
Tylko, że z tego co widzę, to jest komponent (?) dla jawy nie samego C++ Buildera, no i jest komercyjny (ewentualnie wersja ewaluacyjna jest też do pobrania). Przecież w Builderze jest komponent Chart . Przykład użycia: 1. Wybierzasz komponent z palety Additional 2. W Object Inspector klikasz na SeriesList 3. W okienku EditingChart1 klikasz na Add...
Napotkałem kolejny problem...nie wiem w jaki sposób miałbym zrealizować taką funkcję która co jakiś czas po uruchomieniu automatycznie by sie wywoływała. Tzn chodzi mi o to że odpalam przyciskiem zbieranie pomiarów i one co 100ms się zbierają i aktualizuje się treść TextBoxa...jednakże nie chodzi mi o to żeby po wciśnięciu przycisku program wpadł w...
Wiam. Mam pytanie. Chce wysłać przez RS232 ramkę z ustawionymi bitami za pomocą WINAPI. Pomijając ustawienia bufora, strukt dcb... itp. Ale jaka komenda wysyła np ( po ustawieniu właściwości portu na dane o dług 8 bit ) 00101000 ??? Nie chce wysyłać jakiś char-ów ( tak jak w przykładzie " praktyczne programowanie rs232" ) ale tylko takie bity. I jeszcze...
Dlaczego do bufora 32 znakowego wpisujesz 64 znaki? Lekko zmodyfikowałem funkcję ReadUart, aby wypisywała zmienną buf: Jakbyś jeszcze kończył string w miejscu, gdzie skończyły się dane, to nie wypisywałyby się śmeci. Coś w tym stylu: [syntax=cpp] ret = ReadFile(hPort, buf, len,&retlen, NULL); buf[retlen] = 0; cout << buf; [/syntax] Tak w...
Ja nie wiem.Czy trzeba bylo do tego smazyc cala knige ?! Przeciez to raptem kilka funkcji w WINAPI !
Witam! Problem mój polega na tym, że krótki program który napisałem zacina się pod Win XP. Zasada działania: Po wciśnięciu na jeden z dwóch przycisków, na port COM1 wysłane mają zostać 2 Bajty - 1 sterujący (dla rozwiązania problemu to na razie 'R';'G';'Y'), oraz 0x0A (znak nowej linii - po otrzymaniu go podłączony pod Com1 układ zapala LED o odpowiednim...
Wg. mnie przez WinAPI jest jednak najprościej. to że wszystkie inne funkcje tak naprawdę korzystają z WinAPI to już pomijam. Otwieram plik COM1, na stronie Microsoftu MSDN jest opisane jakich parametrów użyć. I normalnie WriteFile i ReadFile działają.
nie chcę się spierać, że w oparciu o WinApi można równie szybko i łatwo obsłużyć transmisję RS232 - ale dla nieco zaawansowanych. Po to podałem ten komponent aby ułatwić kolegom pewne sprawy na początku, dzięki niemu nie muszą się zajmować najpierw przygotowaniem sobie procedur obsługi RS232 tylko korzystają z gotowych rozwiązań. I chwała Ci za to...
Oki ale ja uzywam komponentu ComPort a nie WinApi
to moze transmisja synchroniczna? bo ta w ktorej ustala sie ilosc bitow w ramce jest asynchroniczna, a w synchronicznej blok danych moze miec ustalona wielkosc (wiecej niz 8). Tylko aby ustanowic transmisje synchroniczna na porcie RS232 w Winapi wiem tyle co nic bo nie moge niczego znalezc w necie. Ogolnie chodzi mi o sterowanie nadajnikiem podczerwieni...
jesli moge sie udzielic w sprawie obslugi poru COM to mozna to bardzo latwo zrobic przy pomocy WinApi
Builder nie ma komponentu do obsługi portu szeregowego. Taki sposób znalazłem w książce Daniluka Programowanie rs232 w c++ builder. Zna ktoś jakieś komponenty do rs232 pod c++ builder 2007???
Skonfigurowany COMn otwierasz w WINAPI jak plik. Tutaj masz przykład z LPT: http://www.elektroda.pl/rtvforum/lpt-prz...
trochę lektury :) http://www.elektroda.pl/rtvforum/topic28... Swoją drogą korzystałem z różnych komponentów obsługi RS232 i po kilku zmianach komponentów, zostałem przy WinAPI. Nauka obsługi WinAPI dla portu COM jest prosta, bo istnieje polskojęzyczna książka (Daniluk) i nie trzeba być na łasce komercyjnych komponentów, które potrafią przestać...
tak... używam winapi ale chcę skorzystać teraz (przetestować) komponenty... ale niestety nie potrafię ich instalować :-(
Jezeli sie nie myle to wlasnie kod zrodlowy comport opiera sie na winapi,wiec mozesz go przejzec i skopiowac procedury i funkcje tak aby pasowaly do twojego programu ;) a wlasnie dlatego ,ze mialem problmy z przechodzacymi danymi w winapi przeszedlem na komponenty wiec przynajmniej ja nie pomoge
dziekuje ;) Mam jeszcze jedna prosbę, może ktoś z was orientuje się jak ustawić 1 logiczną (stan wysoki) na stałe na lini DCD (wykorzystuje winapi w C++)
Moze nie rozwiaze twojego problemu ale mam sugestie zebys z eltimy wrzucil dump (tam masz tylko dane wyslane i odebrane i jest czytelniejsze czy ida pakiety czy sa jekies sekwencej inicjujace i konczace) oraz wykorzystanie komponentu com port ( odwala cale ustawienia w winapi za ciebie tylko we wlasciwosciach ustawiasz parametry polaczenia)
Wow niesamowity konkret 8O To ja tez udziele konkretu i powiem ze mozna to napisac w WinAPI uzywajac takich funkcji jak CreateFile,WriteFile,ReadFile,struktury DCB,COMMSTAT i jeszcze kilku innych funkcji oraz struktur :lol:
Witam ! Robię projekt na zaliczenie w Visualu. Jest to program komunikujący się z uC za pomocą RS232 (generator/częstotliwościomierz). Ponieważ program pisać musze w WinApi to mam następujący problem: Wstawiłem do dialoga Slider (w Resource Editorze), przed jego wstawieniem program kompilował się i uruchamiał, po wstawieniu komponentu program się uruchamia...
Witam, tak jak w temacie, poszukuję programu , który będzie mógł wyświetlić dane w formie wykresu funkcji z mikrokontrolera. Potrzebuję: 1)program darmowy, 2)możliwość pisania programu w C/C++ (inne jezyki też toleruję) 3)możliwość odbioru danych z RS232 lub USB (nie kuniecznie w czasie rzeczywistym) 4)fajnie było by jak by miał WinApi
Dzięki za tak wyczerpującą odpowiedź. Musisz jednak wiedzieć że ja nie mam problemu z obsługą RS232 i WinAPI :D . Przedstawię od początku mój problem. Robię pracę dyplomową (bardzo ambitną, więc jest nas trzech). Niestety na mnie padło pisanie programu. Z kompa ma być wysyłany bajt, którego bity beda zawierały informację: lewo, prawo itd. Dlatego chcę...
Witam, te "dziwne słówka" to pewnie funkcje WinAPI (ReadFile, WriteFile). Co robią dowiesz się z msdn: http://msdn2.microsoft.com/en-us/default... Pozdrawiam, Krzysztof.
WinAPI przyszło już obsłużyć :D Męczłem się chyba z pół roku z nauką tego ale jest już nieźle :) A konkretnie siedziałem nad transmisją szeregową RS232
Ja na Twoim miejscu napisałbym program analizujący i wizualizujący dane, bo z tego co doczytałem w manualu tego termometru nie ma dedykowanego programu dla niego (producent zaleca użycie hyper terminala i excela). Polecam C++ Buildera, musisz znaleźć jakiś komponent np. comport, ActiveExperts (ja korzystam z tego drugiego i chwale go sobie). Ewentualnie...
Witam... Już mi ręce opadają i coś nie potrafię znaleźć w jaki sposób zainstalować/obsłużyć dowolny komponent Delphi - do transmisji rs232. Szukałem jakiś instrukcji krok po kroku ale się nie dogrzebałem, jak już pojawiała mi się ikonka CommPortDriver (RS232) w zakładce System to nie wiem jak z niej skorzystać... Proszę o jakiś link do opisu krok po...
mam prośbę do autora tego programu jak by mógł napisać jak się obsługuje RS232 (com) w c++ lub jakimś innym języku.Ale nie pod dos gdzie wysyła się no port 3f8 odpowiedzie wartości tylko z wykorzystaniem WinAPI lub jakś żeby pod Win to było
W standardzie w Builderze nie ma nic rozsądnego do współpracy z portem szeregowym. Zamiast męczyć się z WinAPI poszukaj czegoś gotowego - np. TCiaPort, TComPort, TurboPower Async. Znajdziesz tam gotowe zdarzenia OnDataAvailable lub coś w tym stylu.
Dziękuję za odpowiedzi i pomoc. Jeżeli chodzi o RS232 to zmieniłem podejście i zmodyfikowałem aplikację tak by nie korzystać z WinAPI CreateFile(), WriteFile() itd tylko klasy SerialPort(). Dzięki obsłudze zdarzenia DataReceived wszystko chodzi dokładnie tak jak tego potrzebowałem:). Wracając do rysowania to niestety tak jak napisałeś jest to mój pierwszy...
Witam ! Piszę program analizatora stanów logicznych. Sam analizator to uC, który wysyła przez RS232 dane do komputera. Program ten więc musi być dość szybki na dość słaby komputer, który mam w warsztacie. Pisałem kiedyś w Delphi, ale to odpada - kod jest bardzo nieoptymalny. Wybrałem więc WinApi - tu piszę w C. Teraz mam pytań kilka. Czy funkcje do...
Jeśli już piszesz w WinAPI to czemu by tego nie kontynuować? Ale Twój wybór. Chyba nie ma przeszkód w równoczesnym wysyłaniu i odbieraniu danych. Tylko, żebyś napisał tak program, żeby się nie pogubił/zapętlił.
Witam. Jakim sposobem w delphi wysłać ciąg 96 danych ? w tej chwili obsługuję RS232 przez winapi konfig wygląda tak: // -- wartości flag sterujących portu szeregowego -- dcb_fBinary = $0001; dcb_fParity = $0002; dcb_fOutxCtsFlow = $0004; dcb_fOutxDsrFlow = $0008; // -- fDtrControl -- DTR_CONTROL_ENABLE = $0010; DTR_CONTROL_HANDSHAKE = $0020; dcb_fDsrSensitivity...
Zwykły komponent TTimer raczej nie da tu rady. Trzeba operować znacznie mniejszymi czasami, niż te, dla których TTimer gwarantuje przyzwoitą dokładność, gdyż działa on w sposób zadowalający dla rozdzielczości czasowej większej, niż typowe okresy przełączania wątków. Kiedyś robiłem coś takiego, ale chyba nie dogrzebię się już do kodów. Pamiętam, że odczyt...
Skorzystaj z funkcji WinAPI : CreateFile (zarówno dla pliku do zapisu, jak i dla portu "COMx"), SetCommState, SetCommTimeouts, SetupComm, CloseHandle... Szczegóły znajdziesz googlem, w pliku Win32.hlp itp.
Tak tylko że w windzie (xp i wyższe) do portu można się dostać przez WinAPI i tylko dlatego nie jestem co do tego taki pewien :( PS. Co miałeś na myśli pisząc czyste QT :?: Są jakieś odmiany bo dopiero zaczynam pisać w tym programie :?:
Chodzi o port RS232, tak? Poszukaj trochę o tym interfejsie, poczytaj. Wysyłanie odbywa sie przez UART, jedynie logika danych jest odwrotna: w UART 0 to 0V, 1 to VCC, w rs232 0 to >3V, 1 to <-3V (aczkolwiek przejściówki nie posiadające w sobie przetwornicy (max232), czyli wszystkie <10zł działają na 5V i 0V. Poszukaj na forum instrukcji do...
No i właśnie dlatego lepiej to robić, jak pisałprzedpiśca - w WINAPI - poczytaj o CreateFile, ReadFile itp na MSDN-ie, a najlepiej faktycznie kupić książkę "RS 232C - praktyczne programowanie. Od Pascala i C++ do Delphi i Buildera. Wydanie II" z Heliona, bo tam wszystko to jest opisane. No tak. tylko jak pisalem wczesniej wyprobowalem rowniez uzycie...
Konfiguracja RS jest przepisana z książki RS232 Praktyczne Programowanie i z tego co się w necie orientowałem raczej wszystko jest ok. bool CRS::NawiazPolaczenie() { lpFileName="COM1";//------wybranie nazwy portu----------------- hCommDev=CreateFile(lpFileName, GENERIC_READ | GENERIC_WRITE,0,NULL,OPEN_EXISTING,0,NUL... if (hCommDev != INVALID_HANDLE_VALUE)...
a możesz zdradzić w jaki sposób zabezpieczyć oprogramowanie np. przed wyjęciem wtyczki z portu USB podczas trwającej transmisji ? nigdzie nie znalazłem informacji jak to zrobić a moja aplikacja korzystająca z WinApi po prostu zwisa... Hmmm ciężko to opisać w dwóch zdaniach tym bardziej, że do tej pory pisałem taki soft tylko przy użyciu Delphi. Jednak...
Też polecam metodę z przedstawieniem liczby w postaci znakowej i przesłania jej w takiej postaci. Wymieniłbym tu następujące uwagi: 1. Rzeczywiście, jak zauważył bobbyAIR , żadna z wartości zaraz po odbiorze przez uP lub PC nie ma jeszcze jakiejś szczególnej interpretacji, o ile takiej nie narzucisz. Jednak używając postaci binarnej, każdy przesyłany...
Witam. No faktycznie operacji wej/wyj nie robi się równolegle. Rozwiązałem ten problem przez włączenie funkcji nakładanego wejścia i wyjścia (OVERLAPPED). Poniżej zamieszczam kod. Nie jest on elegancki zresztą jak poprzedni, ale są to wersje robocze:D Pomogła mi stronka http://home.elka.pw.edu.pl/~jszewins/ind... zakładk hobby, a dalej programowanie...
Ok, trochę się posunąłem z problemem. Pierwszy problem był w komendzie wysyłanej do wagi. Zgubiły mi się znaczki przy kodowaniu z hexa. Piszecie, że program nie czeka na odpowiedź z wagi. Jak to zaimplementować? Zapewne zaraz po komendzie odczytu, ale jak? Przyznam się, że nie jestem w temacie zaawansowany, a to co napisałem, napisałem na podstawie...
No właśnie takie podobne jak Ty znajdywałem. Nie ma nic takiego co by w konsoli wyświetlało tylko? [syntax=c]#include <windows.h> #include <stdio.h> #include<iostream> #include<fstream> #include <conio.h> #include <string.h> static DCB dcb; //struktura DCB (Device Control Block) definiująca rodzaj połączenia static...
winapi rs232 rs232 winapi delphi rs232 delphi winapi
przetwornica lampa naprawa klawiatury telefonu samsung tłoki maluch
podłączenie przewodow modułu gniazdka podłączenie przewodow modułu gniazdka
Daewoo Lanos radio AKF-9595, AKF-42xx – obsługa, kod, typowe usterki, montaż BT TCL 32S615 MT21X Main Board Schematic – Where to Find Service Manual PDF