Ogólnie relacja między literami dużymi a małymi to jest binarna różnica o wielkości 32 (spacja). czyli jak masz wyłuskany znak np. "A' (65 Dec) to małe "a" będzie = A+32 (97 Dec), i na odwrót. Nie wiem czy dokładnie o to ci chodzi. Sprawdź tablice kodów ascii, albo operuj na char-ach i "a"="A"+" ".
no i tym czytałem ze to zamiana chyba char na ascii... int i=0; char buffer [33]; itoa(i,buffer,2);' Mam coś takiego, ale nie wiem jak tego użyć...
Witam, tak to się za bardzo nie uda. W każdym wykonaniu pętli liczysz kolejną cyfrę rozwinięcia - i to jest dobrze. Ale trzeba to zapisać (albo od razu wyświetlać, ale trzeba by liczyć od drugiej strony). Teraz, za każdym razem 'wynik' jest równy ostatniej policzonej cyfrze. Radzę zapisywać jako ciąg znaków, tak będzie najprościej: char tab[32];...
Kombinuję dzisiaj jak koń pod górę, aby jakoś wstrzelić polskie litery dla stringów wysyłanych na ekran, ale ciągle jest źle. Jak kiedyś znajdę sporo wolnego czasu to zrobię własną czcionkę z naszymi znakami i funkcje, która będzie to w locie podmieniać. Na tą chwilę popełniłem prostą zamianę drukowanych polskich znaków diakrytycznych na serial terminalu...
Witam r = 2 * r + (d - '0'); W konsoli wprowadzasz cyfry ale doczytywane są one jako znaki. Zmienna d przechowuje te znaki jako odpowiednie liczby z tablicy ASCII. Na zmiennej d wykonywana jest operacja odejmowania liczy ASCII zapisanej w tej zmiennej z kodem ASCII znaku '0' w celu uzyskania cyfry. Np. Znak d='5' ma kod ASCII 53. Znak '0' ma...
#include <stdio.h> #include <math.h> int main() { char znak; /* przetwarzany znak */ int znak_bin=0; /* liczba z kodem */ int i=0; /* licznik dzielen */ while ((znak = getchar()) != EOF) { while (znak) { znak_bin += pow (10,i) * (znak % 2); znak = znak / 2; i++; }...
Jako para znaków ASCII? IMHO: typ Char nie pomieści 2 znaków ASCII :) Ja wiem, że może masz rację ale kolega napisał dokładnie: znaki w tablicy char
znaczy się problem jest z zamianą zmiennej typu int na zmienną łańcuchową? jeśli tak to coś w tym stylu powinno zadziałać: char tmp[6]; // dla zmiennej int wystarczy int ile_cyfr = 0; while (liczba>0) { tmp[ile_cyfr]=(liczba%10)... // 48 - kod ASCII zera; zmieniamy pojedyncza cyfrę na znak liczba = liczba / 10...
I chce zapytać jak odróżnić małe litery od dużych?? Wiem, że jest funkcja, która zamienia małe na duże, jest taka, która zamienia duże na małe. No bo rozpisywać wszystkie litery i ich kody ASCII i dopiero wtedy porównywać to głupota.... Jeżeli ograniczymy się wyłącznie do literek angielskich, to sprawa jest prosta. char litera; if (litera <...
#include <avr/io.h> #include <util/delay.h> #include "hd44780.h" //zamiana kodu ASCII unsigned char str1[17]="------"; static void lcd(unsigned int a,char x,char y) { unsigned char output[5]; for (int w;w<5;w++) { output[w]=0; } signed char i; char i2 = 5; for(i=12;...
Musiałbyś trochę pozmieniać kod.. Bo teraz masz ten licznik w górnym rzędzie. Zamień: [syntax=c] static void lcd(unsigned long int a) { signed char i; /* Zamiana 32 bitowej liczby bez znaku na ciąg znaków ASCII */ for(i=12; i>=3; a/=10 ,i--) str1[i] = a % 10 +'0'; /* Ustawia kursor w pierwszej kolumnie pierwszego wersza */ LCD_LOCATE(0,0); /* Wysyła...
Czegoś kolega nie zrozumiał albo nie doczytał o tym co ja piszę, mówię i tym dlaczego domyślnie w avr gcc jest zamiana char na unsigned char. Warto to doczytać, a taka pułapka nie wystąpi. a tym bardziej jeśli nie będziesz używał typu char do liczb a tylko do znaków ascii. I nie wspomnę o wielu innych pułapkach w które wpadniesz stasując w avr gcc swoją...
Oto mój program wykorzystujący LCD w trybie 4-bitowym, śmiga jak ... Jest tam obsługa LCD i 1wire, procedurki LCD łatwo wyłowić :) // ****************************************... // Project: Obsluga układu DS18B20 // Author: Zbigniew Chrobot // Module description: pomiar temperatury z DS18B20 kwarc 4MHz // wyswietlanie na...
char cyfra; int liczba = cyfra - '0'; Jeśli potraktujesz znak jako liczbę, to dostaniesz kod ASCII. Ponieważ cyfry w tablicy ASCII mają kolejne kody, to wystarczy odjąć od kodu znaku kod pierwszej cyfry, czyli '0'. Pozdrawiam, Dr.Vee
Po pierwsze printf to prawdziwy kombajn dlatego jego użycie powoduje, że program "puchnie". Zamiast printf spróbuj użyć: 1. do ciągów znaków puts 2. do liczb itoa (zamiana liczby na ciąg ascii) a potem dopiero puts. Również w tym przypadku uzyskany kod nie jest zbyt krótki. Najefektywniej będzie samemu napisać wysyłanie znaków. void SendByte(char...
okej, inne pytanie: jak "odczytać" ten kod ASCII? W sensie wyświetlić na ekranie? Na przykład tak: char litera = 's'; printf("Kod ASCII litery '%c' wynosi %u.\n", litera, litera); Zauważ, że zarówno do wyświetlenia litery jak i jej kodu ASCII użyłem tej samej wartości. Po prostu kazałem funkcji printf() raz potraktować ją jako znak,...
Miałem do napisania program w C który zamienia ą Ą itp na a A. Mam taki kod (on jest tylko dla ĄąĆc dla przykladu reszte pozniej uzupelnie jak bedzie dobrze dzialal): #include <stdio.h> #include <stdlib.h> #include <math.h> int main(int argc, char* argv[]) { if(!argv[1] && !argv[2])...
Witam Mam problem z wysłaniem na LCD wyniku z ADC w postaci np 3.51 V 1)Najpierw chciałem w wyłuskać (3) i wysłać na LCD 2)wysłać na LCD znak "." 3)wyłuskać resztę (51) i wysłać część programu odpowiedzialna za podział i zamianę wyniku na ASCII wygląda tak: int voltintpart Wszystko jest prawie OK Dzieląc 1022/205 hex 0x3FE/0xCD mam 4. nie otrzymuję...
ja to robię tak: DEC = ((((BCD & 0xF0) >> 4) * 10) + (BCD & 0x0F)); //zamiana BCD na 'normalna' liczbe char bufor[7]; LCDstr(itoa(DEC, bufor, 10)); //wyslanie na wyswietlacz string'u bufor ewentualnie zamiast od razu wysyłać można dać samą instrukcję: itoa(DEC, bufor, 10)
Dziękuję, wszystko działa poprawnie, dopiero zaczynam z arduino i pomoc jest nieoceniona. [syntax=arduino]int LED1 = 2; void setup() { Serial.begin(19200); pinMode(LED1, OUTPUT); // Ustaw pin 2 jako wyjście } void loop(){ while (Serial.available() > 0) { char x = Serial.read(); // Przypisz znak z bufora do zmiennej x if(strcmp(x, 49) == 0) // Jeśli...
Jak już wcześniej koledzy wspomnieli liczby zmiennoprzecinkowe to "zabójstwo" dla 8bitowców :wink:. Tutaj masz najprostszy przykładowy kod odczytu temp. z DSxxxx //potrzebne zmienne //globalna unsigned char Temperatura[8]; //lokalna unsigned char ok,i,znak; unsigned char temp[2]; signed char temp_jednosc; unsigned char temp_ulamek=0;...
Mam taka mala funkcje: AnsiString tmp1; int tmp2; char str1[4]; int str2[4]; tmp1 = MaskEdit1->Text; tmp2 = tmp1.Length(); strcpy (str1,tmp1.c_str()); // zamiana na ASCII for (int i=0; i< tmp2; i++) { str2[i] = int(str1[i]); } Po wykonaniu funkcji strcpy zmienna...
witam to ja z tymi 3 zadankami przeczytałam kurs i trochę już kapuje o co biega. Teraz proszę o pomoc czy to jest prawidłowe jeśli chodzi o zapis. #include <iostream.h> int main() { char zmienna kolejne zadanko char zmienna i kolejne char zmienna Dodano po 59 czemu tylko zamienia mi aLA a reszty nie? #include <iostream.h> char zmienna[]...
Zmienilem funkcję na proponowaną przez Frrediego void DBGU_ZapiszDec(int value) { char buffor[7]; //--------------------------------------... int i; for(i=0;i<5;i++) // do that down to tenths { buffor[i]='0'; // initial value is ASCII '0' while(value>=divisor[i]... // loop...
Witam, podczas budowania dalmierza ultradźwiękowego natrafiłem na problem którego nie potrafię rozwiązać, a nawet lokalizować jego przyczyny. Sama procedura pomiarowa, tj, generacja fali i odebranie wygląda dobrze. Problemem jest, że np. mierząc wciąż jedną i tą samą odległość dostaję wyniki typu 43cm, 43cm, 38cm, 39cm, 43cm, itd. [syntax=c]#define...
Witam Postanowiłem pobawić się trochę układem DS1305. Ogólnie układ wydaje się działać, jednak kiedy bliżej przyjrzeć się temu w jaki sposób zliczany jest czas pojawia się pewne dziwne zjawisko. Mianowicie co jakiś (co 10 sekund/minut) czas zamiast inkrementacji sekund/minut o 1 inkrementują się one o 7 np. z 25 na 32. Poza tym wszystko wydaje się być...
//Najpierw musisz ustawić odpowiednie parametry //np tak Kod: unsigned char odebrane; //zmienna globalna - definujemy ja przed wszyskimi funkcjami unsigned - oznacza ze przyjmuje warotsc od 0 do 255 unsigned char zmienna; #include <avr\sfr_defs.h> //pozwala sterowac bitami code::blocks #include <avr\io.h> //wejscia_wyjscia avr...
Doradzę koledze aby sobei zadeklarował taką zmienną unsigned char *bufor="00:00"; tym sposobem masz już na końcu znak końca łańcucha potem musisz zamienić po kolei minuty i sekundy na postać tekstową np: unsigned char minuta; unsigned char sekunda; (to oczywiście deklaracje zmienny które sa na początku procedury) a zamiana moze wyglądać...
Na szczęście choinka if then else zajmuje zero bajtów i zero instrukcji oraz wykonuje się w ujemnym czasie. Proponuję najpierw sprawdzić obie wersje na min. 2 platformach, a potem wyciągać wnioski nt. zajętości pamięci. Sprawdziłem na avr-gcc i xc8. I jest tak jak napisałem. Twoja koncepcja jest inna, co zmienia postać rzeczy, przemyśle to. Przekazujesz...
O ile w zeszłym tygodniu męczyłem się z samą obsługą klawiatury, teraz mam problem z zamianą scankodu na ascii. Te niby znaki ascii wysyłam na USART i w terminalu otrzymuję jakieś niestworzone rzeczy, nie wiem o co chodzi, oto kod: #define KCBIT PIND&_BV(6) static unsigned char PROGMEM keys[256]={//są tylko litery i cyfry 0,//0x00...
32 to kod ASCII "spacji" (odstępu)... Znaki o kodach 32.. 127 to literki, cyferki itd.. znaki poniżej - to kody sterujące, specjalne itd. Czyli w ten sposób wykrywam znaki o mniejszych kodach (jak ENTER, \0, CR, LF). Jak spojrzysz sobie w tablicę ASCII - zrozumiesz. http://pl.wikipedia.org/wiki/ASCII Szczerze mówiąc nie wiem co wstawia gets jako znak...
Witam ponownie po dłuższej przerwie. W międzyczasie usunąłem jeszcze jeden zauważony błąd powodujący zawieszenie się odtwarzacza, a przedtem wyświetlenie śmieci na LCD. Błąd ten pojawiał się, gdy do odtwarzacza włożyło się nowo zakupioną lub pustą po formacie kartę SD. Błąd ten usunąłem modyfikując fragment funkcji main, jak poniżej: if (! (AT91F_PIO_GetInput(AT91C_BASE_P...
Witam. Nie mogę sobie poradzić z pewną sprawą dotyczącą oprogramowania wyświetlacza LCD. Mam napisany program obsługi LCD, jeśli numery wyjść portu C mam ustawione w ten poniższy sposób to LCD działa: [syntax=c] #define DDR_LCD DDRC #define PORT_LCD PORTC #define RS_LCD 2 #define EN_LCD 3 #define DB4_LCD 4 #define DB5_LCD 5 #define DB6_LCD 6 #define...
Witam, chciałbym zbudować układ który będzie mierzył prędkość i puls podczas jazdy na rowerze. Układ ma działać na podstawie różnic w czasie między impulsami na wejściu uC. Problem w tym, że układ działa poprawnie tylko gdy sygnał jest wysyłany na jedno lub drugie wejście, gdy na oba wtedy pojawiają się błędy. Np. przy 1 wejściu prędkość wynosi 24km/h,...
Witam, na podstawie książki Pana M. Kardasia oraz dokumentacji przetwornika MCP3202 popełniłem taki oto program w języku C: [syntax=c]#define F_CPU 8000000 #include <avr/io.h> #include <util/delay.h> #include <stdlib.h> #include "uart.h" #define MOSI PB5 #define MISO PB6 #define SCK PB7 #define CS PB2 uint16_t bufor1=0; uint8_t bufor2=0;...
Jeżeli nie ma odpowiedzi to mogą być dwie przyczyny: 1) zła ramka zapytania albo przynajmniej zła suma kontrolna 2) złe ustawienia parametrów transmisji Tak jak pisałem wcześniej. Musisz znaleźć jakąś pewną sprawdzoną ramkę. Może jest coś w dokumentacji jakiś przykład ramki. Ta twoja ramka jest coś za długa przecież chciałeś odczytać wartość tylko z...
No cóz juz sobie poradziłem :D może w mało efektowny (ale efektywny) sposób przez odpowiednie stablicowanie tych danych w małym sześcioelementowym buforze. A dr_bones dzieki za próbe pomocy ale w moim nieco zagmatwanym poscie nie chodziło o zwykła konwersje z heksy na dziesietne - takie algorytmy piszę od reki :D , a bardziej złozona sprawę. Otóż µKontroler...
(at)ElektrodaBot Tak wygląda wynik działania: ./ana5 6200DSUB.ROM Attempting to open 6200DSUB.ROM Length: 63488 bytes [INFO] PCIR at 0x108 -> Vendor: 0x10de (NVIDIA), Device: 0x163 [INFO] ROM image length (from PCIR): 63488 bytes Found 1. NVIDIA pattern at 0x94b3 (Decimal: 38067) VESA table...
https://obrazki.elektroda.pl/5461019800_... Opiszę tutaj proces implementacji wysyłania sygnału IR w oparciu o PWM i timer. Wysłany tak z mikrokontrolera sygnał będzie w stanie kontrolować klimatyzację. Dodatkowo użyty format sygnału będzie zgodny z tym co przechwytuje Flipper Zero, co pozwoli na wykorzystanie przechwyconych w ten...
Witam Po krotce omówię problemik z jakim się borykam: Uczę się oczywiście programowania AVR w C, napisałem prosty programik, który ma spełniać role BARDZO UBOGIEGO zegarka. problem polega na tym, ze nie wiem dokładnie jaka wartością mam nadpisać rejestr TCNT1 aby przerwanie wystąpiło dokładnie co 0.1s. Powinienem uwzględnić czasy wykonywania kodu zawartego...
hmm panowie fajnie poczytać wasze opinie na takie tematy jednak chyba nie idą one w temat mojego problemu. Użyłem case i juz wiem ze to jest nie właściwa instrukcja warunkowa. Doprzygotowania swojego menu wykorzystałem if-y jednak przy kilku poziomowym menu troche sie w tym zamieszałem i gdybyście szanowni koledzy pomogli mi troszke zoptymalizować kod...
Witam. Probuje napisac baze danych komponentow elektronicznych SMD. Ten program ma robic baze danych rezystorow, rozne wybrane serie, tolerancje i obudowy. Mam 2 problemy: 1 problem. Stworzylem tablice skladajaca sie z cyfr int: sa to wartosci setne rezystorow. (100, 150, 220, itp) Trzeba by bylo rowniez stworzyc wartosci jednostkowe, dziesietne, tysieczne...
Potrzebuję pomocy przy zamianie kodu "RFID Reader", tzn. żeby zamiast wyświetlania kodu karty na LCD uzyskiwać odpowiedni poziom na wyjściu 1z10 i czy jest to możliwe do zrealizowania na atmega8? Chciałbym użyć 8 ostatnich cyfr kodu karty. Posłużyłem się gotowcem, który był już na elektrodzie (dopiero uczę się bascoma i nie wiem jak się do tego zabrać):...
Cyfrę w char bardzo łatwo zamienić na int, wystarczy odjąć '0' (nr ASCII zera). [syntax=c]char c; int i; scanf("%c", &c); i = c - '0'; printf("%d", i);[/syntax] Do zamiany char* na int służy funkcja atoi() - która wykorzystuje powyższe tylko, że w pętli mnoży przez 10. Myślę jednak, że dla Twojego zastosowania lepszym będzie zinterpretowanie rezultatu...
Punkt 1. W starym Basicu tekst, czyli łańcuch znaków, miał funkcję STRING. Można było dzielić tekst na pojedyncze znaki CHAR i porównywać je wg kodu ASCII. Pozwalało to posortować litery w danym słowie kolejno wg ASCII, bo a < od pozostałych liter. Kod ASCII przypisał literom i innym znakom wartość liczbową, ale oddzielnie dla małych i dużych liter....
https://obrazki.elektroda.pl/2059871200_... Witajcie moi drodzy. Zapraszam na krótki test i teardown zegara/termometru/higrometru Tuya TH06 LCD zasilanego z USB. Przedstawię tu krótko jego parowanie z telefonem, funkcjonalność aplikacji mobilnej, jego wnętrze oraz części z których jest złożony, a na koniec opiszę proces inżynierii...
Na zamianie typu char na byte i odwrotnie. Description Chr returns the character with the ordinal value (ASCII value) of the byte-type expression, X. Tak samo, jak zapisujesz, tylko odwrotnie. Zamiast otwierać plik do zpaisu - otwierasz do odczytu. Zamiast w pętli zapisywać kolejne znaki słowa źródłowego - czytasz w pęli z pliku. Zamiast dodawać (szyfn...
Dodano po 3 W sumie to już mam pytanie :) Czy można zdeklarować tablicę liter? Np char litery Po pierwsze deklarując tablicę, jej elementy powinieneś pisać w 'X', a nie "X" np. char litery[2]={'A','B'}. Po drugie elementy w tablicy numerowane są od zera czyli dla tablicy char litery[2] jej poszczególne elementy mają indeksy 0 i 1. Dlatego pętla for...
Popracowałem nad tą biblioteką, m. innymi dołączyłem funkcję wyświetlającą wartości stałoprzecinkowe. Potrafi wyświetlać 32-bitowe liczby, wiec nie powinno być problemu. Jest to wersja pod AVR Xmega. Biblioteka ma jeszcze kilka niedociągnięć, np. funkcje wyświetlające linie mają kolor 8-bitowy, ale funkcja wyświetlająca punkt, a także napisy wyświetlają...
Do JacekCz: Przypomnij sobie I klasę podstawówki. Czy najpierw kazali Ci pisać wyrazy słownikowe budujące zdania? Z pewnością nie. Kod wyrażający intencje to w mojej opinii umiejętność "od początku". Umiejętność użycia biblioteki standardowej również. - dlaczego (at)trebuch1 nie proponujesz zastąpienia scanf-a czy printf- samoróbym? Nadmierna ilość...
zamiana chara zamiana ascii zamiana float chara
zgemma ustawienia tunera karta pamięci uszkodzona aparat cyfrowy nikon
milwaukee klucz internet skystar
Szlifierka Flex odcina prąd co kilka sekund - przyczyny i rozwiązania Błąd P1145 w Citroenie Berlingo 2005 - Diagnostyka