Skąd masz aź taki zakres liczb? Najpierw wyświetl część całkowitą, potem kropkę a potem resztę (odejmij od liczby jej część całkowitą) pomnożoną przez 10mln (to już też jako liczbę całkowitą).
poradzilem sobie, niezla kombinacja, ale dziala. Zapisuje zmienna float do pliku, pozniej odczytuje po bajcie. A nie próbowałeś z unią? union { float czas = 1.44f; unsigned char wartosc[4]; } moja_unia; Powinno się też dać tak: float czas = 1.44f; for (i = 0; i < 4; i++) printf("To jest bajt %d: %u\n",...
Dołącz biblioteki do liczb zmienna przeciekowych;) Float coś tam w opcjach projektu chyba;) Nie mam teraz WinAVR wiec ci nie powiem gdzie dokładnie jak zainstaluje to dam edita - chyba ze znajdziesz
Użyj instrukcji warunkowej if. [syntax=c] float zmienna = scale.get_units() // zmienna pomocnicza if (zmienna > 0 && zmienna <2) digitalWrite(LEDpin, HIGH); // jeżeli wartość jest większa od 0, a mniejsza od 2, wysteruj LEDpin na stan wysoki [/syntax] itd
Program może wyglądać tak: [syntax=java] import java.io.*; public class Kalkulator{ public static void main(String[] args){ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); System.out.println("Podaj wartość"); String str_a = "", str_b = ""; try { System.out.print("a = "); str_a = br.readLine(); System.out.print("b = "); str_b...
Tablicę warto stosować w przypadku gdy sygnał pomiarowy reprezentuje funkcja, która zawiera punkt przegięcia. Dla funkcji wypukłej (wklęsłej) łatwiej będzie zastosować aproksymację wielomianem. Jak znajdę chwilę czasu to policzę to dla Twojego czujnika i podrzucę na forum. Być może uda się to zrobić w ograniczonym przedziale jaki podałeś. http://obrazki.elektroda.pl/4094572000_1...
Użyj liczb stałoprzecinkowych. Użyj zmiennych całkowitych i wykonuj operacje na wartościach 100 razy wyższych niż rzeczywiste. Przy wyświetlaniu po prostu wstaw przecinek w odpowiednie miejsce.
temat wałkowany już kilka krotnie. funkcje delay mają argument typu float jeśli podajesz zmienna jako argument do dodajesz również operacje zmiennoprzecinkowe na tej funkcji które .... dają efekt jaki uzyskałeś
Zmienna temp powinna być typu float a nie int. Tak z ciekawości to co to za kompilator, że pozwala na deklaracje zmiennych w środku funkcji? GCC chyba na to nie pozwala (CVAVR tym bardziej).
(...) 0/1023)*VoltageMsmt; Vcalc = Vcalc*2.995; lcd.setCursor(0,0); lcd.print("V1="); lcd.print(Vcalc); lcd.setCursor(8,0); lcd.print("V2="); lcd.print(Vcalc); lcd.setCursor(0,1); lcd.print("V3="); lcd.print(Vcalc); lcd.setCursor(8,1); lcd.print("V4="); lcd.print(Vcalc); } (at)ElektrodaBot Wstępna ocena dostępnych informacji Pytanie dotyczy kodu na...
ODp2: Zeby wyswietlic folat na LCD musisz uzyc funkcji printf lub dtostrf ( polecam ta druga bo zajmuje znacznie mniej pamieci ) . Itoa i ltoa konwertuja tylko liczby staloprzecinkowe. Funkci dtostrf szukaj w stdlib.h w katalogu WinAVR, jest tam opisana. ODP1: Jak masz zadeklarowana zmienna p_gora_1?? Jesli nie float to zadeklaruj ja jako float, albo...
Najprościej: 1. mnożysz float *10, powstaje np zmienna "liczba"; 2. następnie "liczba" dzielisz przez 10 - masz zmienną "całe"; 3. na "liczba" wykonujesz dzielenie modulo 10 i masz ulamek. W przypadku całkowitych można też od razu rzutować na int, tak jak pisał kolega wyżej. Poskładać to do kupy z kropka pomiędzy za pomocą itoa() i już.
Witam! Wiersz z if: Przede wszystkim, zmienna x jest zmienną typu float (zmiennoprzecinkowa) a znaki reprezentowane są przez liczby typu int, zatem x powinno być zadeklarowane jako int. Pamiętaj, że przy operacjach arytmetycznych, typ char rozszerzony jest "z urzędu" do typu int a po ich wykonaniu przykracany do typu char! Dalej: w tym samym wierszu...
float li1, li2; string liczby[10]; ... li1 = strtod(liczby[i].c_str(&... NULL); Sprawdzał kolega [URL=http://www.google.pl/search?q=c%2B%... ??? Wyników tyle, że naprawde jest w czym przebierać.
Zmienna rad nie przyjmuje wartości ułamkowych, bo jest zmienną całkowitą. W efekcie przyjmuje wartości od 0 do 6, co tłumaczy twoje 7 kroków. Zmień ją na float i będzie lepiej.
Skrypt w ogóle nie zadziała. Powód taki, że najpierw czytasz zawartość np. flow.get("tempMax"), a jeśli takiej nie ma to zmienna przypiera postać undefined. Po drugie by działały poprawnie operatory porównania to obie strony muszą być liczbami i to typu float (ujemne dane) [syntax=javascript]var t = parseFloat((msg.payload*1).toFixed (1)); var Tmax...
unsigned int *ple=(unsigned int*)&ulamek; wszystko jest ok, bo to mówi mniej więcej tyle, co "postaw wskaźnik na unsigned int na adresie zmiennej ulamek". Jeśli tylko zadeklarowałeś 'ple' nie definiując go, to musisz zmienić wskaźnik (czyli samo ple), a nie to co pod nim jest (czyli *ple), i ten wskaźnik postawić na adresie zmiennej ułamek (czyli &ulamek)....
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;...
Taki zapis: jakiegoś działania zostanie rzutowany (przekonwertowany) w tym przykładzie na unsigned int i dopiero przypisany do zmiennej y . To jakiego typu jest zmienna y - zależy tylko od Ciebie, ale ponieważ chciałeś mieć tylko część całkowitą stąd najlepiej gdy y będzie unsigned int.
ThreadProc jest błędnie zadeklarowana. Poprawnie jest DWORD WINAPI ThreadProc(LPVOID theArg) <- bez * !!! Wtedy rzutowanie na PLTHREAD_START_ROUTINE w wywołaniu CreateThread() jest niepotrzebne. Zmienna watek nie jest zadeklarowana, Twój program nie kompiluje się w takiej postaci jak wyżej. Zobacz #include <windows.h> #include <assert.h>...
[syntax=c] int16 t16; int16 tTemp; t16 = (buf[0] | buf[1] << 8); tTemp=(t16*10)/16; [/syntax] "buf" to odczyt "scratchpad" termometru. Zmienna tTemp zawiera temperaturę w 0.1st, to znaczy np. 13.5 to będzie 135. Potem, jak chcesz to dziel przez 10 i na float albo dzielenie przez 10 z resztą i bez reszty, tylko trzeba znaku pilnować: [syntax=c]...
Przedewszystkim zrób to inaczej... po prostu... main() { char bufor[20]; ... funkcja(bufor, ...); } funkcja(char* bufor, ...) { } I w ogóle nie ma problemu. Zmienna tmp w ogóle jest nieporozumieniem. Przecież wewnątrz funkcji możesz sobie zadeklarowac tablicę o dowolnym wymiarze... funkcja(...) { char tablica[1000]; } A pamięć możesz zwalniać gdzie...
Wklejony przez Ciebie kod jest dobry do demonstracji działania silnika i nic poza tym. Głównym problemem jest tu zastosowanie delayMicroseconds() . Poczytaj proszę o możliwości zastąpienia tych funkcji funkcjami nieblokującymi - choćby z wykorzystaniem słynnych millis() - jak to ugryźć znajdziesz w przykładzie Arduino IDE "BlinkWithoutDelay". Ale do...
Programowanie nie wybacza drobnych błędów. Przyjrzyj się dokładnie, co napisałaś i czytaj dokładnie uwagi. typedef struct s_element { float element; struct s_element *next; struct s_element *prev; } Element_t; void cykliczna( Element_t *ptr ) { Element_t *head, *tail; Element_t *tmp; // zmienna wykorzystywana przez funkcję if...
https://obrazki.elektroda.pl/9462291700_... Chciałbym zaprezentować rozwinięcie eksperymentalnego odbiornika SDR, jaki opisałem ostatnio: https://obrazki.elektroda.pl/6947080100_... https://obrazki.elektroda.pl/7046555300_... Najbardziej w tym momencie interesującym fragmentem płyty jest głowica: https://obrazki.elektroda.pl/9911930900_...
Witam! Podaję jedno z rozwiązań. [syntax=c]#include <stdio.h>/* tutaj funkcje we/wy */ #include <stdlib.h>/* tutaj funkcje losowe */ #include <math.h>/* tutaj funkcje matematyczne */ #include <time.h>/* tu funkcje dotyczace czasu */ #define PI 3.14 #define PRECYZJA 1000.0 int main(void) { int ilosc_krokow; int i; int a; double...
Przyjąłem że masz przycisk chwilowy a przekaźniki sterowane stanem wysokim. Tutaj poprawki : [syntax=c]#include <OneWire.h> #include <DallasTemperature.h> #define PIN_SENSOR 7 // pin do ktorego podloczono DS18B20 #define PIN_PK1 4 // pin sterujacy przekaznikiem 1 #define PIN_PK2 5 // pin sterujacy przekaznikiem 2 #define PIN_PK3 6 // pin...
https://obrazki.elektroda.pl/8003230600_... Po umieszczeniu materiału o porównaniu częstotliwości Napiszcie co myślicie o takiej metodzie. Wróciliśmy do tematu https://obrazki.elektroda.pl/3296797900_... Wejście sygnału mierzonej częstotliwości podamy na TIM2 CH2 czyli PA1 na płytce oznaczone jako A1. Nie będziemy...
https://obrazki.elektroda.pl/3654117300_... Nie jest to nic odkrywczego - wręcz idea takiego wykorzystania elektrodowego gadżetu (D1 mini) nasuwa się od razu. Więc zaczynajmy: Założeniem było wykonanie czujnika zapylenia i przy okazji innych parametrów atmosferycznych. Czujnik miał być umieszczony na balkonie i zostać połączony jak...
https://obrazki.elektroda.pl/1761046600_... Pokażę tu jak uruchomić z Arduino czterocyfrowy wyświetlacz 7-segmentowy sterowany poprzez rejestr przesuwny 74HCT164 i cztery tranzystory BC546. Płytka z wyświetlaczem znów będzie odzyskana z elektrośmieci. Będzie to już kolejny temat, w którym uruchamiam wyświetlacz, gdyż omawiałem już...
To po kolei: EM_A_power to jak widać zmienna float (tu przywołana jako extern), która przyjmuje wynik funkcji IntToFloat. Funkcja umieszczona w szkicu działa od dłuższego czasu, nie działała w wydzielonym pliku; dzięki uwagom kolegi z innego forum okazało się przy okazji, iż w tej formie jest UB, ale o dziwo działała. Tak jak przypuszczałem - "głupi...
Kompilator owszem i u mnie błędów kompilacji nie sygnalizuje. Ale program strasznie jest "ociężały" powolny i zawiesza się po jakimś czasie pracy - czego nie zaobserwowałem w moich poprzednich wersjach. Mnie razi używanie delay(). O ile przebolałbym to w samym setupie to w pętli głównej jest nie do przyjęcia. No ale czat uczył się na kodach z netu....
Do tej pory ukazały się następujące części: TEMAT Arduino LCD NexTimer, recvRetNumber, NexTouch, attachPop number, timer, get, printh, if-else, font - BUTTON - TEXT - TIMER - operator if - zmienne systemowe SYS0, SYS1 - array component b - biblioteka SODAQ_BMP085 - setValue - NexTouch - obiekt NexNumber - pole number - pole text - getValue - setValue...
https://obrazki.elektroda.pl/7393623100_... Witajcie, dziś dla odmiany mała zabawa programistyczna. Przedstawię tu jeden prosty trik na oszczędzanie pamięci przy zapisie typu integer w języku C i nie będzie to po prostu rada w stylu "użyj typu 8-bitowego zamiast 32-bitowego". Pokazany tu typ sam dobierze sobie potrzebną ilość bajtów...
https://obrazki.elektroda.pl/3743484600_... Witajcie moi drodzy Przedstawię tutaj mojego shielda (nakładkę) na Arduino UNO opartego o układ ENC424j600. Shield ten pozwala podłączyć Arduino do internetu bez żadnego lutowania, a nawet bez użycia kabelków i płytek stykowych. W temacie dam jedenaście pełnych przykładów jego użycia z moimi...
Witam wszystkich serdecznie. Właśnie rozpoczynam przygodę z Home Assistantem. Chcę zintegrować mój panel pokojowy (termostat) z HA i powiem szczerze nie wiem jak się do tego zabrać. Próbowałem coś znaleźć w sieci, ale kiepsko mi idzie. Producent podaje takie informacje: Pilot R WiFi nie jest modułem internetowym jednakże umożliwia komunikację w sieci...
Przy zamianie ośmiocyfrowych liczb long do postaci float pojawiają mi się zaokrąglenia na ostatniej pozycji. Czasem o jedną, czasem o kilka jednostek. Na przykład: Zmienna long przed konwersja: 88888889 Zmienna float po konwersji: 88888888.00 Nie dokopałem się do powodów takiego stanu rzeczy. Jakieś pomysły jak z tym walczyć?
->gps79 Racja! Choć nieskromnie przyznam że również zlokalizowałem ten błąd. Dodatkowo, poza kwestiami estetycznymi wygenerowanego przez AI kodu, jest jeszcze jeden błąd zaburzający funkcjonalność. Linia: float dutyCycle = map(voltage, 0, 5, 10, 90) / 100.0; nie działa poprawnie. Zmienna dutyCycle przyjmuje tylko sześć wartości, z przedziału...
Poniżej propozycja kodu z uzględnieniem poprawek od Gemini 3.0 :D [syntax=c]/* * PROJEKT: Christmas tree light controller /open software/ * AUTOR: Project promoter: AI - CzatGPT Code5, Reviewer of a scientific work: Deepseek: * DATA: 2025 * WERSJA POPRAWIONA: Korekta logiki efektu 3 i optymalizacja efektu 6 (komety). */ #include <FastLED.h> //...
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...
zadeklaruj sobie zmienna float a potem: zmienna=StrToFloat(napis);
Mógłbym prosić o kod (lub wskazówki) który:...... Kodu gotowego nie dostaniesz bo przestałem pracować ………… (za darmo!), ale masz poniżej przykład, w którym jest wszystko zawarte czego potrzebujesz; a nawet więcej, bo jest wprowadzona symulacja zmienności przykładowej (nie twojej) zmiennej i później jej wpisywanie do EEPROM zgodnie z życzeniem - długim...
Ciekawe ... jeśli to ma działać to potwierdza się reguła że często niepotrzebnie szuka się skomplikowanych rozwiązań do banalnych rzeczy. Nie wpadł bym na to :D Sprawdzę, mam nadzieję że będzie działać Dodano po 5 Chodzi o rzutowanie? zmienna_char=(char)zienna_float ?;) zmienna float = 99.045 => zmienna CHAR = 99 zmienna float = 54.7454 => zmienna...
Co to dokładnie oznacza? Nie wchodzi do przerwania, nie wychodzi? Masz sprzętowy debuger? (na jakim środowisku procujesz i jaki programator) I może dodaj sobie diodę do debugowania. Albo wykorzystaj LCD do debugowania. Aby dowiedzieć się do którego momentu program dochodzi. Np,wyświetla się napis HOT ON? A tak swoją drogą to co to ma być? while(!(SPR_GORA)...
Udało mnie się zastosować kod zaproponowany przez (at)efi222, natomiast w funkcji void Cyfry musiałem zmienić typ argumentów na int8_t żeby objąć też liczbę -1 po ostatniej dekrementacji. Przy przenoszeniu kodu posiłkowałem się też innym tematem na elektrodzie https://www.elektroda.pl/rtvforum/topic3... gdyż dotychczas stosowałem tylko timery...
Hej. Wiem że wszyscy jesteście bardzo zajęci i nie macie czasu na zajmowanie się pierdołami ale może ktoś się zlituje i pomoże dokończyć moje bazgroły i uruchomić je na ESP32 jako stronę www z możliwością odczytu i wprowadzania danych które przez I2C będą zapisywane i odczytywane ze sterownika. Tyle udało mi się nabazgrać w sprawiającym masę kłopotów...
(...) { stagSerial.write(command ); Serial.print(command , HEX); Serial.print(" "); } Serial.println(); } void displayOxygenPercentage(float percentage) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Tlen: "); lcd.print(percentage, 1); lcd.print("%"); } Podaj pełny kod. Jeśli chcemy, aby regulator PID utrzymywał wartości z przedziału, należy zmodyfikować...
Zmienna jest typu: volatile float obrabiam ją w przerwaniu.
Uzywam mk 89s8252. Chce wypisac na wyswietlaczu zmienna typu float, co robie poprzez: xdata float zmienna=1.45678; sprintf(text,"%f",zmienna); wypiszLCD(text); Na wyswietlaczu pojawiaja sie jedynie same 0. :0.0000 Jesli uzyje zamiast xdata, data float zmienna=1.45678, wszystko jest oki. Czy ktos ,moglby mi powiedziec jak wyswiwietlac zmienne z przestrzeni...
ftoa => float to ascii. parametrem wejsciowym jest zmienna float a wyjsciowym string, inaczej mówiąc zamienia liczbe zmiennoprzecinkową na string. Pozdrawiam.
zmienna float konwersja zaokrąglanie float wyświetlać float
ricoh reset bębna gasnąć ciepłym silnik krystalizacja akumulatorów
philips ep2200 prostownik rozruchowy schemat
Laser w odtwarzaczu Schneider CDP7000: Sanyo SF-86 lub TAOHS-HG1 Schemat zasilacza LG 55EG960V - gdzie znaleźć?