float double

Znaleziono około 596 wyników dla: float double
  • Wysłanie zmiennej typu float / double przez USART - ATmega

    zrób sobie unie: union dane { float f; unsigned int i; }; Zakładając, że float i uint mają ten sam rozmiar (sprawdź to) wpisując do float'a liczbe jaką chcesz, dostaniesz jej odwzorowanie bitowe w uint'cie. A dalej już jak wyżej.

    Mikrokontrolery AVR   30 Maj 2010 22:48 Odpowiedzi: 4    Wyświetleń: 5343
  • REKLAMA
  • Jak przekonwertować int, float, double na CString w C++?

    wystarczy trochę poszukać w helpie: interesującymi Cię funkcjami są: _itoa, _ecvt, _fcvt, _qcvt z biblioteki stdlib.h

    Programowanie   16 Gru 2004 09:04 Odpowiedzi: 2    Wyświetleń: 3751
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • Konwersja float/double/int na char/string na microBlaze

    Konwersję z liczby całkowitej na string łatwo można Sobie zaimplementować, implementacje funkcji itoa() też są dostępna, wystarczy poszukać w sieci: [url=http://en.wikipedia.org/wiki/Itoa]i... Część po przecinku też można wydobyć za pomocą itoa() wystarczy pomnożyć wynik przez wielokrotność 10 i zapisać go do integer. Warto ogólnie operować na liczbach...

    Programowalne układy logiczne   02 Maj 2011 06:57 Odpowiedzi: 2    Wyświetleń: 2837
  • Jak wyświetlić zmienną float/double na LCD w AVR Studio?

    I mieć dużo flasha...

    Mikrokontrolery   20 Sty 2012 10:01 Odpowiedzi: 16    Wyświetleń: 6400
  • REKLAMA
  • [WinAVR][C] Część całkowita z liczby FLOAT/DOUBLE na CHAR

    Jeśli chcesz, żeby zaokrąglał zamiast obcinać to do zmiennej float dodawaj 0,5 i następnie rzutuj.

    Mikrokontrolery AVR   09 Kwi 2010 12:39 Odpowiedzi: 5    Wyświetleń: 8761
  • REKLAMA
  • Wielkość zmiennych w avrgcc: int, int16_t, float, double w avrlibc

    Tu jest opis: [url=http://en.wikipedia.org/wiki/Stdint... Tabela porównawcza.

    Mikrokontrolery AVR   12 Kwi 2011 19:42 Odpowiedzi: 7    Wyświetleń: 1997
  • AT91SAM7S265: Problemy z operacjami na float i double na ZL11ARM

    Ja mam identycznie i jest OK. Mam jeszcze jedno pytanie: czy masz włączoną optymalizację kodu w GCC?

    Mikrokontrolery   09 Sie 2007 21:27 Odpowiedzi: 16    Wyświetleń: 1533
  • Precyzja wyświetlania zmiennych float i double w Arduino - tylko dwie cyfry po przecinku

    Jest to domyślna "rozdzielczość" dla funkcji Serial.print(). Jeżeli chcesz więcej liczb po przecinku, to należy podać ile ich ma być np.[syntax=c] Serial.println(times, 6);[/syntax][url=https://www.arduino.cc/...

    Arduino   17 Lis 2021 10:30 Odpowiedzi: 1    Wyświetleń: 423
  • [C] Jak zainicjalizowac funkcje pod konkretnym adresem?

    Tak się nie da niestety. Aby wołać funkcje kótre są w bootloaderze z alpikacji musisz mieć tablicę adresów tych funkcji w znanym sobie miejscu w pamięci (w tym że booloaderze). Np: [syntax=c] struct x; int func1(int, float); double func2(long long, double, float, struct x); /* * etc etc */ const struct { int (*func1)(int, float); double (*func2)(long...

    Mikrokontrolery   21 Wrz 2019 07:48 Odpowiedzi: 11    Wyświetleń: 669
  • [mega8] [C/AtmelStudio6] - Wyświetlanie zmiennych typu float lub double na LCD

    Oj tam! Jeśli chce na float, to niech robi. Ja nie neguję. :) Dałem sobie chwilkę i przejrzałem Twój kod. Nic dziwnego, że masz kaszanę, skoro używasz do wyświetlenia tekstu z RAM procedury czytającej teksty z Flash. :) W procedurze LCD_WRITE_TXT zmień linię[syntax=c]mark = pgm_read_byte(&text[turn++]);[/synta... = text[turn++];[/syntax]...

    Mikrokontrolery AVR   31 Paź 2012 00:33 Odpowiedzi: 5    Wyświetleń: 3681
  • sprintf nie wyświetla double/float na LCD Mega8 - jak to naprawić?

    Warto zainteresować się plikiem Makefile i jego budową, chociaż w większości przypadków ta wiedza się nie przydaje, ale jednak, jak widać po tym kodzie, trzeba czasem trochę pogrzebać. Cieszę się, że działa. Pozdrawiam

    Mikrokontrolery AVR   03 Sty 2012 22:04 Odpowiedzi: 11    Wyświetleń: 1963
  • Błąd LNK2019 przy podłączaniu FFTW w Visual Studio 2008

    Zapewne zapomniałeś dodać jednej z bibliotek do opcji linkera. Możesz dodać jedną, zależnie której używasz (float/double/ldouble), lub wszystkie razem: #pragma comment(lib, "libfftw3-3.lib") #pragma comment(lib, "libfftw3f-3.lib") #pragma comment(lib, "libfftw3l-3.lib")

    Programowanie   14 Kwi 2010 01:02 Odpowiedzi: 4    Wyświetleń: 2214
  • C++ - Jak zamienić ułamek zwykły na dziesiętny w klasie `ulamki`?

    zamień: [syntax=c]w = x.numerator/x.denominator;[/syntax] na: [syntax=c]w = (float)x.numerator/x.denominator;[/synta... i najlepiej float na double

    Programowanie   26 Cze 2013 20:23 Odpowiedzi: 6    Wyświetleń: 3825
  • [c++, WinApi] zmiana notacji naukowej na notację zwykłą

    char wartosc sprintf odpada dla tak skromnego bufora, tymbardziej ze float/double jest w formacie. Niech ipaliwo wyjdzie z ułamkiem, to buffer overflow będzie murowany. Polecam albo skuteczne zwiększenie rozmiaru zmiennej "wartosc" (tak z dobrym zapasem - 64, 128 bajtów), albo bezpieczną wersję sprintf: funkcję _snprintf _snprintf(wartosc, sizeof(wartosc),...

    Programowanie   14 Maj 2010 23:33 Odpowiedzi: 5    Wyświetleń: 1815
  • REKLAMA
  • Program w c++, parę błędów i prośba o instruktaż

    Ok, to zrobiłem. O ile dobrze rozumiem, zmienna double jest nie potrzebna, wystarcza float tylko pojawia się kolejne pytanie: Gdy chce zadeklarować zmienną pisząc pseudokodem - suma=cena_paczki+cena_towaru żeby w dalszej części programu nie wykonywać już zadania (cena_paczki+cena_towaru)/dolar tylko suma/dolar jak muszę ją zadeklarować? Wystarczy suma=cena_paczki+cena_towaru;...

    Programowanie Początkujący   13 Sty 2011 17:47 Odpowiedzi: 7    Wyświetleń: 1173
  • Porównywanie i odejmowanie liczb zmiennoprzecinkowych w PHP

    1.1 - 1.0 = 0.10000000000000009, czyli wynik odejmowania nie jest dokładnie równy 0.1. Przy porównywaniu liczb typu float czy double trzeba dopuścić jakiś margines błędu. [syntax=php]EPSILON = 0.0001 if (abs($x - $y - $z) < EPSILON) ...[/syntax] Zob.też "Comparing floats" w https://www.php.net/manual/en/language.t... i ew. https://pl.wikipedia.org/wiki/IEEE_754

    Programowanie Początkujący   26 Mar 2022 15:36 Odpowiedzi: 6    Wyświetleń: 360
  • STM32F4: Kompilator nie używa FPU w projekcie blink_led - jak to naprawić?

    Uwierz mi, że wszystko działa jak trzeba, tylko trzeba mieć świadomość różnic między float a double... Np. jak wezmę Twój przykład i zmienie double na float: volatile float f = 123.5434; Niby OK, ale... 123.5434 jest... liczbą typu double, więc faktycznie masz konwersje (ze względu na volatile). Jak dasz 123.5434 f (albo zrzutujesz na float), to już...

    Mikrokontrolery ARM   10 Lip 2013 21:50 Odpowiedzi: 6    Wyświetleń: 1290
  • Jak dodać wartość 10,5 do zmiennej Liczba_REAL w GX Works 3.0?

    Czy przypadkiem K to nie INT, E to FLOAT, L to DOUBLE? Nie jestem pewny, ale czy obsługa float nie zależy też od CPU? https://obrazki.elektroda.pl/2103278700_...

    Automatyka Przemysłowa   09 Sty 2020 23:33 Odpowiedzi: 6    Wyświetleń: 717
  • Atmega 8, C, WinAVR - optymalizacja kodu z float/double vs int

    Bez kodu ciezko cos powiedziec ale prawdopodobnie musisz sie pogodzic z takim wzrostem obietosci kodu, albo zoptymalizowac go tak by wyeliminwac takie liczby co prawie zawsze sie da....

    Mikrokontrolery AVR   07 Paź 2008 21:29 Odpowiedzi: 2    Wyświetleń: 1543
  • Jak wyświetlić liczby rzeczywiste z dokładnością do 3 miejsc na ATtiny2313?

    Niestety o ile dobrze kojaże, w C mamy do dyspozycji tylko dwa typy zmiennych dla liczb zmiennoprzecinkowych - wspomniany float oraz double (8 bajtów, 15 miejsc po przecinku), w razie w long double, ale to nie to czego szukasz. Tak więc prostszego od float typu nie znajdziesz. Natomiast istnieje kilka innych rozwiązań dla liczb zmiennoprzecinkowych,...

    Mikrokontrolery   08 Wrz 2008 22:16 Odpowiedzi: 4    Wyświetleń: 3396
  • [ATtiny26][avr-gcc] Wyswietlenie double na LCD - dtostrf()

    A BTW na AVR nie istnieje typ double - dla scislosci istnieje, ale jest to to samo co float. Nie wiem jak avr-libc potraktuje double - czy tu nie bedzie jakis spiec.

    Mikrokontrolery AVR   17 Gru 2009 20:14 Odpowiedzi: 9    Wyświetleń: 6384
  • Błąd konwersji liczb do float w algorytmie genetycznym C++, Visual Studio 2008

    [syntax=cpp]liczba = (ulamek/1000) + calkowita;[/syntax] ulamek/1000 - wynik będzie w int, a następnie będzie rzutowany na float, czyli stracisz część ułamkową. Wystarczy rzutować jedną z liczb na float, lub po prostu zapisać 1000 w postaci 1000F (F bo float). Jeśli wynik byłby double to wystarczyłoby 1000.0.

    Programowanie   02 Kwi 2012 12:22 Odpowiedzi: 2    Wyświetleń: 1935
  • LCD i Wypisywanie na nim zmiennych typu int i float.

    Z floatem jest troche więcej zabawy Owszem , ale jeśli to dotyczy kompilatora innego niż AVR-GCC.Po zmiennej typu bit poznaję , że przytoczona przez Ciebie funkcja dotyczy bardziej MCS-51 , a nie AVR , choć tych drugich oczywiście nie wyklucza. Wracając do meritum , czyli zamiany nieszczęsnego float na string , to gdyby tylko zajrzeć do pliku nagłówkowego...

    Mikrokontrolery   11 Kwi 2008 21:25 Odpowiedzi: 27    Wyświetleń: 4704
  • Wybór Float vs Integer w operacjach obliczeniowych - kiedy który?

    1. Wielu programistów uważa, że float - to liczba rzeczywista. No i bardzo się mylą, z czego wynika mnóstwo kłopotów. Niedouctwo. Co masz na myśli? Float <-> Double?

    Projektowanie i Tworzenie Po godzinach   06 Lut 2020 20:19 Odpowiedzi: 89    Wyświetleń: 4104
  • [atmega32][AVR GCC] zamiana float lub double na int

    Witam. Mam pytanie jak w tytule: Czy jest jakaś funkcja zamieniająca zmienną typu float lub double na zmienną typu int? Pozdrawiam. Generalnie , nie można zmienić typu zmiennej , do końca jej "istnienia". Poza tym , czy nie chodzi Ci czasem o przypisanie wartości ze zmiennej typu float,double , do zmiennej typu int :?: Poczytaj o rzutowaniu. Piotrek

    Mikrokontrolery AVR   16 Lip 2008 22:39 Odpowiedzi: 3    Wyświetleń: 7266
  • Wszystko o ARM (LPCxxxx) i programowaniu w asm i C.

    1. do [u]int{8,16,32}_t są specjalne znaki formatujące dla printf() - jak poszukasz to znajdziesz. 2. Do konwertowania liczb całkowitych na string prościej użyć innych funkcji, które tyle nie zajmują (itoa() itp.) Do float i double też są takie funkcje. 3. Kompilator nie czepia się, że chce inny typ zmiennej, tylko że funkcja zignoruje dodatkowe specyfikatory...

    Mikrokontrolery ARM   28 Lis 2009 17:35 Odpowiedzi: 141    Wyświetleń: 17212
  • [ATmega8] Jak poprawnie podłączyć i zaprogramować system kontroli temp. na ATmega8 i LM35?

    Bo tam masz 23 a nie 230 - w funkcji pomiar() juz dzielisz wynik przez 10. Chyba zamiast: temp1=(double)ADCW; chciales zrobic: temp1+=(double)ADCW; BTW, na AVR double=float, a w tym przypadku w ogole obliczen zmiennopozycyjnych nie potrzebujesz, ale jesli masz miejsce i czas na nie to czemu nie :)

    Mikrokontrolery AVR   01 Sty 2010 18:10 Odpowiedzi: 10    Wyświetleń: 6520
  • Od czego powinien zacząć początkujący programista

    Co to są cyfry znaczące w zmiennych rzeczywistych? Szukam przykładów zmiennych float, double float i long double. Nie rozumiem też dlaczego w zmiennych całkowitych istnieją INT i UNSIGNET INT jeśli ich zakres pokrywa LONG INT

    Programowanie Początkujący   10 Cze 2015 07:47 Odpowiedzi: 46    Wyświetleń: 4179
  • [STM32F4] Nieprawidłowo działająca funkcja atof()

    Opisywane zachowanie może być spowodowane zlinkowaniem z (alernatywnym) libc , która z powodów objętościowych nie ma pełnej obłsugi double/float (zresztą atof powinien zwrócić double, nie float). Sprawdź, czy twój kompilator/środowisko/biblioteki są prawidłowo skonfigurowane/użyte do pracy z float/double.

    Mikrokontrolery ARM   29 Maj 2013 07:36 Odpowiedzi: 14    Wyświetleń: 2136
  • Arduino Nano - błąd w dodawaniu w funkcji przerwania, gubi dane

    volatile nie jest gwarancją, że w/w dodawanie wykona się niepodzielnie, (mówimy 'atomowo'), zwłaszcza że operacja jest względnie długa. W ESP32 można użyć typu atomowego wprost np. atomic_ulong, ale nie ma takiego wsparcia dla float czy double m.in. dlatego, że operacje na float/double wykonywane są przez FPU.

    Arduino   31 Paź 2019 22:08 Odpowiedzi: 18    Wyświetleń: 531
  • [AVR-GCC] Problem z funkcjami obliczeniami matematycznymi

    Co znaczy "bardzo znacznie"? Podaj jakieś dane. Pamiętaj, że biblioteka standardowa na AVR implementuje tylko typ float, a double już nie. Standard mówi, że funkcje sin, cos, pow, atan2 i sqrt przyjmują i zwracają wartości typu double. Stąd na PC będziesz miał większą precyzję obliczeń. Spróbuj użyć funkcji z przyrostkiem f, np. sinf, cosf itp - te...

    Mikrokontrolery   01 Sie 2009 15:36 Odpowiedzi: 5    Wyświetleń: 2458
  • [C] Odczyt z pliku *.csv wcześniej zapisanych danych floatow

    Odnośnie tablic chodziło mi jedynie o sposób deklaracji. Wiadomo, że deklaracja być musi, ale podczas dodawania do tablicy nie masz mechanizmu kontroli, czy dane nie wyszły poza zakres tablicy. Polecam nad tym pomyśleć :) Nagłówek. double loadit (FILE **f, float (*t)[100], float (*sinn)[100], float (*zaszum)[100])...

    Programowanie   23 Paź 2010 15:14 Odpowiedzi: 8    Wyświetleń: 6762
  • DELPHI - Konwersja tablicy Byte z ASCII na Double do obliczeń

    Float:=StrToFloat(String(PChar));

    Programowanie   20 Sie 2009 08:39 Odpowiedzi: 5    Wyświetleń: 1411
  • Dziwne zaokrąglanie przy przejściu z long na float

    Zaokrąglenia w liczbach zmiennoprzecinkowych to normalna rzecz. Użyj double lub long double ze wszystkimi konsekwencjami używania takiej zmiennej ale raczej nie w AVR-GCC. Sprawdź przy użyciu sizeof, czy AVR-GCC, które masz faktycznie obsługuje double i long double bo może być tak, ze to jedno i to samo, jak kiedyś long i long long. Na ARM float reprezentowane...

    Arduino   08 Lip 2018 19:19 Odpowiedzi: 7    Wyświetleń: 717
  • [C++]Konwersja double/float do AnsiString z ustawioną liczbą cyfr znaczących

    Zgodnie z Gdzie dokładnie w tej dokumentacji to wyczytałeś? 64-bitowa liczba całkowita bez znaku ma 20 cyfr znaczących, więc nie wiem, jak chcesz ze zmiennoprzecinkowej wyciągnąć 40? W dokumentacji metody The precision parameter specifies the precision of the given value. It should be 7 or less for values of type float, 15 or less for values of type...

    Programowanie   12 Lis 2019 03:19 Odpowiedzi: 3    Wyświetleń: 471
  • Błąd odczytu temperatury na LCD z czujnika 18B20 i Atmega8 - znak zapytania

    Problemem jest używanie na siłę typu double, tam gdzie nie jest to potrzebne. Normalna wersja sprintf z AVRlibc jest okrojona i float/double nie wspiera. Aby to działało trzeba zlikować program z biblioteką lipprintf. Ale po co, skoro float jest niepotrzebny?

    Mikrokontrolery Początkujący   14 Maj 2013 19:56 Odpowiedzi: 7    Wyświetleń: 2922
  • Atmega 16 - C: Błąd kompilacji przy modulo z double i int, jak naprawić?

    Operand modulo (%) działa tylko z liczbami całkowitymi, dla zmiennych o typie float/double musisz użyć funkcji fmod. Co ma sens ze względu na zapis liczby. BTW, na AVR typ double jest równy typowi float. No i nie używaj typu float do liczenia czasu, w wielu przypadkach uzyskasz bezsensowne wyniki, co jest związane ze skończoną reprezentacją zapisu liczby.

    Mikrokontrolery AVR   07 Maj 2013 17:20 Odpowiedzi: 15    Wyświetleń: 2097
  • Jak wypełnić i wyświetlić pojemnik vector w C++ z użyciem szablonów?

    Treść jest beznadziejna zadania wiem o tym ale taką otrzymałem od profesora:D Czyli mam stworzyć jeden pojemnik Vector typu int,long,float,double?? "Zadeklarowanie funkcji operujących"czyli o co chodzi?? To głupie pytanie ale w ogóle nie miałem tego na zajęciach.

    Programowanie Początkujący   10 Sty 2013 16:06 Odpowiedzi: 6    Wyświetleń: 1434
  • Termometr DS18B20 na ATmega8 - brak odczytu temperatury na wyświetlaczu HD44780

    Zapewne nie zlinkowałeś programu z właściwą wersją printf - standardowa nie obsługuje float/double. Oprócz dodania biblioteki libptrintf trzeba też zdefiniować symbol linkera vsprintf. A najlepiej to całe double wywalić w diabły i przejść na int. Symbol F_CPU masz zdefiniowany?

    Mikrokontrolery   09 Sty 2011 23:11 Odpowiedzi: 4    Wyświetleń: 3311
  • Obliczenia w języku C, konwersja float na unsigned.

    Witam, Tak na oko 0*45 jest 0. Jako unsigned też powinno być 0. Spróbuj zamiast "20" dać "20.". Dodano po 27 20.0f. Bez f będzie double.

    Programowanie Początkujący   29 Lis 2020 15:19 Odpowiedzi: 2    Wyświetleń: 522
  • Jak wyświetlić temperaturę z miejscami po przecinku na Arduino Mega 2560 i FT800?

    Let me google it for you :) Wystarczy w google wpisać: "float to string C" aby otrzymać: double num = 123412341234.123456789; char output Arduino standardowo dołącza biblioteki wyswietlajace float, bo AVR Studio nie?

    Arduino   11 Paź 2017 12:55 Odpowiedzi: 20    Wyświetleń: 1347
  • Odtwarzacz multimedialny oparty na ARM

    Witam ponownie. Uporałem się z podwójnym buforowaniem, przez co obracający się sześcian wygląda przyjemnie, dopisałem też kilka efektów: Oto cieniowanie Gourauda ze światłem świecącym z przodu. Świetna robota. Do obliczeń 3D używałeś zmiennego przecinka (float/double w C) czy arytmetyki fixed point?

    DIY Konstrukcje   18 Gru 2008 21:54 Odpowiedzi: 62    Wyświetleń: 21180
  • avr atmega - Różne wyniki funkcji sin, cos, asin, acos w porównaniu z PC

    Pierwsza uwaga - jak widzę prowadzisz obliczenia na liczbach podwójnej precyzji - AVR-libc nie wspiera takich obliczeń, dostępny jest jedynie typ float. double jest równy float i nie zwiększa precyzji obliczeń. Więc pierwszy błąd wynika z zaokrąglenia liczby do około 7-8 cyfr znaczących. A dalej to proponuję odpalić ten kod w symulatorze i porównać...

    Mikrokontrolery AVR   01 Sty 2016 15:33 Odpowiedzi: 5    Wyświetleń: 1380
  • [STM32F4][C] Coś zawiesza ADC po pierwszej konwersji

    (at)grzegorzn - FPU w Cortex M jest 32bitowy, nie ma natywnych instrukcji na typie 64bitowym więc ich stosowanie na siłę uważam za nierozsądne. (at)_lazor_ nie wiem co to za pierdoły. Jaki "upscale" do 64bit? Przecież taka konwersja jest bez sensu, szczególnie, że domyślnie aktualnie do floating point używane są instrukcje SSE2 a nie x87. Niemniej jeśli...

    Mikrokontrolery ARM   22 Lut 2018 22:44 Odpowiedzi: 16    Wyświetleń: 1275
  • C# - Jak zapisać wartości float do SQLServer z DataGridView?

    Masz źle napisanego SQL. Insert into tabela.. Zauważ, że puszczasz zapytanie do bazy. Całe zapytanie jest stringiem, więc nie ma problemu żeby zainsertować do bazy coś, co było w we właściwości Text. Nie trzeba tego w żaden sposób konwertować. Co najwyżej musisz pamiętać o tym, że w liczbach zmiennoprzecinkowych w zapytaniu mają być kropki, a nie przecinki....

    Programowanie Początkujący   20 Mar 2014 22:49 Odpowiedzi: 7    Wyświetleń: 1905
  • [C++] Sprawdzenie ile liczba ma miejsc po przecinku?

    Inna możliwość, jeżeli potrzebujesz takiej precyzji to wszystkie zmienne zaangażowane w obliczenia muszą być tego typu, inaczej gdzieś może te znaczące cyfry zgubić. Też na to wpadłem :) I właśnie myślałem, że to przez to bo miałem liczoną potęgę typu float i później long double dzielone przez float ale też zrobiłem long double i niestety nic nie zmieniło....

    Programowanie Początkujący   07 Gru 2010 00:18 Odpowiedzi: 16    Wyświetleń: 10787
  • [C] Jak zaimplementować secans i eksponentę w C?

    to już moim zdaniem szczyt lenistwa :/ sec(x) = 1/cos(x) cosec(x)=1/sin(x) i nie ma czegoś takiego jak "ec" :) hehe i podpowiedzi: -cosinus liczy funkcja: double cos(double x); float cos(float x); //[C++ only] -sinus liczy: double sin(double x); float sin(float x); //[C++ only] -liczba do potęgi: (np: x kwadrat) double pow(double x, double y); float...

    Programowanie   05 Lut 2005 01:46 Odpowiedzi: 1    Wyświetleń: 3662
  • Jak zmniejszyć rozmiar kodu w C dla AVRStudio?

    Z tego co doczytałem int ma dwa bajty, long int, float, double cztery i jest to najwięcej co oferuje kompilator dla AVR (long long tez tylko 4 bajty). Właściwie dzisaj skończyłem program, przynajmniej część podstawową, wszystko działa. Została kosmetyka, upiększanie, wyszukiwanie co da się uprościć albo 'ufunkcyjnić':) Zostało mi 50% pamięci do wykorzystania.

    Mikrokontrolery AVR   13 Cze 2011 11:36 Odpowiedzi: 39    Wyświetleń: 3563
  • [AVR][C] - czy to wielki kłopot zamieniać double na text?

    mnozysz to co tam liczysz przez 100 i juz masz 2 miejsca po przecinku. albo (w specyficznych zastosowaniach) masz dwie zmienne - jedna od czesci calkowitej, druga od czesci ulamkowej. podaj konkretny przyklad problemu, to wtedy mozna wymyslic konkretne rozwiazanie go, bo przeciez zaden termometr cyfrowy nie zwraca ci wartosci typu double. na przyklad...

    Mikrokontrolery AVR   08 Cze 2008 22:03 Odpowiedzi: 13    Wyświetleń: 5217
  • [C++] Jak stworzyć piramidę z gwiazdek w C++ używając dwóch pętli while?

    Tak jak napisałem, teraz zrób konwersję tego str na float lub double (za pomocą atof lub strtod ).

    Programowanie Początkujący   11 Kwi 2012 21:53 Odpowiedzi: 18    Wyświetleń: 8785
  • Jak uzyskać wynik dzielenia int przez 100 z miejscami po przecinku?

    zamiast float uzywaj double - podwojna precyzja A co do mozliwego zapisu liczb, to float/double umozliwia zapisanie wiekszej/mniejszej liczby niz int, tyle tylko, ze przy tak duzych liczbach zacznie wprowadzac drobne bledy w obliczenia. "i chciałem żeby powieściła jak największe wartości." A jak sie przez moment zastanowisz, to twoj sposob myslenia...

    Programowanie   14 Lip 2005 13:40 Odpowiedzi: 4    Wyświetleń: 983
  • Atmega 32 [C] - wyświetlacz grafika funkcje trygonometryczne GCC

    A te funkcje cos/sin to jakieś wlasne implementacje? Przyjmują one kąt w radianach w postaci fixed point? Bo normalne przyjmują wartość typu float/double, poza tym wymagają załączenia libm (chyba, że używasz gcc>4.7.0). No i stosowanie typu 64 bitowego dla reprezentacji punktu na wyświetlaczu o rozdzielczości 128 pikseli to prawdziwy hardcore :)

    Mikrokontrolery AVR   23 Mar 2013 12:26 Odpowiedzi: 6    Wyświetleń: 1524
  • dev c++ program tablice, wczytywanie ciągów liczb.

    a) for 0 to tab.length-1 { wczytaj liczbe do tablicy intow } wypisz te komorki w ktorych jest liczba nieparzysta np. przy pomocy %2 b) stworz tablice float/double i wczytaj liczby jak wyzej, nastepnie wypisz liczby jako podniesione do kwadratu (do potegowania masz wbudowana funkcje)

    Programowanie   19 Lut 2011 14:16 Odpowiedzi: 8    Wyświetleń: 11476
  • IAR -[C] pytanie dotyczące długości zmiennych w C

    Język C definiuje tylko minimalne wymagania dla zmiennych i ich minimalne długości. To, że na jednym CPU int będzie miał 16 bitów, nie znaczy, że na innym nie będzie miał 32 a nawet 64 bitów. Podobnie jest z float i double, one muszą być co najmniej 4 bajtowe (wykładnik + mantysa), ale to nie znaczy, że nie mogą być większe, co zwiększy precyzję. Także...

    Mikrokontrolery AVR   17 Wrz 2012 11:15 Odpowiedzi: 10    Wyświetleń: 1638
  • Konwersja programu z C++ na C - błędy w kodzie i poprawki

    unsigned long r = sqrt(p); Objaśnij może jak ma działać ten Twój algorytm. Na pierwszy rzut oka -> sqrt() zwraca Ci wartość zmiennoprzecinkową (float/double), a Ty przypisujesz to do typu całkowitego (long), więc możesz mieć błąd, chyba że to zaokrąglenie algorytm zakłada?

    Programowanie Początkujący   14 Sty 2011 09:30 Odpowiedzi: 7    Wyświetleń: 860
  • Jak mnożyć wartość z ADC przez 0.95 używając zmiennych DOUBLE?

    Pytanie jakiej precyzji oczekujesz i czy jest sens korzystać z części ułamkowej skoro precyzja samego przetwornika i tak nie pozwala ufać tej części wyniku. Pozwala pozwala ufać i spokojnie można to wykorzystywać bez żadnych zmiennych typu float/double. Absolutnie bez takich zmiennych. Wszystko w oparciu o zmienne typu word/long itp .... a część ułamkową...

    Mikrokontrolery AVR   14 Lis 2011 20:21 Odpowiedzi: 14    Wyświetleń: 1517
  • Przykład architektury systemu wbudowanego programowanego w C++

    szybka transformana fouriera sygnału dżwiękowego w czasie rzeczywistym Nie rób fft przypadkiem na floatach a fixed point. pamiętaj że 990.0 to nie jest float tylko double, float to 990.0f Wirtualne metody to jedna z tych rzeczy w cpp, które powodują że kod jest wolniejszy niż ten napisany w C :P Jeśli ich naprawdę nie potrzebujesz to nie ma co ich...

    Mikrokontrolery   17 Lut 2021 08:29 Odpowiedzi: 30    Wyświetleń: 1380
  • [AVR] [AVR][C] Przeliczanie wartości z ADC dla czujnika PT100 - kalibracja i wzór

    Ok zgadzam się, ale jeśli zadeklaruje zmienne jako float albo double czyli zmiennoprzecinkowe wówczas na wyświetlaczu nic się nie pojawia...

    Mikrokontrolery AVR   15 Wrz 2009 20:24 Odpowiedzi: 24    Wyświetleń: 3986
  • Język C - Program kalkulator - Proszę o poprawienie błędów

    To dlatego, że liczby reprezentowane są na skończonej liczbie bitów i w końcu "rozbijamy" się o te pojedyncze bity. Typ "float" to 32 bity zmiennoprzecinkowe, zmień na "double" a się poprawi. Radzę poszerzyć swoją wiedzę na temat typów zmiennoprzecinkowych a wszystko stanie się jasne.

    Programowanie Początkujący   16 Lis 2013 17:04 Odpowiedzi: 2    Wyświetleń: 2097
  • C++ - Jak sprawdzić, czy liczba jest całkowita przy obliczaniu silni?

    O ile pamiętam, cin czyta do pierwszego znaku nadającego się do potraktowania jako część liczby całkowitej, gdy piszesz "int n << cin". Oznacza to, że po podaniu "1.5" cin zużyje "1", a ".5" pozostanie w buforze. Gdybyś próbował, bez wyczyszczenia bufora, odczytać kolejną liczbę całkowitą, otrzymałbyś zero, bo konwersja próbowałaby zacząć się...

    Programowanie Początkujący   21 Wrz 2016 18:26 Odpowiedzi: 8    Wyświetleń: 1857
  • [C++] Debugowanie błędu is not a valid floating point w C++ Builder 6

    Co do dziwnych wartości to one się pojawiają przy zmiennych typu float ale przy double jest już lepiej. Chyba funkcja FloatToStr może przyjąć jako parametr zmienne z grupy extended, gdzie float się nie zalicza tak samo jak double ;) A jeśli chodzi o format liczby to można zrobić wstępną filtracje podczas wprowadzania znaków, przejmująć np zdarzenie...

    Programowanie   07 Sie 2004 14:17 Odpowiedzi: 7    Wyświetleń: 5205
  • C++ - Algorytm nie przyjmuje zmiennych i błędnie liczy wyniki

    Twój kod działa poprawnie dla odpowiednio małych liczb. jak skompilujesz i uruchomisz: [syntax=cpp]#include <limits> #include <iostream> int main(){ int minimalnyInt = std::numeric_limits<int>::min(); int maksymalnyInt = std::numeric_limits<int>::max(); float minimalnyFloat = std::numeric_limits<float>::min(); float maksymalnyFloat...

    Programowanie   07 Lis 2013 19:39 Odpowiedzi: 7    Wyświetleń: 1353
  • [Atmega128][c++] Wysyłanie zmiennej double przez USART

    1. zmienna typu float/double zajmuje w pamięci odpowiednio 2 i 4 bajty w pamięci. Twój tok rozumowania jest błędny już na etapie założeń... W avr-libc którego używasz nie ma w ogóle typu double, a zmienna float nigdy i nigdzie nie zajmuje 2 bajtów. Dalej idąc, wysyłając "po bajcie" trafisz na taki problem, że program który to będzie odbierał niekoniecznie...

    Mikrokontrolery AVR   30 Cze 2010 20:03 Odpowiedzi: 9    Wyświetleń: 4678
  • [Atmega16] [C] Wyświetlanie liczb zmiennoprzecinkowych na LCD

    Witam, Kolega tmf ma całkowitą racje, na AVR unikamy operacji float jak ognia. Nie dość że koszmarnie wolne to jeszcze zjadają sporo flash. Lepiej zrobić kilka operacji mnożenia i dzielenia niż jedną na typie float. Poza tym AVR GCC nie obsługuje liczb typu double, traktuje ją tak samo jak float (tyle samo bajtów w pamięci zajmuje double co float) mimo...

    Mikrokontrolery AVR   16 Maj 2011 08:45 Odpowiedzi: 12    Wyświetleń: 4373
  • [C] Jak odczytać zmienną typu double z EEPROM w AVR Studio za pomocą makra?

    Mam pytanie jak ( czy w ogóle się da ) odczytać za pomocą jakiegoś makra, zmienną typu float ( double ). Rozumiem że można w pewien sposób zbudować swoją własną funkcję z makr "eeprom_read_word" . Ale jak by było jakieś makro do tego, to by było super. Dodam że udaje się wprost zadeklarować taką zmienną : double EEMEM przelicznik = 0.6435; Zmieniłem...

    Mikrokontrolery AVR   10 Lip 2008 15:26 Odpowiedzi: 2    Wyświetleń: 1130
  • Grafika wektorowa 3D (software) na mikrokontrolerze

    Nie bo chciałem zrezygnować z liczb zmiennoprzecinkowych bo sam7s nie mają jednostki fpu.Gdy bym miał pod ręką jakąś ATMege to z chęcią bym też zobaczył jak na niej te algorytmy się spisują;) Przesadzasz trochę. Liczby stałoprzecinkowe jeszcze bardziej pokazywałyby ten problem o którym piszesz. Stały przecinek ma stałe "ziarno" i tam gubiłbyś stałą...

    Mikrokontrolery   20 Sie 2009 08:54 Odpowiedzi: 8    Wyświetleń: 1443
  • [LPC-2138] [LPC-2138][CrossWorks] Jak wydobyć liczby z formatu UART1 za pomocą wskaźników?

    pierwszy znak jaki dostajesz z UARTa to '$', poniewaz nie ma warunku na ten konkretny znak to wywoluje sie warunek default. poniewaz jest to pierwszy znak to wskaznik ma wartosc 0. zapisujesz ten znak pod adres zero. operacja ta konczy sie natychmiastowym krytycznym wyjatkiem jadra, poniewaz zapis flasha (adres 0) przez kod programu nie jest mozliwy....

    Mikrokontrolery ARM   29 Lis 2008 17:26 Odpowiedzi: 2    Wyświetleń: 1406
  • Atmega32/16 - zliczanie impulsów i ustawienie wyjścia po warunku w kodzie C

    Problem pochodzi od niemożliwości dokładnego zapisu ułamków nie będących potęgami liczby 2 (właściwie 1/2^x) np. dokładnie daje się zapisać liczbę 0.5; 0.25; 0.125 ... (oraz ich sumę). Problem może być rozwiązany przez dodanie pomocniczej (kosztem zwiększenia czasu wykonywania kodu) zmiennej o typie float lub double (lub const float/double), do której...

    Mikrokontrolery AVR   14 Sie 2010 12:48 Odpowiedzi: 3    Wyświetleń: 1388
  • [C] Konwersja uint32_t na float w CodeVisionAVR - va_arg zwraca błędną wartość

    1. CVAVR nie posiada typu double, jedynie float 32 bit ;-). Zamiana z float na double nic nie daje. 2. Zmienne innych typów przechodzą przez va_arg bez problemu - jedynie z float są problemy. EDIT: Udało się dokonać konwersji przez unię: [syntax=c]typedef union { float fl; uint32_t u32; } test_t; test_t test; test.u32 = va_arg(args, uint32_t); ftoa(test.fl,...

    Programowanie   09 Lis 2015 00:12 Odpowiedzi: 4    Wyświetleń: 600
  • Wyświetlenie wartości napięcia na wyświetlaczu TFT LCD

    tą metodę i tak mi zostało. float i double sprzyja rozrastaniu się bajtów w kodzie Nie pojmuję twojego rozumowania. Przecież float to tylko 4 bytes w SRAM , a uproszczony kod programu zaoszczędza o wiele więcej pamięci FLASH. Co do przydzielania wielkości tego bufora Bierzesz tyle ile potrzebujesz. Wartość określająca rozmiar tablicy array musi byc...

    Mikrokontrolery AVR   14 Sty 2022 07:24 Odpowiedzi: 20    Wyświetleń: 1059
  • C/AVR - Optymalizacja pamięci: zmienne, switch vs warunki, kod na sterownik basenu

    Na LCD możesz tak wyświetlić, nie musisz używać float/double tak samo do obliczeń, zamień na jedną liczbę całkowitą. Itoa w implementacji to lekkie funkcje, dalej tylko przesłać. [syntax=c] short pomiar = 0xFE6F; int temperature = (pomiar >> 4) * 10000; if ( pomiar & 0x08 ) temperature += 5000; if ( pomiar & 0x04 ) temperature += 2500; if ( pomiar &...

    Mikrokontrolery AVR   18 Lis 2012 21:34 Odpowiedzi: 23    Wyświetleń: 2901
  • Jak stworzyć dynamiczną tablicę dwuwymiarową (macierz) w C++?

    Przykład na dynamiczne utworzenie i korzystanie z 2D tablicy float: { double **array; const int xsize=4; const int ysize = 12; array= new double *[ysize]; int i,j; for (j=0;j<ysize;j++){ array[j]=new double [xsize]; for (i=0;i<xsize;i++) array[j][i] = 10*j+i; } for (j=0;j<ysize;j++) { // double *x = array[j]; for (i=0;i<xsize;i++) { printf("...

    Programowanie   10 Lut 2006 11:58 Odpowiedzi: 3    Wyświetleń: 21332
  • Jaki typ zmiennej dla wartości `a=2.9e005L` w języku C?

    Takiego, w jakim została zadeklarowana. Np. float, int . Poszukaj fragmentu, gdzie jest jej deklaracja np: int a; float a; double a; (jest to liczba w notacji naukowej 2.9 * 10^5, czyli 290000)

    Programowanie   14 Kwi 2005 14:23 Odpowiedzi: 2    Wyświetleń: 1020
  • [STM32F4] Dogrywanie pojedyńczej funkcji do działajacego ukladu

    No to w sumie temat jest prosty. Poprzednio zrozumiałem że tę funkcję chcesz ładować z zewnątrz w trakcie pracy procesora (np. z PC albo innego układu podłaczonego jakimś interfejsem komunikacyjnym) robisz sobie wskaznik na funkcję. Jak chcesz zmienic co jest wołane zmieniasz po prostu ten wskaźnik: [syntax=c]float Oblicz(float v1,float v2){ return...

    Mikrokontrolery ARM   15 Kwi 2017 13:51 Odpowiedzi: 15    Wyświetleń: 1218
  • Jak zwiększyć częstotliwość pomiarów FFT do 3 razy na sekundę?

    http://www.fftw.org/ - na tej stronie znajdziesz bibliotekę dopasowującą się do procesora. Biblioteka ma zestaw funkcji (a raczej są to 3 osobne bibtioteki) dla danych typu float, double i long double. Mając procesor z zestawem instrukcji SSE1, wybierz zestaw float (libfftw3f-3.dll) - w sumie wersja float jest najszybsza, bo obliczenia wykonują się...

    DSP i Transmisja   03 Lip 2010 22:55 Odpowiedzi: 1    Wyświetleń: 1311
  • Jednostka FPU w mikrokontrolerach ESP8266 - wpływ na wydajność aplikacji

    Jak to jest z FPU w mikrokontrolerach ESP8266? W ESP8266 nie ma FPU. Jest w ESP32 i dotyczy tylko operacji na typach float (a już nie double). Operacje z wykorzystaniem FPU wstrzymują niestety przerwania i nie należy używać zmiennych float w przerwaniach.

    ESP8266 i ESP32   15 Mar 2022 12:57 Odpowiedzi: 2    Wyświetleń: 717
  • [atmega8,C] DS18B20 na atmega8 - nagły spadek temperatury po odczycie, co robić?

    To, że makro (bo to nie jest funkcja), jako argument ma float nie ma znaczenia, przy podawaniu opóźnienia jako stałej. Nie rozumiem co masz tu na myśli. Tam nie ma żadnego float. Jest double. Mówię o funkcjach _delay_ms i _delay_us.

    Mikrokontrolery AVR   18 Sie 2010 07:58 Odpowiedzi: 17    Wyświetleń: 3744
  • Jak zdefiniować zmienną float w EEPROM Atmega8 przy wgrywaniu programu?

    Witam serdecznie! Chciałbym się dowiedzieć czy istnieje jakaś możliwość odgórnego zdefiniowania zmiennej typu float/double w pamięci EEPROM przy jednoczesnym nadaniu jej wartości. Do tej pory robiłem to w ten sposób, ze tworzyłem zmienną w eepromie i za pomocą te funkcji: void eeprom_write_block(const void *src, void*dst, size_t n) zapisywałem...

    Mikrokontrolery AVR   15 Wrz 2010 21:01 Odpowiedzi: 16    Wyświetleń: 3255
  • C++Builder 6 – jak napisać graficzny kalkulator wzorowany na kalkulatorze Windows?

    wszystko super pieknie dziala :) dzieki no ale jest kolejny problem jak dodaje liczby np.: 2,4 + 2,8 to wypisuje mi wynik 5,19999980926514 jak to zrobic aby to zaokraglilo ?? zmienne przecinkowe mam jako float bo double i char mi nie przyjmuje ;/

    Programowanie   27 Mar 2006 21:24 Odpowiedzi: 4    Wyświetleń: 2975
  • Jak narysować skalę i wskazówkę miernika analogowego na wyświetlaczu?

    Znalazłem opis algorytmu. Teraz dopiero zrozumiałem, że punkty stawiane są symetrycznie względem osi nachylonej pod kątem 45 stopni. Mogę więc stwierdzić, że to proste. Zmieniłem double na float bo nie wiem czy FPU w STM32F373 obsługuje double.

    Mikrokontrolery   19 Gru 2019 19:06 Odpowiedzi: 9    Wyświetleń: 1263
  • Jak numerycznie zbadać ciągłość funkcji w C++? Analiza granic lewo- i prawostronnych

    Jeśli Cię to satysfakcjonuje, to możesz użyć: #include <float.h> // double f(double x); lim_minus = f(x * (1.0 - DBL_EPSILON)); lim_plus = f(x * (1.0 + DBL_EPSILON)); DBL_EPSILON jest najmniejszą reprezentowalną liczbą typu double dla której zachodzi 1.0+DBL_EPSILON != 1.0 Dla innych typów jest to FLT_EPSILON...

    Programowanie   12 Gru 2008 10:10 Odpowiedzi: 11    Wyświetleń: 5325
  • Arduino: Jak napisać program do migania diody 10 razy i zakończenia działania?

    zmieniłem wynik z milisekund na sekundy poprzez elapsedTIme = (millis() - startTime)/1000, jednakże "elapsedTime" nie wyświetla wyniku po przecinku a zaokrągla liczby. Jak sprawić by zmienna elapsedTIme wyświetlała liczby niecałkowite? Wstępna ocena dostępnych informacji Analiza podanych przez użytkownika danych: - Użytkownik zmienił wynik pomiaru...

    Arduino   26 Lis 2024 23:52 Odpowiedzi: 37    Wyświetleń: 930
  • Java konwersja float to String gdzie jest błąd??? (J2ME)

    Już wszystko wiem. Midlety w wersji CLDC 1.0 nie posiadaja wbudowanej klasy Float i Double i nie jest możliwe operowanie na tych zmiennych. Aby temu zaradzić trzeba użyć pakietu henson.midp.Float Klasa ta jest darmowa i można ją pobrać ze strony http://henson.newmail.ru/j2me/Float.htm Mam nadzieje, że w przyszłości komuś się to przyda, gdyż CLDC 1.0...

    Programowanie   12 Gru 2005 14:00 Odpowiedzi: 2    Wyświetleń: 6036
  • Microsoft Visual C++ 2010 - Błąd przy użyciu modułu math na Windows 7

    sqrt wymaga argumentu typu double float albo long double , kompilator nie wie do której z tych funkcji rzutować wejściowy int , więc pisze : 'sqrt' : ambiguous call to overloaded function gdyby była tylko jedna wersja funkcji sqrt, wywołanie [syntax=c] sqrt(2);[/syntax] było by poprawne, bo nie było by niejednoznaczności.

    Programowanie Początkujący   28 Maj 2014 17:52 Odpowiedzi: 6    Wyświetleń: 1161
  • [STM32F4] [STM32F4][Keil] - Użycie FPU i funkcji __aeabi_f2d w obliczeniach float

    Jasne ! sqrtf już nie konwertuje na double. Ale jeszcze dopytam z ciekawości, skoro FPU ma wsparcie dla float to jak jest wykonywany sqrt dla double ?

    Mikrokontrolery ARM   20 Mar 2014 18:32 Odpowiedzi: 6    Wyświetleń: 1671
  • STM32 Discovery F0 - Czy warto zaczynać naukę ARM bez doświadczenia z AVR?

    Freddie prośba o wytlumaczenie. Mam szybki MCU. Starcza mi mocy więc wrzucam float, double i co tam jeszcze bez namysłu. Czy potrzebne, czy nie i wręcz przeszkadza. I to nazywasz duchem czasu. A zwykły delay nazywasz złym nawykiem. A przecież on jest często też najprostszym rozwiązaniem problemu. Jeśli więc starcza mi mocy ... Dlaczego stosujesz inną...

    Mikrokontrolery Początkujący   09 Kwi 2013 20:11 Odpowiedzi: 58    Wyświetleń: 9681
  • [STM32f103][C] - Zmienna double przekazywana do funkcji - błędy kompilacji

    Rzeczywiście, problem dotyczy konsolidacji. Mimo tego nadal nie jestem w stanie stworzyć pliku wynikowego, który mógłbym wgrać do uC. Pytanie nadal aktualne: Dlaczego przekazując do funkcji zmienne float albo double nie jestem w stanie stworzyć programu wykonywalnego? EDITED: Spróbowałem linaro i na nim poszło bez problemu.

    Mikrokontrolery ARM   14 Kwi 2013 18:36 Odpowiedzi: 3    Wyświetleń: 1887
  • [STM32] [STM32][True Studio] Błąd `__errno` przy użyciu sqrt() i pow() w C

    Trochę nie składnie to napisałem, ale przy pow() mam ten sam błąd. Jakby ktoś chciał to mała funkcja na pierwiastek: float moje_sqrt(float a) { double x=1; int i=20; while(i--) { x=(x+a/x)/2; } return (float)x; } Ale nie podoba mi się ten błąd :/

    Mikrokontrolery ARM   20 Wrz 2012 10:34 Odpowiedzi: 9    Wyświetleń: 3071
  • [C]Jak zamienic ujemną int na dodatnią

    wynik chciałem mieć z dziesiątymi częściami ale gdy zadeklaruje zmienna pomiar jako float albo double to pożera mi zbyt dużo miejsca w kodzie może jest na to jakieś inne rozwiązanie? To trzymaj w int dziesiąte części stopni zamiast jednostkowych i konwertuj tylko przed wyświetleniem.

    Programowanie Początkujący   25 Lut 2009 01:10 Odpowiedzi: 9    Wyświetleń: 15297
  • Eclipse Indigo [c] - Jak uzyskać wynik dzielenia zmiennoprzecinkowego?

    Witam Orientujecie się czy w Eclipse trzeba włączać działania na liczbach zmiennoprzecinkowych zadeklarowanych jako float lub double, jeśli tak to jak? Napisałem prostą funkcję #include <math.h> double wynik; wynik = 25/16; i niestety zwraca mi tylko wynik = 1 :( zamiast 1,5625 Pomóżcie

    Mikrokontrolery AVR   29 Lip 2013 20:48 Odpowiedzi: 4    Wyświetleń: 1698
  • [stm32] Jak optymalnie przekonwertować float na char[] do wyświetlenia liczby?

    W CodeSourcery (a raczej w newlibie) nie ma dtostr() tak samo jak nie ma np. itoa(). Są inne funkcje konwertujące double/float to stringa, ale są równie rozbudowane jak sprintf() (syscalls). 4\/3!!

    Mikrokontrolery ARM   16 Sty 2012 22:31 Odpowiedzi: 15    Wyświetleń: 6969
  • [F0 SPI] Zawiesza się po 8 bitach, nie generuje kolejnych cykli zegara

    Brakuje tu "volatile". Zauważ proszę, że w tym przypadku właśnie rozmiar bajtowy jest istotny, aby mieć "zgodność" z bajtowym odczytem rejestru danych SPI. Jest to część zestawu funkcji, które napisałem dość dawno temu. Dzisiaj używam DMA + kolejki zadań dla interfejsów SPI, UART lub I2C, więc nie mam potrzeby stosowania ręcznej kontroli transferu....

    Mikrokontrolery ARM   08 Kwi 2018 11:05 Odpowiedzi: 20    Wyświetleń: 1086
  • sprintf w Keil dla STM32F4 - zaokrąglanie float i znak minus (-0.00)

    (at)tobiasz54 Rozwiązanie jest do kitu, bo typy float i double nie są w stanie reprezentować wszystkich elementów zbioru liczb rzeczywistych. Efekt będzie taki, że po ostatniej linii (tam gdzie jest return) w wyniku dzielenia potencjalnie może powstać liczba, która nie ma bezpośrednio reprezentacji w typie i np. zamiast 10.000 będziesz miał 10.00000001,...

    Mikrokontrolery   21 Lip 2015 07:55 Odpowiedzi: 9    Wyświetleń: 1389
  • C++ jak wypisać float jeśli jest całkowita bez zer

    Zrobiło się 20 bo liczba 131232323.7 zapisana jest jako 1.3123232e+008 (= 131232320.0) Polecam podwójną dokładność - double. [syntax=cpp]double a = 131232325465465.755; if( a == double( (long long)a) ) //sprawdzamy czy całkowita printf("%.0f",a); else printf("%.1f",a); [/syntax]

    Programowanie   09 Lip 2011 07:04 Odpowiedzi: 8    Wyświetleń: 3327
  • DS1820 - skok do ujemnych temperatur powyżej 63°C, co robię źle?

    tzn nie jest to równe 63 ale ok -63.563. i jak bardziej grzeje tym temp maleje i jest ujemna Dodano po 3 ok ..już wszystko jasne...niepotrzebna konwersja z float do double dla dodatnich liczb....

    Mikrokontrolery   21 Cze 2007 23:57 Odpowiedzi: 2    Wyświetleń: 1026
  • Jak zwiększyć precyzję konwersji %lf w AVR/WinAVR?

    double a; sscanf("1234.56789123", "%lf", &a); 1. W avr-libc double=float wiec nie ma sensu stosowania typu double. 2. Spróbuj funkcji atof(). Ale wynik może być ten sam warto poszukać w dokumentacji biblioteki czy przypadkiem nie jest to ograniczone.

    Mikrokontrolery AVR   07 Lis 2009 23:16 Odpowiedzi: 12    Wyświetleń: 1832
  • Aktualizacja kompilatora CodeSourcery dla ARM - co nowego?

    Raczej nic to nie zmieni. W funkcjach variadic float jest traktowany jak double (zajmuje 8 bajtów lub 2 rejestry), stąd problem. Kompilator dba o stos podczas pracy programu, ale to co dostaje na wejściu musi być wyrównane do 8-miu bajtów. Jeśli chcesz znaleźć źródło problemów, to olej na chwilę FreeRTOSa i po prostu w jakimś programiku zwykłym przetestuj...

    Mikrokontrolery ARM   24 Lis 2010 22:07 Odpowiedzi: 27    Wyświetleń: 2969
  • [WINARM]Długość poszczególnych typów zmiennych dla AT91SAM7S

    * The values of the columns Size and Range depend on the system the program is compiled for. The values shown above are those found on most 32-bit systems. But for other systems, the general specification is that int has the natural size suggested by the system architecture (one "word") and the four integer types char, short, int and long must each...

    Mikrokontrolery ARM   25 Lut 2009 07:02 Odpowiedzi: 6    Wyświetleń: 2561
  • Jak wyznaczyć środek symetrii wielokąta w Pythonie?

    Pierwsze, co można stwierdzić od razu: wielokąty o nieparzystej liczbie wierzchołków NIE MAJĄ środka symetrii. Nigdy. :-) Dodano po 6 A jak sprawdzić dla parzystej ilości? Hmm... Przyszło mi do głowy coś takiego (załóżmy że mamy wielobok o N wierzchołkach, N parzyste): - wybieramy dowolny wierzchołek i oznaczamy do jako pierwszy - ustawiamy wierzchołki...

    Programowanie   09 Wrz 2010 12:01 Odpowiedzi: 4    Wyświetleń: 3567
  • [ATMega32] [ATMega32][C] - Jak zapisać czas w mikrosekundach bez przepełnienia zmiennej?

    Na problem z symulatorem bym nie liczył. Co do obliczeń, to można je jeszcze kilkakrotnie skrócić korzystając z typów stałopozycyjnych. BTW, implementacja gcc na AVR zakłada, że double=float.

    Mikrokontrolery AVR   15 Lis 2012 20:52 Odpowiedzi: 17    Wyświetleń: 2634