Witam wszystkich Elektrodowiczów! Potrzebuję wyświetlić w terminalu wartości zmiennych przesyłanych z mikrokontrolera po USARTcie do komputera, ale w teminalu zamiast wartości liczby np. 50 wyświetla znak ASCII '2' (równoznaczny z wartością 50). Jak można wyświetlić wartości liczbowe?
Tak jeżeli twój terminal obsługuje znaki sterujące. Kompletne polecenie wysłania wiadomości SMS wygląda następująco: AT+CMGS="+48XXXXXXXXX" <CR> Tekst wiadomości <CTRL+Z> <CR> - „Carriage Return” w tablicy ASCII ma numer 13 (0x0D). W terminalu ten kod będzie wysyłany po naciśnięciu klawisza [Enter]. <CTRL+Z> - "Substitute"...
a rozmiar programu wzrósł z 3072 do 3932 bajtów więc na pewno nie mogę sobie pozwolić na użycie tej funkcji. Aha, nie wiedziałem, że dekodowanie robisz na MCU. To może zrób tak, że MCU komunikuje się z serwerem dwukrotnie i na początku przy pierwszym zapytaniu pobiera metadane odnośnie wsadu, wielkość firmware, adres startowy w FLASH, CRC całego wsadu,...
Jaki terminal i jaka czcionka w nim ustawiona?
Ale ten sposób wysyłania ramek to trochę nie teges. A jak poprawnie się wysyła takie ramki i czym? Nie możesz po prostu sprawdzić w opisie programu jak należy formatować dane? Bo domyślam się że to jakiś terminal jest. Na Wikipedi jest opisane tak: "Minicom to program do kontroli modemu oraz emulator terminala dla systemów uniksowych" Ciężko Ci pomóc...
1. Najlepiej użyć znaków ze standardu ASCII takich jak + i | oraz -. 2. Znaki semigraficzne mogą Ci ginąć na 2 etapach: albo kompilator Ci je koduje w inny sposób, niż byś chciał, albo terminal inaczej je wyświetla. Pamiętam, że przy drukarkach igłowych takie rzeczy sprowadzały się do wyboru odpowiedniej strony kodowej/zestawu znaków (charset). I między...
https://obrazki.elektroda.pl/9772055900_... Echo na linii Wszelkie podobieństwo do prawdziwych osób i zdarzeń jest przypadkowe. Był późny piątkowy wieczór. W małym pokoju na poddaszu, między starym Commodore 64 a stosami dyskietek, grupa nastolatków pochylała się nad klawiaturą 286-tki z zielonym monitorem CRT. Na ekranie migotał komunikat:...
Hasło z Help-a : "Terminal Send ASCII"
Nie ma juz HyperTerminala w Viscie? A to przepraszam. Ale chyba sie nie pomyle, gdy stwierdze, ze kazdy, kto ma troche do czynienia z elektronika i mikrokontrolerami ma juz jakis program terminalowy zainstalowany, czy chociaz zachomikowany gdzies na komputerze. Tak wiec mysle, ze stwierdzenie jest uzasadnione. A jak wciaz Ci to nie pasuje, to stwierdzmy,...
Witam kolegów I koleżanki Mam pewne urządzenie które komunikuje się po UART 3.3 V. Aby rozpocząć komunikację muszę do urządzenia wysłać następujące komenty Enter xon (ASCII) Enter Po tym urządzenie przesyła dane o które mi chodzi I które bez problem odbieram. Do komunikacji z urządzeniem używam Mega328P I Bascom-a. Problem w tym że gdy wysyłam powyższe...
Jeszcze jedna sprawa... Zmienna zliczanie jest typu unsigned char więc ok... Ale jak ją odbierasz...? Jeżeli terminal odbiera wszystko jako ascii to wyskakują krzaki bo traktuje to co wysyłasz jako kody znaków ascii... Np. kropka to 46... Więc albo odbieraj jako liczbę albo przed wysłaniem zamieniaj liczbę na ciąg znaków i tak puszczaj...
> GET /update?key=XKLUCZX&field1=5&field2=255&... HTTP/1.1\r\nHost: api.thingspeak.com:80\r\n\r\n Wpisujesz to z terminala? Jeśli tak, to czy jesteś pewien, że Twój terminal przesyła właściwe znaki ASCII 13 i 10 w miejscu '\r' i '\n' ? PS. AT+CIPSEND=80 No i podałeś chyba niewłaściwy rozmiar danych. Według moich wyliczeń to tam jest...
Witam moze troche nie ten dzial, ale jednak to troche temat zwiazany tez poniekad z programowaniem potrzebuje wyslac po RS pewien ciag znakow w kodzie ascii np. :AA0101E2{CR}{LF} problem dotyczy dokladnie znakow {CR} i {LF} moge sobie to wpisac z altem np alt+0013 to bedzie CR, ale chodzi o to ze chce zrobic sobie plik tekstowy i potem w hyperterminalu...
Hyper Terminal przerabia to co dostanie na znaki zgodnie z tablicą ASCII Wywołanie wyslij(5+'0'); przerabia poprawnie cyfry od 0-9 na kody ASCII tak by poprawnie zostały wyświetlone na terminalu jako odpowiednie cyfry. Aby wyświetlić unsigned char na terminalu możesz skorzystać z takiej funkcji: void wyslij_Value_as_Digits( unsigned char value )...
Witam! Jakiś czas temu zrobiłem płytkę do mojego robota i komunikacja z terminalem działałą. Ale projekt na jakiś czas odstawiłem i teraz komunikacja nie chce działać. Co prawda mikrokontroler prawidłowow rozpoznaje wysyłane mu znaki ale przykładowo gdy piszę prosty program taki jak: $regfile = "m32def.dat" ' specify the used micro $baud =...
W Brayu masz coś takiego jak Ascii Table. Tam znajdujesz odpowiedni znak i wpisujesz to w formie #xxx (xxx to 3 znaki z kolumny Dec) i tak dla znaku Sub albo inaczej ctrl+z powinieneś wpisać #026 i wysłać. Można też wpisać wartość hex wówczas wpisujesz $1A (tym razem znak $ informuje terminal że jest to znak o numerze zapisanym szesnastkowo). Ja stosuję...
CRLF pomaga o ile wysyłasz dane w formacie ASCII, jeśli to jest raw binary data to i tak nic nie podglądniesz, bo będziesz miał krzaczki, albo co gorsze terminal zinterpretuje to jako znaki kontrolne. Nie mówię, że czekanie na znak końca nie ma sensu - tylko, że ten sens jest ograniczony do sytuacji, w których z góry nie wiadomo ile znaków zostanie...
Problemów może być sporo ja bym jednak zaczął od zmodyfikowania kodu odpowiedzialnego za komunikację zarówno po stronie PC jak i AVR. Wiem, że to brzmi mało pocieszająco ale gwarantuję, że efekt końcowy będzie zadowalający. Po pierwsze zrób jakąś strukturę ramki, która ma "wyraźny" początek i koniec. Po to mamy do dyspozycji w tabeli ASCII znaki receive_text()...
Czemu korzystasz z programowego uarta? Używaj sprzętowego jak w przykładzie poniżej. Zauważ też że będziesz odbierał znaki ASCII, a ty potrzebujesz liczbę dziesiętną do wyświetlenia. Na początek wgraj program i wpisuj w terminal liczby od 0 do 9 czyli w ascii od 48 do 57. Wpisanie czegos innego prawdopodobnie wysypie ci program bo lookup nie znajdzie...
Fusebity mam ustawione jak na obrazku poniżej (czyli teoretycznie na te 8MHz): http://www.tkdami.net/~voytek/programy/s... Zmiana na UCSRC = (1<<URSEL)|(1<<U... nic nie poprawia, ciągle śmieci. Dlaczego w terminalu muszę mieć ustawione bity danych na 7, pomimo tego że w programie mam ustawione 8,...
Nie wiem czy sie przyda ale mam opis bootloadera ale na ATmega8 oto on napisany w bascomie: 'Program Bootloadera (monitora) dla ATmega8 umożliwiający ładowanie 'programu do pamięci Flash przez interfejs RS232 z prędkością 19200 'bodów 'Bity fuse należy ustawić, by na Bootloader było przeznaczonych 128 'bajtów 'Początek adresu programu Bootloadera:...
Jestem początkującym użytkownikiem, potrzebuję programu " kolejne przyciśnięcie klawisza generują kolejne znaki ascii na ekranie pc(terminalu)" jakby ktoś wiedział jak napisać to prosiłbym o pomoc z góry dziękuję
Usart działa dobrze. To co otrzymujesz do wartość acsii pierwszej liczby. Innymi słowy - terminal nie wysyła liczby, którą wpiszesz, tylko znak. W kodzie ASCII '0' = 48, '1' = 49, itd. Otrzymujesz więc tylko pierwszy znak jaki wyślesz. jak wyślesz z terminala 'p' to powinieneś otrzymać 112
Nie masz włączonego echa więc wygląda to tak jakbyś nic nie mógł wpisać. W menu plik/Właściwości w zakładce Ustawienia wybierz Ustawienia ASCII i tam zaznacz pole "Lokalne echo wpisywanych znaków"
Wysyłasz wartość 0 i 1 funkcją print, czyli zamieniając je na tekst - cyfry. Cyfry 0 i 1 mają w ASCII kody 0x30 i 0x31. Terminal wyświetla Ci znaki, czyli cyfry "00" i "01". Analizator wyświetla szesnastkowo wartości przesyłanych bajtów, czyli 0x30 i 0x31.
Procesor Atmega8 oscylator wewnętrzny 1MHz w Bascomie stosując instrukcję: print "dowolny znak ASCII" w terminalu na PC otrzymuję znaki przesunięte decymalnie o 64 np: print "01245" otrzymuję "pqrstu". Co może być tego przyczyną? Serdecznie pozdrawiam
w terminalu też wybiera się sposób prezentowania - czy wartość, czy kod ASCII
...Gdy z terminala wysyłam 2 to procek zwraca mi 50 gdy 1 to 49 gdy 3 to 51 itd Pewnie gdyby a była single to by było O.K. "Kłaniają się" typy zmiennych. Kiedy do terminala wpiszesz 2 , to po łączu szeregowym do uC , jest wysyłany kod ASCII cyfry 2 , czyli dziesiętnie 50.Instrukcja print , "przetwarza" owe 50 na ciąg znaków ASCII reprezentujących liczbę...
Na stronie hacking.pl jest umieszczony bardzo prosty translator tesktu na uproszczone znaki ASCII :) Przecież kazdy znak należy do ASCII (+ rozszerzenie ISO-8859...)
Ten program wysyła bajty odczytane z pamięci jako znaki, a nie jako sekwencje cyfr ASCII. Zacznij od programu, który będzie w pętli co jakiś czas wysyłał np. kolejne cyfry lub litery. Jeśli to zadziała, będziesz wiedział, że masz poprawną transmisję - wtedy włącz obsługę pamięci i ew spróbuj wysyłać jej zawartość zamieniając ją na wartości np. szesnastkowe...
(at)JacekCz jak to z terminala wysłać np: Putty ? Bo póki co wysyłam tylko znaki i od razu mi je drukuje. Dodano po 2 Czym jest wartość 29? 29 to wg tabeli ASCII kod znaku o symbolu GS. Ale to Ty powinieś wiedzieć. Sam nigdy go wcześniej nie użyłem. Podobnie jak ESC to nie trzy literki 'E', 'S', 'C' tylko kod 27 itd na terminalach to MOŻE być dostępne...
OK. Podłącz terminal i uruchom dysk. Przejdź w tryb "ASCII Diagnostic Port" kombinacją klawiszy ctrl + z, jak dostaniesz T> wydaj komendę H. Pojawi się ciąg znaków, to będą "health bits" - na ich podstawie da się powiedzieć do dolega twojemu dyskowi. Ewentualnie możesz użyć komendy T4 (to przetestuje głowice dysku) i wrzucić log.
Terminal na kompie koniecznie z możliwością odczytywania hexa. Nieprawda, Siemens C35 rozmawia laczem szeregowym znakami ASCII, windowsowy Hyper Terminal nada sie wiec w zupelnosci. BF
Witam Czy ktoś może się orientuje czym może być spowodowany problem odbierania przysłowiowych "krzaków" w terminalu poprzez interfejs zbudowany na max3232. Schemat interfejsu w załączonym obrazku. Interfejs ma za zadanie łączyć się z routerem Linksys WRT54GL poprzez port com, ustawienia połączenia: 115200,8,N,1 Interfejs jest zasilany z portu nr 2 w...
W programie terminal znak $ oznacza, że znak ASCII jest wpisywany szesnastkowo w $xx, natomiast znak # przed liczbą oznacza, że znak ASCII jest podawany w postaci dziesiętnej #xxx. Można te sposoby stosować naprzemiennie według uznania. Tutaj masz link do strony programu gdzie w opisie można znaleźć przykłady zastosowań: https://sites.google.com/site/terminalbp...
To ja dam jeszcze podpowiedź ze starych czasów assemblera: Zero ascii ma kod 0x30. Potem kolejne cyferki lecą po kolei czyli 9 ascii = 0x39 Jak chcesz wyświetlić zmienną zawierającą wartość 0-9 to dodajesz do niej 0x30 lub '0', bo apostrofy tłumaczą jeden znak ascii na jego wartość, i wysyłasz na wyświetlacz (czy to LCD, czy port szeregowy/terminal)....
Owszem, to działa. Tyle, że twój terminal odbiera znaki w kodzie ASCII, jak mu wyślesz 3, to nie jest to kod znaku 3. Napisz uart_putc(d+'0') i będzie to to czego się spodziewasz.
Po pierwsze windowskowy klient telneta jest beznadziejny. Ma problem z szybkim wyświetlaniem, jeżeli jest coś więcej niż tekst. Wracając do sprawy. Jak się łączysz telnetem np. z linuksem, to wyświetla się to, co byś normalnie zobaczył na monitorze, np. taki MidnightCommander. Wysyłasz poprostu znaki zakodowane w ASCII.
Rzeczywiscie wszystko jest Hyper terminalu, tak nawiasem to niezły programik dzięki za odpowiedźi, temat chyba można zamknąć.
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ś...
(...) PORTC ^= (1 << PC4); } else{PORTC ^= (1 << PC3);} odb_flaga=0; } }} Zrobiłem taki kod. Mam podłączone trzy diody i mikrokontroler nie ważne co wpisze na terminalu, zapala i zgasza tylko diodę PC5 Twoja konfiguracja wygląda w porządku, taktowanie jest poprawnie ustawione na 1MHz. Cieszę...
Niemożność zmiany rozmiaru tego mizernego bufora to rzeczywiście fatalna wiadomość. Napiszę w czym jest rzecz ale prawdopodobnie nie jest to wina tego ubogiego bufora ponieważ myślałem, że wynosi on 8 bajtów a nie 1 bajt. Posiadam konwerter uart-ethernet, który podłączyłem do ATmega8A (wykorzystuję na chwilę obecną tylko linię Tx uC) i dla testu wysyłam...
Jeśli wpiszę w hyper Terminalu 32 to co on mi wyśle na port? (02 w hex)? Mam potrzebę wysłania kilku bajtów w hex, przy czym chcę to robić pojedynczo? Jak mam wpisywać w hyper terminalu te wartości? Podejrzewam, że on wpisane znaki traktuje jako ascii a wysyła kod. Jakie tu będzie optymalne działanie?
Hmm, nie do końca łapię co tam masz nakodowane, bo w czymś takim nie piszę, ale zwykle jak działa z terminala w te i wewte, a z kodu nie, to problem jest w różnicy pomiędzy liczbą a reprezentacją ASCII. Sprawdź to pod tym kątem. Jak do terminala wyślesz bajt np. 2 (0x02), to dostaniesz głupoty, a na pewno nie wyświetlisz na terminalu znaku '2'. Bo '2'...
Witam wszystkich! Straciłem już cierpliwość :evil: Nie mogę skomunikować tego METEXa z prockiem. Miernik ma następujacy format transmisji: 1200bitów/s 7 bitów danych (znaki ASCII) 2 bity stopu Miernikowi trzeba wysłać znak "D" (68 ASCII), zeby rozpoczął nadawanie. Wszystko pięknie. Napisałem w BASCOMie kawałek kodu. Z terminalem hula aż miło, ale jak...
Tego rodzaju błędy powstają w wyniku wykrycia z jakiegoś powodu fałszywego bitu startu i są typowe dla transmisji non-stop kiedy bit startu kolejnego znaku następuje zaraz po bicie stopu poprzedniego. Przy wysyłaniu non-stop znaku "A" (41H=04000001B) w strumieniu bitów takiej transmisji można znaleźć znak "P" (50H=01010000B) według poniższego schematu...
Co do symulatora to nie wiem jak tam wpisać w terminal inny znak niż litera - w "normalnym" jest opcja Send ASCII character... Koniec ciągu oznaczany jest tylko znakiem o kodzie 10.
Do końca nie rozumiem. Chcesz byśmy podpowiedzieli Ci jak napisać funkcję która wartość ze zmiennej przerobi na ciąg znaków ASCII zapisanych w buforze- czy tak?
Witam forumowiczów, Mam "drobny" problem z wyświetlaniem znaków na LCD 2x16. Program w C++ . Wyświetlanie znaków wysłanych np. tak: 'LCD_WriteText("OK.");' jest prawidłowo wyświetlane. Również wyświetlanie danych z czujnika temperatury jest ok. Wyświetla wartość. [syntax=c]data=DHT_read_temp(); itoa (data,str,10); LCD_WriteText(str); [/syntax] Ale gdy...
Dobra. Działa :) Tylko tera przydał by się jakiś inny terminal, żebym mógł mu bajty wysyłać, a nie znaki ascii i dodatkowo pętlę 'pwm' przydało by się w przerwanie walnąć.
Na końcu artykułu o USART napisałem: Problem liczb i znaku zapytania w terminalu Jeżeli wysyłasz do terminala liczby w postaci kodów ASCII, możesz się natknąć na problem pojawiającego się w zamian jedynie znaku zapytania. Rozwiązanie problemu znajdziesz tutaj: Problem znaku zapytania podczas konwersji float do znaków ASCII
terminal wyświetla znaki ascii znaki ascii ascii terminal
vestel 17ips72 instrukcja vissman przyłącze bezpiecznik
frequency mixers frequency mixers
Czy statecznik metahalogenowy działa z lampą rtęciową? Warystor 275V w zasilaczach: ochrona przed przepięciami