Przyklad: ramka ma 50 bajtow, w buforze masz 60 bajtow, poprzez ComPort1.ReadStr(odebrane,Count); odbierasz 60 bajtow ,czyli 50 ramka +10 nastepnej ramki, dlatego pytalem co robisz z odebrane , bo jezeli przetwarzasz pod wzgledem tylko jednej ramki (50 bajtow) , to te 10 idze do smietnika. przy nastepnym odczycie bufora masz wlasnie ramke z ucietymi...
Rozumiem że zakomentowałeś, zamykanie i otwieranie portu podczas wysyłania oraz linie InputData = serialPort1.ReadExisting(); "Odepnij" to zdarzenie DataReceived i dodaj dla testów jeszcze jeden Button i daj tam: string data = serialPort1.ReadExisting(); ReadLine() czeka na znak nowej linii, może przesyłasz "cos", a nie "cos\n"?
Kompilatorowi wszystko jedno, czy napiszesz case 0x61:, czy case 'a':, za to człowiekowi nie jest wszystko jedno, kiedy czyta taki program, więc pisz case 'a':, case 'b':. TH1 i TL1 powinny mieć tę samą wartość początkową: 256 - FCLK / 12 / 16 / BAUD.
A dziękuję Kolego mirekk36 za pozytywne słowa. Jeśli autor tematu woli wersję papierową to polecam książkę: A. Daniluk, RS 232 C. Praktyczne programowanie. Od Pascala i C++ do Delphi i Buildera, Helion, Gliwice 2001. W moich ulubionych znalazł się jeszcze jeden link dotyczący RS232: http://www.lodd.p.lodz.pl/kwbd/rs232.htm
Sam ostatnio z tym się bujałem z tym, że używam FLTK... Generalnie tryb OVERLAPPED jest upierdliwy i mi to do d... to działało... Trzeba pamiętać o tym, że funkcje odczytu/zapisu wracają natychmiast niezależnie czy odczytały cokolwiek czy nie potem to już zabawa z flagami, events itp, itd... Do odczytu, jeżeli już faktycznie coś zostało odebrane, używasz...
Efekt jest nieciekawy bo zamiast na porcie szeregowym operujesz na deskryptorze numer 0 :) Zmienna lokalna fd przysłania Ci zmienną globalną o tej samej nazwie.
Napisałem parser dla twoich wymagań.. cały bufor to jeden string.. dane zamiast pobierać z rs232 to są pobierane z pliku (dla lepszego testu w porcjach o losowym rozmiarze od 1 do 10 bajtów) i przekazywane do parsera... jedyne co musisz zmienić to źródło danych przekazywanych do AppendToBuf oraz samą obsługe odpowiedzi -> zamienić writeln na co kolwiek...
Witam! Znalazłem aplikacje odbierajacą i wysyłająca przez port szeregowy rs232 w C++ Builder. Jednak program odbiera deane tylko do pierwszego 0 a ramka ktora wysyłam i chce odebrać przy zwartm Tx i Rx posiada też zera, więc otrzymują ją niekompletną. Proszę o pomoc. Pozdrawiam.
Mnie zastanawia jedna rzecz, skoro korzystasz z przerwań to po jakiego grzyba tam input? Zobacz jak mozna to rozwiazac: Odebrano: Disable Urxc ' wylaczenie przerwania na czas trwania aktualnego 'Jesli licznik znakow jest mniejszy od maksymalnego rozmiaru bufora to... If Licz_znaki < Max_znakow Then '...zwieksz licznik znakow, do buforu transmisji...
Witam Atmega16 wysyla przez rs232 dane z przetwornika adc.W c++ builderze uzywam komponoentu ComPort do obslugi rs232.Jak zrobic zeby te dane byly zapisywane do tablicy Tab[512] w postaci liczb hex.
Portu com nauczylem sie sterować z ksiązki RS232C Andrzeja Daniluk-a (Helion) Jednak to za mało nie mam tam wszystkiego jest tylko jak odbierać znaki liter, znaki sterujace i tu mam zonka. Otóż Mikrokontroler odczytuje bajty z zew pamieci i wysyła je przez rs232 do komputera i tu mam problem, gdyz wysyłanie jest bardzo szybkie i wysyła wszystkie mozliwe...
Nieskonczona pętle realizujesz przez TTimer, o podany interwal fukcja sie wykonuje (od 1 ms)
Port com po każdym zgłoszeniu zdarzenia zwróci pojedynczy bajt - to ty musisz te bajty jakoś połączyć np w tekst. Dodatkowo jeżeli sprawdzasz flagę comEvReceive w pętli to nie wiem czy ona sama się zeruje, jeżeli nie to czy to się nie zapętli w nieskończoność? Spróbuj dodać MSComm1.InputLen = 0 w tym "case" gdzie odbierasz znak.
Czy napewno uruchamiasz ATtiny ? UCSRB = _BV(RXEN), _BV(TXEN); //Uruchomienie RxD i TxD
Witajcie Napisałem program , wysyła mi dane na rs232 w hex tak jak potrzebuję i tutaj wszystko jest w porządku. Problem rodzi się przy odbiorze danych , potrzebuję wyświetlać/odbierać dane również w HEX Napisaną mam taką formułę: [syntax] Private Sub SerialPort1_DataReceived(ByVal sender As System.Object, ByVal e As System.IO.Ports.SerialDataReceivedEventA...
Tu masz odpowiedź: http://pl.wikipedia.org/wiki/Tablica_asc... Znaki tekstowe zaczynają się od 0x20h a te wcześniejsze są po prostu zastępowane kwadratami
Witam chodzi mi o komunikacja uP 89c2051 (do programowania urzywam bascoma) przez to lacze uP bedzie wysylal dane liczbowe komputer bedzie je przetwarzal i wysylal spowrotem Zalezy mi na v-basicu bo go dobrze znam No i z czym masz problem? Określ konkretnie pytanie. Nikt nie będzie zgadywał o co Ci chodzi.
Witam w jaki sposób odbierać i wysyłać dane wysłane przez Rs232 w Bascom-ie ? Chciałbym z komputera wysyłać taki string np (R255G20B120) jak to odebrać i trzem zmiennym typu bajt przypisać wartości r=255 g=20 b=120 dokładnie chodzi mi o odpowiednik takiego czegoś w bascom -ie var s:string; r,g,b :byte; begin s:='R120G30B255'; r:=StrToInt(Copy(s,2,Pos(...
Jest wiele sposobów. Możesz na przykład przepisać znaki od przecinka do końca buforu w drugi bufor pomocniczy i wówczas użyć funkcji atoi. PS. zamykasz stringa znakiem zerowym? ;)
Czytałem to wszystko,ale tego jest tak dużo i tak nie ściśle opisane:( chyba się poddam:( chodzi mi tylko o odbiór danych z RS232 w delphi :( nic więcej:(
Witam Dzisiaj zainstalowałem visual c++ 2010 express ponieważ tam jest kontrolka serialport za pomoca której chce napisać prosty terminal. Odbiór danych z RS232 zrobiłem tak: private: System::Void serialPort1_DataReceived(System:... sender, System::IO::Ports:... e) {...
a w jaki sposób jest zakończony ten ciąg 32 bajtów? czy to <CR> czy <CR>+<LF> czy moze jeszcze coś innego? czy potrzebujesz zawsze tylko danych z paczki B2? Czy znasz zasady obliczania sumy kontrolnej? <CR><LF> #0 - tak jest zakończony 0D 0A 00 #13 #10 #0 sume kontrolną obliczam dodając all bajty włącznie z CHK Dane ogólnie...
Temat wydzieliłem. Czy przed napisaniem postu przeszukał kolega forum ? Wątków o RS232 w Delphi trochę było. Pozdrawiam, Krzysztof.
Jest też taka książka na temat RS232: Andrzej Daniluk "Rs232C Praktyczne programowanie" wydawca Helion. Jest tam wszystko opisane łopatologicznie z podaniem przykładów (programy na płycie CD) w Delphi oraz w C++.
Mam taka prosbe czy moze ktos napisac uniwersalny fragment kodu do odbioru danych z rs232 i zamiany na liczby zeby zrobic z tego wykres. Bo jedni uzywaja Read a inni ReadStr
Rx miałeś dobrze skonfigurowane. Nie masz taktowania AFIO. [syntax=c]RCC_APB2PeriphClockCmd(RCC_APB... | RCC_APB2Periph_GPIOA | RCC_APB2Periph_AFIO, ENABLE);[/syntax] I nie włączaj przerwań skoro ich nie używasz. Te 2 linie z USART_ITConfig są nie potrzebne.
Najprościej (choć pewnie nie najefektywniej) jest czytać po jednym bajcie. Spójrz na moje zmiany w Twoim kodzie. Problem z konfiguracją portu związany jest z tym, że należy najpierw odczytać bieżącą konfigurację Comm-a ( GetCommState ), zmienić to, co potrzeba i dopiero wtedy ją zapisać ( SetCommState ). Warto też sprawdzać wynik każdej operacji. Wtedy...
Kto będzie inicjował połączenie? Bo nie bardzo zrozumiałem z opisu. Czyli konwerter ETH<>RS232 ma się połączyć z danym IP:port, czy to Ty będziesz się łączył z danym IP:port aby wysłać dane. Moje urządzenie wysyła dane po ethernecie - odbiór danych ma być po RS232.
Witam Zlecę napisanie prościutkiego programu w Visual Basic 2010 Odbiór danych z rs232 (ramka 32 znakowa zawsze) Zapis całego stringu do zmiennej i wyłowienie z niego potrzebnych danych. napisałem coś takiego w BascomAVR na Atmega32 i oczywiście działa, ale teraz muszę coś takiego mieć na windowsie. Pozdrawiam
Przejdź do #2. nie rozumiem. wiem że marudze ale to co dla was jest jasne dla mnie niestety nie, więc prosił bym chociaż o kawałek kodu który odpowiada za odbiór danych z rs232, kombinuje z samplem z bascoma serin_out.bas ale coś lipa :/
No dobrze, ale skąd te głupoty nawet w REALTERM że nie jestem w stanie zinterpretować danych?
http://obrazki.elektroda.net/76_12556968... Witam, przedstawiam moduł 'usb-rs232 i/o port', jest to przejściówka usb-rs232 zrobiona na bazie projektu http://obrazki.elektroda.net/76_12556968... http://obrazki.elektroda.net/5_125569703... http://obrazki.elektroda.net/15_12556969... http://obrazki.elektroda.net/9_125569699...
204
Najlepiej zacznij przesyłać takie dane w postaci znaków ASCII i to najlepiej w postaci HEX, dzięki czemu będziesz mógł stosować normalny koniec linii w postaci znaku ENTER a dzięki temu z kolei o wiele łatwiej będzie ci zaimplementować odbiór danych przez RS232 (podobnie wysyłanie) A jeśli się uprzesz przy wysyłaniu takich danych binarnie to zaintersuj...
Fajny programatorek, chciałbym go podłączyć do atmega128 do uart0 i mieć możliwość programowania uC oraz odbiór danych z USB(RS232) jest to możliwe ? Jednak zrezygnowałem , znalazłem projekt bootloader'a który wykrywany jest przez system jako STK500 , działa świetnie :)
Witam Jeśli chodzi o C++Builder 6 i komunikacje na portach I/O jestem totalnym laikiem. Szukam kogoś kto by mi wyjaśnił od A do Z jak w Builder 6 konfigurować, wysyłać i odbierać dane z portu RS232. Z góry dziękuję za pomoc.
Witam Chciałbym przez rs232 zapisywać zmienne z pliku txt do zewnętrznej pamięci eeprom np. 24Cxx z których będzie korzystał mikrokontroler atmega128. Od czego zacząć? Czy to będzie bardziej rozwiązanie polegające na programie w mikrokontrolerze zasysającym dane z txt i wczytującym je do eeproma czy zrezygnować z drogi mikrokontrolera i programować...
Ok, teraz działa, lecz wykonująca się pętla zamula cały program. Zastanawia mnie czy można to jakoś w tle obsługiwać. Spójrz na ten program: http://www.speedyshare.com/731493256.htm... (240 kb), tam odbiór danych z rs232 działa tak jakby w tle - nie wpływając na działanie reszty programu. Poza tym wyświetla on wszystko co dostanie, niezależnie czy dostanie...
podejrzyj sobie w AVRStudio co ląduje w UBRR. może brakuje nawiasów? ((F_CPU/(VUART*16))-... albo masz błąd w F_CPU, powinno być 4000000.
w VB6 korzystając z kontrolki MSComm odbieram dane wysyłane z uP przez RS232, a następnie umieszczam je w labelu mniej więcej tak: dim dana as string dana=MSComm1.input Label1=labeel + dana Z procka wysyłane są dane / program w bascom 8051 / print h;":";m;"_";d '/godzina; : ; minuta ; _ ; dzień Wszystko jest O.K. do chwili gdy godzina jest mniejsza...
Znaczy sie nie odbierasz danych ?
a gdzie w kodzie jest napisane ze odbior jest z rs232? jaki kompilator, to mi wyglada na odbiór z mikroprocesora, a nie z rs232!!
Witam, mam taki problem, może ktoś będzie wiedział jak go rozwiązać. Jest urządzenie, które podaje aktualne stany pojemników z cieczą, jest 5 pojemników i pięć różnych danych. Komunikacja ze sterownikiem odbywa się za pomocą portu RS232. Chodzi mi o to, by dane były widoczne na dwóch komputerach, czyli o podział jednego portu szeregowego na dwa osobne...
Uruchom tel z kamerką i popatrz na odbiornik tam gdzie masz diodę. Jeśli mruga co jakiś czas, to znaczy, że czeka na odbiór danych.
Problem rozwiązany Okazało się że przejściówka AVTMOD09 i układ ft232rl to tak naprawdę przejściówka USB <>UART czyli podłącza się ją bezpośrednio do uC bez pośrednictwa max232. Zamykam temat.
Problem z ustawieniem programu odbiorczego, na pewno ustawiony jest na odbiór danych ASCII ?
Możesz mi to wytłumaczyć bardziej łopatologicznie jestem początkujący z vb v bascomie programowałem odbiór danych i przypisywanie do zmiennych z rs232 i szło mi to dużo lepiej a w drugą stronę jest już problem.
3 - txd - odbiór danych 4 - dtr - gotowość do tr danych ( użyta jako +10v :) 7 - Rts - żądanie transmisji ( też +10v :) 4 i 7 powinny być podłączone do stabilizatora bo służą do zasilania boxa :P
Najlepiej to dać znacznik początku ramki a na końcu jakieś CRC. Odbiornik powinien szukać znacznika początku i jak na niego trafi to zacząć odbierać pozostałe dane. Jak zbierze ich 513 to z 512-tu oblicza CRC i porównuje ze znakiem 513-tym. Jak dobre to zapisuje, jak złe to odrzuca. A sam odbiór to w przerwaniu, i zapis do bufora z jednoczesnym inkrementowaniem...
Witam wszystkich. Potrzebuję konwertera z USB na RS232 , ale wyłącznie na ATTINY2313, albo ATMEGA32 bo takie posiadam. Znalazłem coś w sieci, ale nie mają wyjść RTS i CTS. Posiadam duży wyświetlacz VFD NORITAKE ITRON CU20029SCPB-T25A. Wyświetlacz ma właśnie takie wyjścia do komunikacji przez RS232. Nie potrzebujesz RTS i CTS. Potrzebujesz tylko TX,...
Dawno się już nic nie montowałem, ale na moich schematach są odwrotnie połączone sygnały, to znaczy 14 z Max łączy się z 2 na DB9, a 13 z MAX łączy się z 3 na DB9. Czyli odwotnie niz jest u Ciebie. Kolejna sprawa to BHP - włącz w szereg pomiędzy port i MAXA jakieś oporniki ograniczające (np 330-470). Jak coś pójdzie nie tak z Twoim układem to przynajmniej...
Tak Label1=labeel + dana czy tak? Label1=label1+ dana
0,000000069s - 1/14,475MHz - czas jednej instrukcji procesora 0,000086806s - (1/115200) *10 - najkrótsza ramka(8 bitów danych + start + stop) - co taki okres może przyjść przerwanie od portu szeregowego. Jak widać czasu jest dość(ponad 1000 instrukcji na przerwanie) pytanie co jeszcze robi procesor. Jak odbierasz impulsy z enkodera?
Witam wszystkich Zastanawiam sie jak wykonać połączenie przetwornika ADC0838 z komputerem przez RS232. Chciałbym sterować nim i odczytywać sygnały przez LabVIEW. Problem jest taki, że przetwornik komunikuje się poprzez szynę MICROWIRE. Czy znacie może jakis układ, którym mogłbym to zrealizować? jednoczesny odbiór i wysyłanie danych? Dziękuję za odpowiedzi...
Poczytaj helpa z Bascoma ale angielskiego. Szczególnie o: "Config serialin" z uwzględnieniem "BYTEMATCH" - to jest obsługa UART w przerwaniu uproszczona na maxa. Warto przejrzeć: http://www.elektroda.pl/rtvforum/topic14... i jeszcze ten: http://www.elektroda.pl/rtvforum/topic14...
A czy do odbioru danych rs232, też należy to wykorzystać? Dokładnie mówiąc, czy w przypadku błędów w odbiorze danych (dwie meg16), może pomóc ten OSCCAL? Domyślam się, że tak. Pozdrawiam
Jak nie można - oczywiście, że można o ile nie ustawia się przerwania wyzwalanego poziomem na tym pinie. Bo jeśli się ustawi to procesor wejdzie w przerwania i będzie w nim siedział tak długo póki stan jest utrzymany.
Masz błąd w funkcji usart_init(). Brakuje Ci ustawień starszegi bajtu danych UBBRH oraz jednej najważnejszej rzeczy nie ustawiłeś ramki danych tzn bitów stopu, kontroli parzystości oraz wielkości ramki :) Funkcja usart_init() powinna wyglądać mniejwięcej tak: void USART_Init() { /* Ustawianie prędkości*/ UBRRH = (unsigned char)(UART_CONST...
Jaki kompilator? Nie pokazałeś deklaracji struktur danych - z tego co widzę to nie obsługujesz przepełnienia wartości zmiennych "odebrano" i "wysłano" - to miałyby być bufory cykliczne? w _putchar() gdy wysyłka_wyłączona == 1 powinieneś od razu wpisać bajt do rejestru SBUF, inaczej będziesz czekał na odbiór bajtu żeby zinicjalizować wysyłkę w przerwaniu....
sam potwierdziłeś to co napisałem wcześniej , każdy robot to indywidualna sprawa i tak samo wygląda sterowanie podstawowa sprawa to znajomość dowolnego języka programowania , najprościej masz w Bascomie który ma kilka gotowych poleceń dzięki którym komunikacja po RS-esie jest stosunkowo prosta , istnieją również podobne biblioteki lub macra dla innych...
Witam, chce uruchomić transmisje szeregową na podanym w tytule uC i tutaj napotkalem na problem, poniewaz dokumentacja do 48 jest bardzo uboga :/ Zaimplementowalem cos, ale nie dziala. jaka uboga? o czym ty mówisz ? skąd ty takie ubogie dokumentacje bierzesz? wejdź na stronę www.atmel.com i pobierz z tamtąd pełną notę PDF do jakiego zechcesz tylko...
Witam Problem następujący. Odbieram dane z rs232 poleceniem SerialPort.ReadExisting(). Przypisuje każdemu znakowi w ramce odpowiednią zmienną (wycinając poleceniem MID poszczególne znaki), a poleceniem ASC zamieniam znaki te na BAJTY. Niestety tablica ASCII jest do 127 i przy konwersji mam bajty tylko do 127 a chcę mieć do 255.. Wiem że zamiast do ASCII...
Witam. Chciałbym zrobić odbiór danych z rs232 w przerwaniu. Programuje w C w WinAVR. Nie mogę znaleźć uchwytu przerwania od USART, jest jedynie od UART i nie chce działać. Nie wiem co robie źle. Dziękuję za wszelką pomoc. #include <avr/io.h> #include "delay.h" #include <avr/interrupt.h> #include <avr/signal.h> #define FOSC 16000000//...
Witam! A może tak coś złapiesz?? procedure TForm1.ComPortRxChar(Sender: TObject; Count: Integer); var Bajt:Byte; i:Integer; begin for i:=1 to Count do begin ComPort1.Read(Bajt,1); Memo1.Lines.Add(IntToStr(Bajt... end; end;
Na rynku jest mnóstwo mikrokontrolerów z rdzeniem ARM. Podaj na którym pracujesz.
Heja! Co do protokołu, to często dystrybutor dodaje do nowych multimetrów opis komend. Do Delphi potrzebny Ci będzie komponent obsługujący komunikację z portem szeregowym (np. z witryny www.torry.net), albo książka z opisami komunikacji za pomocą RS232 (do zassania z Elektrody). Później pozostaje tylko napisać program: dogadać się z multimetrem, ładnie...
1) Kwarc mają posiadać odbiornik i nadajnik, najlepiej o tej samej częstotliwości 2) Przestań kombinować z baud 9600 i zejdź do 1200 3) Dopisz $crystal na początku programu z odpowiednią liczbą zależnie od kwarcu i zrób to w nadajniku i odbiorniku 4) Przestań kombinować z przepisywaniem zmiennych tylko wprost wyświetl C tak jak napisałem Najprostszy...
Potrzebuje z tego ukladu wyprowadzic: Odbiór danych Transmisja danych Masa Czyli piny: 6. - TX > Transmisja danych 3. - RX > Odbiór danych 10.- GND > Masa Tak ? Dzis polutuje i dam znac czy dziala na fergusonie (sharing)
Możesz po prostu połączyć 2 wejścia pod jedno wyjście RS232. Mówimy tylko o odbiorze danych z RS232, tak?
Możesz odbierać po bajcie, albo po zapełnieniu bufora. Najprościej jest po bajcie i generować zdarzenie po rozpoznaniu znaku terminującego. Nowa linia "po Microsoftowemu" to CR+LF (czyli 10+13). Dlaczego RS485, a nie RS232?
Mam do zroibienia projekt o tematyce: Napisać program umożliwiający odbiór oraz nadanie danych przez RS232 podłaczonego do komputera PC. Program nadajacy powinien odbierać cyfry wpisane na klawiaturze PC i wyswietlać je po koleji na 8 wyswietlaczach siedmiosegmentowych. Po zapełnieniu 8 wyswietlaczy dane znikają i kolejne cyfry zapisywane sa od poczatku...
Właśnie stworzyłem małą sieć procesorów połączonych do PC Konkretnie jest to 6x Mega8 wszystkie połączone szeregowo liniami TXD i RXD i spięte z PC za pomocą przejściówki USB-RS232 w TTL Odbiór danych przez mikroprocesory jest bezproblemowy, gorzej gdy któryś ma wysłać komunikat że odebrał dane. W momencie gdy mam podpięty tylko jeden procesor do PC...
Dokładniej modemy komunikują się po sieci energetycznej(220V) i powyższy program nie nadaje się.Chodzi mi dokładnie o nadawanie i odbiór zdań ( taki czat). Dzięki i czekam na inne programy.
Mam pytanie czy jest jakas roznica miedzy RS232 a RS232C? bo tak spojrzalem na dokumentacje jednej plytki i ponoc tam jest cos ze jest interfejs rs232c...
:arrow: Strikerer w Twoim przypadku wybór jest ograniczony aczkolwiek polecam program o nazwie: FMA to potężne narzędzie do edycji telefonu dzięki czemu użytkownicy mogą łatwo zarządzać wszystkimi danych osobowych przechowywanych w swoich telefonów, przez szereg różnych metod połączeń. FMA umożliwia łatwe zarządzanie Spis telefonów (zarówno SIM i pamięci...
wprowadz opoznienie przed skokiem do podprogramu odczytaj_sprzetowy_uart, powiedzmy jakies 100ms, daj czas mikrokontrolerowi na odebranie wszystkich znakow zanim odczytasz uart
wszysko chodzi cacy i nadawanie i odbiór A mógłbyś napisać jaki masz kwarc i z jaką to prędkością chodzi? Bo ja mam taki problem że mi w ogóle nie działa a program mam praktycznie taki sam. Opisz również jak łączysz sie z Hiperterminalem;) Mógłbyś dorzucić schemat układu i kabla jakiego używasz??
cichy999 --> jak jeszcze pisałem programy w Bascomie to spokojnie takie rzeczy robiłem. Bierzesz sobie np najnormalniejszego małego procka np ATtiny2313 (ma przecież nawet piękną sprzętową obsługę RS232), i przede wszystkim robisz w nim normalną obsługę LCD. Potem dopisujesz procedury do odbioru danych przez RS232 (może być tylko odbiór) Następnie wymyślasz...
Niestety nie działa i wina leży prawdopodobnie po stronie przejściówki USB<->RS232 na sterowniku ch-341 < pod Lnuxem. Zamówiłem na Ftdi zobaczymy jak pójdzie. Jeśli zadziała to dam znać
Można wykorzystać dowolną opcję. Wystarczy użyć RS232 i zmodulować wyjście jakąś nośną - np. 38 kHz. Wtedy po drugiej stronie dajemy jakiś TSOP i mamy zdemodulowany sygnał RS232. W ten sposób można po IR połączyć dwa MCU przy pomocy diody i odbiornika podczerwieni. Oczywiście jeśli to ma być coś poważniejszego to należy dodać kontrolę integralności...
A teraz jeszcze pytanie z innej beczki. Procesor steruje pilotem RC5 na przerwaniu INT0, chciałbym jeszcze dodać obsługę RS232 ale nie chcę żeby ciągle było sprawdzane czy coś jest przesyłane bo to mi tylko spowolni program, czy jest możliwość wykrycia ze jakieś dane dochodzą do procesora i wtedy ustawienia flagi po tym będzie wykonany odbiór danych...
Jeśli to jest tylko powtarzalny strumień danych bez konieczności potwierdzania, lub inicjowania, to idea jest prosta - Rx na wejście, Tx na wyjście. Odczytujemy (nadawanie wyłączone) i buforujemy komplet danych, przełączamy się na niższy baudrate, wysyłamy TX (odbiór wyłączony), wracamy na wyższy, odbieramy itd.
To co kupiłeś to prosty jednokierunkowy tor radiowy natomiast do łączności z sterownikiem NE041 potrzebne są 3 sygnały RxD / TxD oraz DTR czyli sygnały odbiór danych / nadawanie danych / gotowość urządzenia tak więc odpowiedź nasuwa się sama . To wszystko dotyczy RS232 dla USB kolejny konwerter z pełnym sprzętowym RS232 , tak jak napisał kolega wcześniej...
szczerze powiedziawszy to twój kod nie do końca realizuje echo, bardziej przypomina to zwarcie kabelków we wtyczce a nie rzeczywisty odbiór i odesłanie danych, natomiast powodu odbioru złych danych do końca nie rozumiem, ponieważ pomiędzy tymi dwoma kodami (w zapisie binarnym) nie ma żadnej zależności 0x0E : 00001110 0x63 : 01100011
Może i naprostuje, o ile przetłumaczysz na polski poniższe zdania: "W terminalu działa. Uart1 ma za zadanie wysłać odebraną wartość z UART0 do aplikacji PC, obecnie terminala." To, jak używasz przerwań, kompletnie nie ma sensu - wyrzuć te przerwania i zrób odbiór danych z aktywnym oczekiwaniem. Inicjowanie UART jest skopane, ale zapewne jakimś cudem...
Masz zachwiania w sterowaniu serwami. Najprawdopodobniej podczas odbioru danych z RS232 serwo otrzymuje błędne pozycje(sygnały). Jeżeli serwa trzymają bez sygnałów sterujących(moje tak działa, ale nie wiem czy inne) to wyłączaj przerwanie timera na czas odbioru wiadomości przez RS232.
Troche czasu minęło odkąd robiłem coś na GPSach, ale czy $GPRMC nie jest czasem wysyłane jeżeli jakieś minimum jest osiągnięte (x satelitów widoczne itd.), lub GPS odpowiednio skonfigurowany? Spróbuj też podłączyć ten odbiornik bezpośrednio pod kompa (może być wymagany konwerter RS232) i zobacz czy odbierany strumień jest taki sam jak ten na uC.
Nie, nie można odczytać w nadajniku z jego bufora TX tego co się wysłało. Chodzilo mi o ten wątek [url=http://www.elektroda.pl/rtvforum/to...
Hey. Mam taki mały problem myślowy. Chciałbym stworzyć odbiornik danych po RS232(co już się stało) tylko z możliwością kolejkowania następnych przychodzących danych, tzn: Po wyświetleniu pierwszych danych na LCD układ czeka na następne, ale bez wyzwolenia przyciskiem nie wyświetla nowych tylko umieszcza je w ??tablicy?? albo innym miejscu do tego przeznaczonym....
Skoro chesz przesyłać dane czyste dane binarne to chyba zrozumiałe, że odpada ci konstrikcja Bytematch z zastosowaniem dowolnego bajtu, który byłby końcem jakiejś tam ramki w związku z tym musisz je albo: 1. wysyłać czysto binarnie z kompa a w procku po prostu czekać na zakończenie transmisji - wprowadzając jakiś TimeOUT (ale to czasami mało eleganckie...
RS232 i konwerter na RS485 Od strony uP standardowo zaczynam od: $crystal = 11059200 $baud = 9600 Odbiór danych przez instrukcje inkey a potem setest case Wysyłanie instrukcja Print . Nie korzystam z przerwań. Od strony PC zależy w czym piszesz program. W VB odbiór i wysyłanie przez MSComm1. (output lub input ) Jest sporo przykładów na elektrodzie....
Cześć Fachowcy! Problem jaki wstrzymuje moje prace polega na niemozliwosci odebrania kolejnych bajtów za pomocą instrukcji INPUTBIN. pierwszy bajt odbieram prawidłowo, drugi niestety jst zawsze 0 bez względu na to jaki jest naprawde. transmisja to 250000,8,n,2 fragment kodu: Toggle Portd.4 wyzwalanie oscyloskopu Toggle Portd.4 j.w. Inputbin S1 odbierz...
Sprawdziłem testując że robiąc coś takiego: [syntax=delphi]Write_Comm (); Sleep (20...100); //Chodzi oczywiście o zakres czasowy Read_Comm();[/syntax] Działa poprawnie odbiór. Czyli potrzebuję by Read_Comm działał tak by po odebraniu wszystkich danych z portu COM dopiero wtedy przypisał dane do Buffora In
No więc sprawa rozwiązana, a błąd był w... BUDWIE ZESTAWU ZL3AVR!!! Teraz się mu przyglądnąłem i pomylone jest połączenie pinów od wtyczki DB9 do konwertera MAX232N. Ścieżka od konwertera jest doprowadzona do pinu 4 zamiast 2 we wtyczce RS232. Odbiór danych od komputera realizowany jest przez pin numer 3, który jest na środku, więc obojętne jak się...
Deklaruję zmienną jako bajt i jej wartość ustawiam na 0. Następnie wysyłam ją po rs232. Na terminalu ustawionym na odbiór stringów mam prawidłowo odebraną daną - czyli 0. Jak ustawię odbiór hex'ów to wyświetla mi 30 30 0D 0A. Jak jest ta dana konwertowana na hexa? Ona nie jest konvertowana na hex. Print służy do wyświetlania na terminalu więc wartość...
i drugie pytanko - do tej pory piszę swoje procedurki i funkcje transmisyjne RS232 (nadawanie i odbiór) ale szczerze wolałbym użyć jakiegoś prostego w obsłudze gotowego komponentu. Chciałbym, żeby można było wysyłać dane "bajt po bajcie" i mieć obsługę zdarzenia po odebraniu danych lub pojedyńczych bajtów... Co polecilibyście? Proponuje ComPort <--...
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
WItam; chciałbym zrobić sterownik który będzie pełnił funkcję konwertera prędkości UARTU. Na wejściu otrzymuję ramki GPS 9600, a na wyjściu chcę wysłać to samo tylko w nieco innym standardzie (eleminacja niepotrzebnych danych. Zrobiłem w przerwaniu RXC odbiór ramki. Działa super. Robię konwersję. I chcę to wysłać znów przez RS232. Całość mam w Stringu...
Wiem jak wygląda transmisja rsie, ale nie o to mi chodzi. Ja to zrobiłem w ten sposób, że z programiku Terminal ładuję dane z pliku i wysyłam do FPGA. W ten sposób wysyłane są ramki jedna za drugą. No i wiedząc że mam transmijsję 19200 bps, z 1 bitem stopu, bez bitu parzystości i bez Handshaking, każda ramka ma 10 bitów. Zrobiłem warunek na wykrycie...
Kolego prosta sprawa, do odbioru danych po rs232 używaj przerwań i gromadź dane w buforze. Obsluga przerwania odbioru znaku powinna sprawdzać kod znaku nadchodzącego z zewnątrz. Jeśli przyjdzie znak Enter przerwanie ustawia flagę. Flagę sprawdza z kolei głowny program, jeśli jest ustawiona wykonuje obsługę związaną z nadchodzącymi informacjami po rs232....
rs232 odbiór danych odbiór rs232 odbiór danych klawiatury
zmywarka amica silnik telewizor philips gniazdo antenowe instrukcja magnetowid toshiba
zasilacze czarna lista corral super n3500
Pilarka Faworyt RG 5300 18: Chińskie części i czterotaktowanie Schemat podłączenia podgrzewanych foteli Audi A4 B5 2000