Witam. Kodu w BASCOM nie mam, ale może to ci pomoże. http://www.elektroda.pl/rtvforum/topic96... W jednym z moich postów na dole strony podaję link do stronki, na której bardzo fajnie i przejrzyście opisane jest, jak zastosować szyfrowanie DES. dla kogoś znającego dany język programowania będzie to roboty na jakieś trzy godzinki (łącznie ze zrozumieniem...
A te dwa Stringi wysyła?
Gotowiec, powinno działać Class Program Public Shared Sub Main(args As String()) Dim rectext As String = "+CMGR: ""REC READ"",""+48508XXXXX... " & vbCr & " przykladowa tresc sms.... " ReadText(rectext) End Sub...
Raczej to nie wina wysyłania printa. W końcu jest wait 1 po zapisie do czujnika DS18b20. Ja stawiam na złe odfiltrowanie LF po CR . Zamiast do "programu odczytującego stringi" podepnij się np. do Putty lub innego terminala i tam sprawdź jakie dane są słane.
Przy założeniu że char== bajt Na urządzeniach pewnie tak, ale na Windowsie / w internecie nie koniecznie, zależy skąd te Stringi pochodzą
buffor_rx to zmienna : volatile char buffor_rx która zmienia stan w przerwaniach UART ,poniewaz tel. przy wysyłaniu sms przez port rs232 ,dzieli go na dwa stringi ,a w przerwaniach odczytuje stringi zakonczone znakiem 0x0D
Chciałbym przesłać po RS232 wartości dziesiętne, jadnak te programy które posiadam odbieraja tylko wartości w postaci szesnastkowej bądz stringi! Jest możliwość przesłania i wyświetlenia wartości dziesietnych po rs232????
Zamiast wysyłać przez RS232 binarnie - co często przy przesyłaniu większych porcji danych przez początkujących będzie się kończyło samymi problemami - to nie łatwiej ci zamieniać przesyłane liczby na stringi a po odebraniu ze stringów na liczby. Dzięki temu twoja ramka będzie mogła być po ludzku zakończona znakiem ENTER a co za tym idzie wszystko co...
Jak działa to git ;) choć niepotrzebnie siedzi w pętli "for" już po przepisaniu znaków do drugiego bufora. Podejrzewam że można zrobić to też inaczej na funkcjach do stringów. PS. poczytaj o stringach http://en.wikipedia.org/wiki/C_string zrozumiesz o co mi chodzi z zamykaniem znakiem zerowym.
No raczej właśnie tak jak piszesz - pierwszy znak nadać "ręcznie" a kolejne nadadzą się same dzięki przerwaniu. Innej sensownej możliwości nie widzę. Z drugiej strony, żeby takie nieblokujące nadawanie w pełni wykorzystać potrzebujesz bufor z którego znaki będą nadawane. Wtedy możesz wykorzystać jedną funkcję, np. Send("Ala ma kota"), która skopiuje...
string powinien kończyć się znakiem NULL czyli o wartości zero. Nie używałem uarta, czy gdzieś w Twoim kodzie jest funkcja / lub ją dodałeś że po odebraniu tylko 5 znaków zostanie dopisany znak NULL? jeśli nie ma tam takiego czegoś to nic dziwnego. Funkcja UART_putstr będzie wypisywać wszystko co napotka aż znajdzie znak NULL (zero). najprostsze co...
Ale po co zamieniałeś to na pojedyncze znaki? Teraz zrobienie konwersji na Byte jest trudniejsze niż by było gdybyś to pozamieniał na całe stringi (i wtedy był bym skłonny dać gotowca :D).
Witam mam problemik ComPort.ReadStr(Str, Count); Pom:=Pom+Str; a:=Length(Pom); If a=66 then L:=Pom; LabelA.Caption:='Czas:......'+co... LabelB.Caption:='Namiary A:......'+copy(L,15,14); Jak widzimy w powyszym kodzie planuje nadchodzace dane z RS232 ( Str ) dodac do siebie tak aby powstal...
Przesyłasz mikrokontroler-mikrokontroler, czy mikrokontroler-PC? Jeśli to pierwsze to sizeof(struktura), pobrać jej adres i wysyłać kolejne bajty. Do PC się to nie sprawdzi (inne długości int, double, char), więc pozostaje konwersja poszczególnych pól na stringi, ich wysłanie i proces odwrotny na PC.
Czy uC wysyla wszystko jako jeden ciag (tak jak to przedstawiles),czy za kazdym razem krotki string np. temp1=5 ? Ogolnie wszystko rozbija sie na operacjach na stringach (instrukcja Copy(Zmienna:String,PozycjaOdKtorejZaczy... Potrzebyjemy:Integer)). w przypadku gdy wysylasz temp w krotkich stringach i za kazdym razem przechwytujesz...
Witam; chciałbym zapytać o następującą kwestie: Mam program w którym mam dość dużo przerwań. W głównym programie wykorzystuje funkcję printf który wysyła długie stringi. Procedury obsługi przerwań nie są zbyt któtkie. I stąd moje pytanie: Czy przerwanie może zakłócić transmisję RS232? Używa dosyć szybkiej transmisji więc boję się że tak może być.
przykład, w takim sensie że próbuje temat ogarnąć, chociaż nie bawiłem się nigdy wcześniej w USB. Troche dokładniej - mam przejściówkę USB->bluetooth i chciałbym komunikować się z bluetooth za pomocą układu który ma dostępny tylko port UART (RS232) (Nie wnikamy dlaczego nie chce użyć kości RS232->bluetooth). Żeby dało się to zrobić potrzebuje drugi...
VISA, to coś zupełnie innego, niż goły RS232, to specjalny standard do komunikacji z przyrządami laboratoryjnymi, stąd stringi na wyjściu. Poszukaj, czy nie masz dostępnych innych bloczków do portu szeregowego i jakiejś możliwości do poskładania floata z suchych danych binarnych. W przeciwnym wypadku musiałbyś w mikrokontrolerze dokonać formatowania...
Nie wiem , co Twój program ma do roboty w pętli głównej , ale gdyby sprawdzanie czy nadszedł znak , było wykonywane rzadziej niż prędkość , z jaką dane mogą napływać do uC , to częśc napływających danych , niechybnie diabli wezmą ;) Radzę skorzystać z buforowania - zważywszy że RAM-u Ci chyba nie brakuje :D Piotrek PS A jakie dane spodziewasz się odbierać...
Maszyna wirtualna to dobry pomysł. Ja ściągnąłem vspd.exe, czyli Virtual Serial Port Driver , najprostszą darmową wersję i sparowałem COM 1 i COM2 zaczęło działać, tylko trzeba uważać, bo w instalce był również trojan, Total Security go zablokowało. Może jeszcze inne programy działają podobnie, gdy szukamy coś w rodzaju [Virtual Serial Port Driver]...
W Javie nie można używać stringów w instrukcji switch.
Witam, robię program do wgrywania oprogramowania na mikroprocesor przez port RS232. Używam przy tym kontrolki SerialPort .NET3.0. Problem jest taki iż po każdej linii powinienem dostać Xon(0x11) gdy jest gotowy do dalszego odbioru lub Xoff gdy nie jest gotowy.Jednak dostaje to dopiero po przesłaniu calego pliku wsadowego.Taki kod do przesylania : serialPort1.RtsEnable...
Jak na razie zrobiłem to w ten sposób, że stworzyłem Bitmapę i na niej piksele odwzorowując narysowane na panelu obiektu. Problemu tutaj nie ma, gdyż te obiekty to zwykłe prostokąty. Inaczej ma się sprawa z napisami. Na panelu rysuję także stringi przedstawiające czas. Problem polega na tym, że nie wiem jak je przenieść na Bitmapę. Prosiłbym o pomoc...
Nie wiem co tam namieszałeś ale ja bym trochę zmienił odbieranie ciągów. Coś w ten deseń: SIGNAL (SIG_UART_RECV) { if ( (odebranyZnak!='\r') && (odebranyZnak!='\n') ) { slowo[i++]=odebranyZnak; } else { slowo[i]='\0'; i=0;// zakończenie słowa - dodanie znaku końca stringa **ANALIZA...
A próbowałeś szukać w dokumentacji AnsiString? Przecież są odpowiednie funkcje konwertujące stringi ToInt i ToDouble... [url=http://bcbjournal.org/articles/vol1...
ale może już jest coś takiego w C ? . C jest wręcz stworzone do takich rzeczy, do analizy / parsowania stringów, podzielonych na tokeny spójrz sobie na funkcje [syntax=c]strtok()[/syntax] oraz [syntax=c]strtok_r()[/syntax] są idealne do tego i zastępują ci wraz ze wskaźnikami wszystkie bascomowe wynalazki działając wydajniej i szybciej i lepiej ;)...
Czy LabView pozwala na wysyłanie 1 bajtowych zmiennych to nie wiem, więc pozostaje odczyt stringów. Najprostszy jest oczywiście [url=https://github.com/jnk0le/Easy-AVR-... Można także zastosować coś takiego [syntax=c]int16_t uart_getint(void) { char buff[32]; uart_gets(buff, 32); return...
To wychodzi na to, że ja przesyłam stringi o długości 5 znaków (XX.XX) no i jeden znak to pewnie bajt czyli 5 bajtów w sumie. Na podglądzie wiem, że są one przedzielone "\r\n" , co zatem zrobić w takim przypadku? Programuję w c#.
Witam! Komunikuje się z pewnym urządzeniem za pomocą portu RS232, nadaje ono stringi w postaci xxxxxxxx + CR/LF, gdzie x to 1 lub 0. W moim programie użyłem SerialPort. Zastanawia mnie teraz jak zrobić takie coś: gdy moje urządzenie coś nada to program automatycznie to wyświetli i zapali odpowiednie "lampki", udało mi się napisac to w taki sposób, że...
nie mam jak sprawdzic tego programu, ale hm, moze sprobuj najpierw wyswietlic na labelce co ci przychodzi z portu: Label1->Caption = RS_buf; nie wiem, czemu uzywasz atoi skoro RS_buf jest typu liczbowego (BYTE), chyba, ze ma byc stringiem :P
(at)JacekCz Co do Arduino to się zgodzę - to jest bardziej platforma dla osób które bez poznania procesora chcą sobie coś zrobić i tyle. Niestety uczy to złych nawyków, ale to zależy też od osoby jak potoczy się jej dalsza edukacja. Tak samo nie chodzi o brodatych hackerów, tylko jak wspomniałem czasem prostą kalkulację biznesową. Generalnie jak mówimy...
Poczytałem sobie o tym "Pack" Jest to funkcja która zamienia poszczególne bajty na string. Dodatkową ważną informacją jest, że jak to w stringu bywa, każdy taki string będzie zakończony NULL`em czyli wartoscią 0. Taki string terminator. Bascom oczywiście też kończy stringi zerem. Kiedy więc wysyłasz : Print "test wyswietlacza" ; To na końcu wyświetlacz...
Witam, polecam sterownik FATEK. konkurencyjny cenowo, darmowy software, darmowe jednodniowe szkolenie w siedzibie firmy w Krakowie i Warszawie. Bez problemu komunikuje się z systemami wagowymi (sam testowałem na RADWAG i TECHWAG jeśli dobrze pamiętam nazwę tą drugą). Sterownik po RS232 (lub RS485) komunikuje się w trybie transmisji tzw. bezprotokołowej....
Wiem że temat rs w AVR był wielokrotnie wałkowany, ale nie znalazłem iterpretera komend w asm, łatwiej byłoby w c ale ja potrzebuję w asm. Ma może ktoś jakieś takie rozwiązanie, albo jakiś link i mógłby się ze mną podzielić. Ma dziłać tak: do procesora po rs przychodzą komendy w postaci stringu np.: led1-on , led1-off, plikxxx-start, plikxxx-stop. procesor...
Dodano po 8 A teraz następny etap. Moduł ESP łączę przez Uart z płytką Arduino, arduino wysyła mi dane ( stringi) przez Uart, jak wysłać je za pomocą ESP przez WiFi pod konkretny adres, port korzystając z UDP, podejżewam, że trzeba skorzystać z poniższego kodu, tylko jak "złapać" do replypacket dane odebrane przez UART? [syntax=c] Udp.beginPacket(Udp.remoteIP(),...
Witam Dzięki wspólnej pracy kolegów Futek2 i Akrawiec udało się zrobić fajny interface do inwertera Effekta serii ES, do wysyłania danych pomiarowych na stronę www.pvmonitor.pl, który komunikuje się bezpośrednio z inwerterem przez UART i wyciąga z niego co się da. W pierwszej wersji zrobiłem ten ze strony http://elektronika.5v.pl/_nodemcu_wifi_d...
Upaliłem rs232 i zamówilem sobie gotowy konwerter, póki go jeszcze nie mam chcę powalczyć na up. napisałem softwarowy uart i zaraz będę robił testy. JOUSTO czy na 100% możesz powiedzieć że przy świeżych SIM900D nie ma włączonego sprzętowego flowcontrol? Dodano po 33 Ale zabawne...jak wyłączyłem podciąganie rezystorem PORTU dostaje stringi...
Witam. Próbuję odczytać poprzez ComPort ramkę tzn. ze stringami nie ma problemu, ale ramka wysyłana jest w postaci: byte 01 03 00 00 00 02 C4 0B. ComPort.Read(dane, Count); ale jak dane przepisać np. do: Buffer_I : ARRAY [0..20] of byte;
koszt .... Ja kupuje części hurtem ...w www.piekarz.pl TinyTrack - nie więcej jak 17 zł . Ale wiadomo , jak się bierze hurtem :) to kupuje się np. nie jeden rezystor 2k2 tylko minimum to 100 sztuk ... 100 sztuk kosztuje 1 zł !! hurtem -> dlatego polecam tam zakupy. ! Baycom ... wcale nie trzeba go robić .... wystarczy soundmodem pod linuxem albo...
Jak napiszesz odpowiedni program na PC to wpiszesz w okienka odpowiednie nastawy i jednym przyciskiem wyślesz do uC. Pamiętaj, że przez UART lecą Stringi. Program do PC napiszesz tak, aby przed daną wstawił dowolną literę literę. String może wyglądać tak: P128 http://obrazki.elektroda.net/4_120043325...
Odp 1. Zwraca kod błędu 234: ERROR_MORE_DATA 234 (0xEA) More data is available. Wykrywanie rozpoczynam od: Available COM ports on system: COM4 USB->COM adapters: FTDIBUS\VID_0403+PID_6001+A800enatA\0000 lub zewnętrzna biblioteka FTDI - jak pamiętam to ona ma wykrywanie COM-ów prawda? Ehhh... Odp 2. Okazało się że system kompilatora nadzorujący obsługę...
Tablica: char InputBuffer[12]; zawiera łańcuch "w stylu c". Łańcuch taki powinien się kończyć znakiem bajtem o wartości 0. Możesz np. przed ponownym zapisem wstawić 0 do wszystkich komórek tablicy. Dwie uwagi: 1. trzeba to zrobić tak: InputBuffer[i]=0; a nie: InputBuffer[i]='0'; // w tym przypadku podstawiasz kod ascii znaku '0"; 2. Jeżeli tablica ma...
Pisze aplikacje ktora ma odbierac stringi dlugosci 11 - 20 znakow z COMa, po odebraniu takiego stringu ma wyslac do mikrokontrolera 'a' jako potwierdzenie i odebrac nastepny string... Ilosc stringow jest w granicach od 4 do 8000 i zawsze calosc konczy sie znakiem 'X' Odebrane dane maja byc zapisane bez zmian na dysk. ... 85 20180.00 tutaj wysylam potwierdzenie...
My.Computer.FileSystem.WriteAllText("c:\... Me.RichTextBox1.Text, False) w visual basic " False " - powinien wyczyścić plik i zapisać na nowo a tak nie robi ?! jestem otwarty na inne rozwiązanie, docelowo chcę uzyskać, aby program w VB robił plik (np dane.php) w którym będzie zawsze najnowszy wpis w stylu: <?php $cisnienie = 983.50;...
Witam, jak wiadomo (przynajmniej mi narazie) z helpa Bascoma - zwykłe polecenie PRINT generuje na końcu dwa dodatkowe znaki CR i LF również jak wiadomo polecenie INPUT reaguje na znak CR ... co więc się dzieje ze znakiem LF po instrukcji INPUT jeśli mamy zdefiniowany jakiś bufor: Config Serialin = Buffered , Size = 80 Input String_var Noecho i przylatują...
Mam taki problem : jest urządzenie które komunikuje się po RS-232 z komputerem. Znam parametry transmisji (prędkość, bity danych itp. - od producenta) Zrobiłem urządzenie do podsłuchiwania transmisji ( taki RS232 sniffer -był gdzieś na elektrodzie). Problem jest taki że jedyne co odbieram to "krzaki". Zakładam, że parametry transmisji producent podaje...
oczywiście, że można to rozpatrywać jeszcze na miliony sposobów. Ja w swoim teście nadaję te ramki co ok 50ms. Jeśli ustawię ich wysyłanie np co 10ms to tych błędów nawet bez zasobochłonnych procesów pojawia się nieco więcej. Jeśli ustawię interwał czasowy na 100ms to błędne ramki nie pojawiają się nawet przy obciążaniu windy innymi procesami. Te błędy...
najlepiej byloby do tego wykorzystac aparature do sterowania. odbiornik i nadajnik. a nadajnik troche przerobic. W nadajniku sa potencjometry. nalezaloby zastapic je czyms innym. musialbys dorwac schemat takiego nadajnika. Bzdura. Czytając takie odpowiedzi odnoszę wrażenie, że obsiadło Cię stado trolli. Do sterowania drogą radiową przez rs232 wykorzystać...
Buduję sterownik oparty na at89c2051. urządzenie to zawiera menu wywoływane z pod RS232 na standartowych instrukcjach print i input. Niestety objętość "tekstu" w menu jest na tyle obszerna, że zajmuje to prawie całą objętość pamięci procka. Przyszło mi do głowy rozwiązanie aby tekst menu przekonwertować i wysłać do pamięci eeprom I2C, a następnie rekonwetować...
Probowales mimo to ,ze nie mogles ustawic flag uzyskac polaczenie na comport? Kiedys napisalem programik ,ktory komunikowal sie z urzadzeniem ale nie chcial wlasnie wspolpracowac ze standardowym onrxchar. Wklejam tu fragmenty powycinane (postaram sie zeby stanowily jakas calosc) i mozesz sprobowac zrobic wg tego: for i:=1 to 1023 do begin //wysylam...
Teoria powiadasz. Ciekawe co czytałeś... Mimo iż wyczuwam lekki roszczeniowy charakter wypowiedzi to postaram Ci się coś jednak wytłumaczyć. Kiedy pisałem o podpisywaniu zmiennych to miałem na myśli takie wysyłane osobno. Od razu uściślijmy, że dla takich wartości dwubajtowych jak Word łatwiej to przesłać jako Hexstring. Długość stringa zawsze będzie...
To nie będzie pionowo tylko ekierka + spadek dachu przybudówki, nie wiem co masz na myśli pisząc klamrami, Jasne że nie będą pionowo do powierzchni dachu bo będą na ekierce leżeć ale oni chcą je zamontować pionowo czyli krótszą częścią panela góra dół. Chodzi o uchwyty montażowe do paneli PV przystosowane do rąbka blachy zasickane. https://obrazki.elektroda.pl/3376022600_...
Bardziej o tablicach znaków unsigned char. Odbieram dane przez RS232 do tablicy i szukam w niej podanego wzorca.
Nie mam zielonego pojęcia co chciałeś mi przekazać, pokazując ten kod. Najzwyczajniej w świecie go nie rozumiem. Widzę, że wykonywana jest jakaś praca poprzez wskaźniki, o których jeszcze nic nie wiem. Jeżeli chodzi o dodawanie zer na początku wartości to jedyne na co wpadłem to zdefiniować dwa kolejne stringi, jeden o zawartości "0", a drugi "00"....
Niestety nic nie rozumiem. To count nie zawiera ilości bajtów jakie siedzą w buforze?? Jaki wpływ na obcinanie paru początkowych bajtów ma to co robię później z odebranym stringiem (zmienna odebrane)??
Te "smieci" jak to nazwales to jest miejsce zarezerwowane dla typu zmiennej. jezeli zmienna byla by "Byte" zajmie jeden bajt i nie musi byc "Stringiem". jezeli bedzie to "Long" zarezerwuje 4bajty itp. pozdro
Napisz jeszcze czy masz na to program napisać i jeśli tak to w czym. Dla sprawdzenia możesz np użyć hyperterminala lub jakiegokolwiek innego. Ponadto czy te wartości w rozkazach są hexem czy stringiem. W Windows API na COMa wysyła się dane funkcją WriteFile. A i jeszcze pytanie czy przecinki też są wysyłane.
dzięki za podpowiedzi, dzisiaj wieczorkiem będę miał co robić eeeeh - zaćwiczę to na śmierć, tym bardziej, że te wasze przykłady tak jednak, krótko daje się napisać. Więc tylko początkującemu jak mi, może się wydawać, że trzeba jakieś extra salta programistyczne dokonywać ;) .... ale ok zanim się wgryzę w kod wieczorkiem to od razu na gorąco jeszcze...
Witam ponownie. Dziekuje za wszystkie pomocne odpowiedzi, chociaz nie potrzebnie moje pytanie zostalo zinterpretowane odnosnie tego ze potrzebuje jakiegos sprzetu. Nie pytalem o sprzet, chodzilo mi bardziej o metodologie programowania takiej komunikacji, jak napisac taki software aby mogl przeslac zmienne do eeprom i je zapisac. Tym razem zapytam konkretniej....
Za mało danych. Chcesz mieś program do odbioru :" Odbiór danych z rs232 (ramka 32 znakowa zawsze). Zapis całego stringu do zmiennej i wyłowienie z niego potrzebnych danych. " Napiszę jak to rozumiem. Port w PC pod Windows czeka na napływ 32 bajtów wysyłanych z określonymi parametrami (baudrate, ilość bitów danych, ilość bitów stopu, parzystość bądź...
Jasne, że są gotowe biblioteki do Modbusa. Czasem tylko trzeba coś sobie dorzeźbić wedle potrzeby albo portować na konkretny MCU. W ramach enkapsulacji i Modbus RTU możesz przecież wpisywać całą swoją komendę, czymkolwiek by nie była, nawet stringiem ASCII... Protokołu nie interesuje czym są dane, które przesyłasz. To załatwia później parser, który...
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ść...
Jak poczytasz to się dowiesz, że do twojego trzeba antenę na końcu tego kabelka. Ten który ja pokazałem ma antenę wbudowaną. Teraz policz w co jest lepiej zainwestować. Ja stosuję GPS w obudowie. Trzeba go zasilić. Wtedy zaczyna "nadawać" co sekundę komplet danych poprzez RS232 (o ile takie ma wyjście) w formie stringów. Procesor powinien wyłapywać...
Witam, Jestem w trakcie pisania programu który ma za zadanie monitorować protokół sieci przemysłowych Profibus DP. Ruch sieci jest konwertowany z RS485 na RS232 z szybkością 9600kbit/s (program ma zadanie czysto edukacyjne). Postaram się wypunktować swoje pomysły. Proszę o rady i wskazanie dalszej drogi bo w tej chwili nie wiem czy nie wybrałem "ślepego...
pewnie piszesz w bascom ,wiec masz kod odbierania danych (całych stringów ) w przerwaniu :) : Config Serialin = Buffered , Size = 20 do If Ischarwaiting() = 1 Then '1 - odebrano znak,0 - pusty bufor Call Read_rs232 End If loop Sub Read_rs232 Dim Bufor As String * 24 Input Bufor Noecho end sub
Witam. Próbuje napisać kod , ktory bedzie za pomocą przycisku na PC4 na przemian włączał i wyłączał diodę , a także nadawał stringi na uart0 , lub uart1. Wyłączyłem kompatybilność Atmega103 a także JTAg-a. Fusebity ustawione - CKSEL Int. RC Osc. 1 MHz; Start-up time: 6 CK + 0 ms , cos mi nadaje, ale krzaki i znaki zapytania. poniżej kod: #include <avr/io.h>...
Potrzebuje informacji np.: jak z aplikacji włączyć wyłączyć diode led, Przećwicz sobie UART na jakiejś prostej aplikacji. I to najlepiej najpierw z komputerem, za pomocą np Br(at)y Terminal, COMtester lub HyperTerminal. W przerwaniu robisz zapis do bufora odbiorczego lub zmiennej, a w pętli głównej porównujesz jaką komendę masz w tym buforze odbiorczym...
Witam Czy może ktoś sprawdzić działanie funkcji ftoa w ICC AVR? Deklaracja jest w stdlib.h i wygląda tak: /* ftoa function */ #define _FTOA_TOO_LARGE-2/* |input| > 2147483520 */ #define _FTOA_TOO_SMALL-1/* |input| < 0.0000001 */ /* ftoa returns static buffer of ~15 chars. If the input is out of * range, *status is set to either of the above #define,...
Szanowni Państwo, Mam pewien problem z dekodowaniem zmiennych w ramce usart po string hex. Procesor Attiny1614 połączony z modułem bluetooth po TTL. Zaznaczam że ze zwykłymi stringami nie mam problemu tylko jak mam przekonwertować z string hex na int i odesłać. Procek wysyła proste rozkazy np: włącz, wyłącz, włącz na określoną moc, włącz na określoną...
Motam się znowu okrutnie z uartami. Mam dwa urządzenia i chcę aby w każdym nadawanie i odbieranie chodziło w przerwaniach. Urządzenia A odpytuje cyklicznie co kilka sekund urządzenie B. Całe odpytywanie polega na tym że: Moduł A wysyła poleceniem: Print #6 , "RED" ; chr(13) ; zapytanie o treści "RED" i na to zapytanie urządzenie B...
W sumie obojętnie jak to wyśle, byle po obu stronach była ta sama konwencja - czyli albo obie strony używają stringów, albo postaci binarnej. Z tego co pisze autor wynika, że nadajnik dokonuje konwersji na strin i przesyła dane, które odbiornik interpretuje jako dane binarne.
Dopóki nie przyjdzie enter, tekst powinieneś dopisywać do ostatniej linijki, zamiast cały czas dodawać nowe linie. W Delphi dostęp do tekstu wyświetlanego w TMemo jest możliwy przez kolekcję stringów TMemo.Lines - w builderze powinno być podobnie. Po przejrzeniu helpa o komponencie memo rozwiązanie powinno nasunąć się samo ;)
Nie udało mi się rozwiązać problemu z komunikacją z zegarem rtc więc, postanowiłem skorzystac z gotowego rozwiązania z książki Mirosława Kardasia, w której co prawda jest opisany PCF8583, ale w zasadzie jest on bardzo podobny do mojego PCF8563P. Po wgraniu programu, na wyśw. LCD i w terminalu nic się wyświetla... Pomyślałem że skoro ciągle nic się nie...
Wyszukujesz początek ramki, czyli pewnie "$GPRMC," Potem ładujesz znaki do zmiennej textowej aż natrafisz an przecinek. Jak natrafisz na przecinek to zatrzymujesz ładowanie znaków (a przecinka nie ładujesz). Konwertujesz Text na liczbę Integer (chyba że chcesz tablicę Stringów). Potem masz przecinek. Omijasz. Zbierasz kolejne dane aż do kolejnego separatora....
i właśnie o to chodziło by działało bez przerwania a jednocześnie w "przerwaniu" w tle No to muszę Cię zmartwić, bo buforowanie działa na przerwaniach i te masz włączone, choć sam tego na początku nie zauważyłem - SEI :D PS Część kodu, jakaś dziwnie znajoma :lol: Owszem bo po raz pierwszy korzystam z BASCOM AVR więc się podpieram przykładami kolegów...
Witam. Mikrokontroler wysyła mi poprzez rs'a dane. Odbieram je w c++ builder'ze w postaci nastepujacego stringa: Tomek,a1,Marta,b2,Jacek,c3,Pawel,d4 Tomek,a1,Marta,b2,Jacek,c3,Pawel,d4 Tomek,a1,Marta,b2,Jacek,c3,Pawel,d4 Tomek,a1,Marta,b2,Jacek,c3,Pawel,d4 . . . W jaki sposób mogę wyświetlić na kompie tylko te sekwencje, które mnie interesują? Np: "Tomek...
Chyba brakuje Ci funkcji syscalls. Zobacz np. tu http://www.freddiechopin.info/index.php/... i dołącz funkcję _sbrk_r. Rozmiar kodu programu może znacznie się zwiększyć.
No to powinieneś wkleić każdy kawałek kodu, który a jakikolwiek sposób dotyczy zmiennej która odbiera lub/i przechowuje te dane a następnie je wyświetla.
Faktycznie dziwnie to wygląda - a próbowałeś sobie zrobić podgląd rejestrów w symulacji, czy na pewno masz tam NULLa na końcu? A co Ci sie wyświetla w terminalu? Odpalałeś to na uC czy tylko w symulatorze? Jeśli odpalałeś, to może sprawdź sobie ten string w ten sposób,że co sekunde wyświetlaj sobie na ledach (jeśli możesz) wartość *tekst, albo zrób...
Miałem jeszcze opisać Twój x to string otrzymany z ReadExisting ? Jeśli tak to dlaczego (w celach edukacyjnych) nie przypiszesz tego wprost? Jeśli chcesz sprawdzić, czy liczba w postaci string'a jest w podanym zakresie użyj Parse . Na forum używaj opcji Listing kodu .
Tak więc widzisz kolego Krampek, że TAGI w temacie o których tyle razy była mowa są bardzo przydatne bo bez dodatkowych słów opisu byłoby wiadomo z takiego tematu: #include <avr/io.h> #include "soft_uart.h" .global sputchar sputchar: pushR16 pushR17 pushR18 mov R18, R24 ; przekazanie znaku do nadania z parametru funkcji sputchar...
Zanim przystąpiłem do prób z zaproponowaną procedurą do obsługi UARTu, przeprowadziłem testy siłowe za pomocą kodu: $regfile = "m16def.dat" $crystal = 16000000 $baud = 38400 Dim Licznik As Integer Dim Rozkaz As String * 2 Licznik = 0 Do Incr Licznik Print Licznik ; " : 1023:1023:1023:1023:1023...
Jak już mówimy o gcc to on najczęściej używany jest w połączeniu z binutils, a tam jest taki sprytny programik o nazwie strings ;-) Albert
Należy "podpisać" przesyłane zmienne tak by mikrokontroler jednoznacznie wiedział z którą ze swoich zmiennych skojarzyć ma przesłaną wartość i w niej ją zapisać. Wiele urządzeń ma swoje własne sekwencje bajtów po których własnie mikrokontroler jest w stanie określić co nadeszło. Takie sekwencje nazywają się "ramką". Na przykład System NMEA 0183 z odbiorników...
Mam kłopot ze sterowaniem kartą przekaźników na rs485 (avt-531). Podobny wątek jest tutaj, ale niestety zamknięty http://www.elektroda.pl/rtvforum/topic32... Sama karta ładnie daje się sterować z windowsa, ale nie mam pojęcia jak zmusić ją do działania na linuxie. Korzystam z adaptera USB>rs485 na układzie ft232rl (projekt manekinen opisany...
Witam wszystkich, Mam problem z odbieraniem danych po RS232 z programem napisanym pod C#. Kod trochę niżej zamieszczam. Z czym jest problem? A no, odbiera dobrze tylko gdy chce aby reagował na <LF> lub <CR> (0x0A, 0x0D) to jakoś nie może. Próbowałem różnych sztuczek, mi znanych, ale niestety nie udało się. private void Port_Odbieranie(object...
Staram się sterować pewnym modułem po RS232 przy pomocy interfejsu stworzonego w LabView. Problem jaki napotkałem jest następujący. Moduł reaguje na komendy w postaci string'ów, rozkazy analizowane są "w locie" nie jako całość dlatego wysłanie rozkazu powoduje błędną interpretacje (program główny modułu nie nadąża z interpretacją). Pytanie jest proste......
... w jaki sposób odczytać z poziomu Excel'a dane z utworzonych wirtualnych portów COM? Wyniki krótkiej kwerendy po forum i okolicach ... trochę do przejrzenia będzie. W podsumowaniu zarysowuje się kwestia sporządzenia jakiejś, w miarę funkcjonalnej, formatki z odpowiednią kontrolką, np. MSCOMM32: https://www.elektroda.pl/rtvforum/viewto...
Witam kolegów. Od dłuższego czasu próbuje zrobić prostą komunikację po RS232 z panelem MP377 15" i innym urządzeniem (np. Laptop).| Posiadam program Wincc Flexible 2008 Standard. Przy pomocy skryptu chce wysłać prosty String na port RS232, np. "Hellou World". EDIT: ----------- Temat rozwiązany. Udało się stworzyć odpowiedni skrypt. Panel Mp377 15" wspólpracuje...
Witam, Jak w temacie używam przejściówki opartej na AVR-CDC. Problem jaki na potkałem tyczy się poprawnego wykrywania tego konwertera w systemie Linux. Pod Windowsem 7 (64bit) działa bez najmniejszych problemów. Natomiast gdy podpinam ją pod VirtualBox'a gdzie odpalony jest system Slackware 13.37 konwerter nie jest wykrywany. Powinien być on widoczny...
Witam, zastanawiam sie czy ktos z Was próbowal obsłuzyc konwerter USB na RS232(FTDI) pod builderkiem. Bo ja mam z tym mały problem. Chodzi prawdopodobnie o DLL'ki do których nie moge sie dobrac. Podczas próby kompilacji pojawia sie komunikat [Linker Error] Unresolved external 'FT_ListDevices' referenced from C:\PROGRAM FILES\BORLAND\CBUILDER5\PROJECTS\MOJE...
Witam jeszcze raz. Znowu mam problem. :/ Napisałem już mniej więcej funkcję, która będzie pobierała znaki z pola Memo1 kodowała je i wysyłała na mikrokontroler. Oto ona: void __fastcall TForm1::Button1Click(TObject *Sender) { if(!Memo1->Text.IsEmpty() & Memo1->Modified) { String Tekst = Memo1->Text;...
Witam Mam takie pytanie, pisze komunikacje przez rs232 w builderze. W zwiazku z tym takie pytanie, czy istnieja jakies funkcje sluzace do wysylania liczby hex przez rs, ewentualnie zamianie go na stringa i wyslanie, ponizej fragment kodu, zaczerpiety z ksiazki "RS 232C praktyczne programowanie" //--------------------------------------...
stringi rs232 usart stringi arduino stringi
wyznacza warto rezystor uszkodzony sensor felgi malowanie
przesterowanie wejścia tunera wsady biosu
Brak ciepłej wody: Diagnostyka i rozwiązania Gdzie kupić układy CAC HD 02A i SDG HD 03AR?