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ą).
A dlaczego tam jest zmienna float?!! Za nawiasem zamykającym pętlę for postaw średnik. Długość opóźnienia po prostu musisz wyregulować, zmieniając wartość do której ma liczyć pętla.
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.
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",...
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...
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
Zmienna nap jest typu float, a podstawiasz jej wartość na zmienne typu int, gubiąc część ułamkową.
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
Jakaś zmienna zmiennoprzecinkowa: "float" lub jeśli będziesz korzystał z biblioteki math to wtedy lepiej "double". Trzeba tylko pamiętać że jest to dość "kodożerne". Wiąże się to z działaniami na zmiennych wielobajtowych. Z tego co testowałem avr-gcc w tym zakresie, to jak chcesz oszczędzić pamięć programu lepiej przechodzić na stały przecinek. Ma to...
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...
zadeklaruj sobie zmienna float a potem: zmienna=StrToFloat(napis);
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ć.
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...
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ć?
Witam, napisalem program dla kolegi obliczajacy srednia geometryczna i arytmetyczna w adzie 95, tylko ze on ma go oddac napisanego w pascalu, a ja juz zapomnialem ten jezyk wiec prosilbym o przepisanie tego programiku na pascalu lub delphi WITH Ada.Text_IO, Ada.Integer_Text_IO, Ada.Float_Text_IO, ada.Numerics.Elementary_Functions; USE Ada.Text_IO, Ada.Integer_Text_IO,...
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).
Przeciesz pisałem zrób rzutowanie Serial.print(float (literperhour/100),3); - wypluje na serialu 12,345 Co jest oczywiście błędną odpowiedzią! Mając zmienna (float) literperhour=12345 i gdy podzielimy przez 100, otrzymamy 123.45; następnie, jeżeli chcemy wynik z trzema miejscami dziesiętnymi; wynik będzie przedstawiony: 123.450 a nie taki jak sugerowano...
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...
ftoa => float to ascii. parametrem wejsciowym jest zmienna float a wyjsciowym string, inaczej mówiąc zamienia liczbe zmiennoprzecinkową na string. Pozdrawiam.
Jeżeli zmienna "deszcz" jest typu float, to: - jej wartość całkowita X równa jest [syntax=c]X = int(deszcz)[/syntax] - jej część ułamkową można będzie wyświetlić osobno również jako liczbę całkowitą Y (dwie cyfry): [syntax=c]Y = int((deszcz - X) *100)[/syntax] gdzie X jest wcześniej wyliczoną wartością całkowitą zmiennej "deszcz".
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...
Witam Mam banalny problem ale zaczyna mnie irytowac. Jak zainicjalizwoac zmienna float wartościa null ? Z gory uprzedzam ze nie chodzi mi o klase Float. Jak wpisuje np: flat x=null; kompilator wyrzuca mi blad float x=0.0f; inicjalizuje mi zerem Pewnie problem błachy ale dzieki za podpowiedzi.
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...
Hej. Mam problem. Na początek powiem, że używam FreeRTOS (choć wydaje mi się, że to bez związku). Mam taki kod: [syntax=c]przecinek=(float)licz/100; zmienna=(int)(round(przecinek)); if(zmienna >= 4 ) { fifo[i]=(int)round(przecinek); i+=1; }[/syntax] Działanie: zapisuję do "przecinek" liczbę zmiennoprzecinkową. "zmienna" powstała tylko w celu podejrzenia...
Szczerze... nie mam pojęcia. Dla mnie było to oczywiste, że gdy wystąpi warunek if(wpompowanaIloscWody > zadanaIloscWody) gdzie zadanaIlośćWody jest zmienną byte = X wartości, powinno nastąpić wyłączenie pompy po spełnieniu tego warunku i to bez względu na przerwanie. Jak możesz to daj jakąś podpowiedź bo sam do tego nie dojdę, myślę od wczorajszego...
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ż.
Zmienna jest typu float.
Zmienna jest typu: volatile float obrabiam ją w przerwaniu.
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...
Witam, Piszę program na Atmega8 który wyświetli mi liczbę float na wyświetlaczu BCD. Sama zmienna globalna float nie zajmuje za dużo miejsca. Moim sposobem na wyświetlenie tej liczy jest: [syntax=c] int pom; volatile float zmienna = 34.9; volatile int jednosci, dziesiatki, setki; i dalej: pom = (zmienna*10); // 34,9 zamieniam na 349 jednosci = (pom%100)%10;...
Dało by rade stworzyć zmienna float na 16 bitach to tzn np 1 znaku 5 wykładnika i 10 na mantysę. uzyskał bym zakres od -4mld do 4mld z dokładnością mantysy do 0.0005 Czy muszę coś takiego stworzyć sam w asemblerze zdefiniować operacje w asemblerze i dopiero te gotowe funkcje wykorzystać np podczas pisania czegoś w C Widziałem to: http://www.elektroda.pl/rtvforum/topic11...
Edit15 -> Text = IntToStr( StrToInt( Edit30->Text + // dodawanie textu to rozumiem... konkatencja Edit31->Text * // ale mnożenie wyrazu przez liczbe? ( StrToInt(Edit9->Text) / ( StrToInt(Edit8->Text) + // tu chyba powinien być znak odejmowania StrToInt(Edit9->Text) ) ) ) ) sprubój:...
OK ... podmieniłem pętle czasowe na te wg. "bvr". Wykrywanie OK i odczyt około 0x017A. Pytanie ... widzę w jego kodzie jakąś konwersję ... do czego ona służy? Zmienna float jaki ma zakres danych? Sorry za pytania, ale nigdy nie posługiwałem się zmiennymi z przecinkami ;) Dodano po 34 //Jeszcze parę pytań ;) Jak ze zmiennej float wyciągnąć części dziesiętne,...
1. ($44*524288) + ($79*65536) + ($AC*256) + $CD 2. ($44*524288) or ($79*65536) or ($AC*256) or $CD 3. ($44 Shl 24) or ($79 Shl 16) or ($AC Shl 8) or $CD najszybsze chyba te bajty przedstawiają liczbę type DWORD więc musisz poprzez pointer wpisać je do zmiennej Float żeby wynik był poprawny. Albo jeśli wiesz jak jest skonstruowana zmienna float - to...
Mam do napisania filtr w VHDLu , ale nie wiem jak w tym jezyku utworzyc zmienna typu float, jest taka mozliwosc ? Nie wiem czy filtr moze sie bez tego obyc. Ktos ma jakis pomysl ? Wrzucam filtr na jakiegos spartana xilinksa.
Określić własny separator. W produktach Borlanda jest to zmienna superglobalna DecimalSeparator
Faktycznie, nie zauważyłem tego. Przy kompilacji czegoś takiego: [syntax=c] float zmienna; ... zmienna = zmienna + 1.5; [/syntax] Kompilator zamieni zmienną na double, doda liczbę double o wartości "1.5" i całość przerobi z powrotem na floata. Pomaga dodanie litery "f" na końcu liczby: [syntax=c] float zmienna; ... zmienna = zmienna + 1.5f; [/syntax]...
Witam, już wszystko śmiga:) Powodem nie działania było te odwołanie do tablicy:) nie wiem jak mogłem zrobić taki błąd:) Wielkie dzięki za pomoc. Funkcja owire_reset() zwraca do zmiennej "sprawdz" wartość po ktorej wiem czy jest podłączony jakiś czujnik do magistrali, ale w tym kodzie nie jest to zaimplementowane (usunąłem tymczasowo wszystkie zbędne...
Chyba tak: float zmienna = scale.get_units(10)/1000;
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...
Z floatem jest troche więcej zabawy void WpiszLiczbe(unsigned char dx,unsigned char dy,Zmienna *ptr,unsigned char typ) {float dana_calkowita;float dana_ulamkowa;Zmienna dana; unsigned char znak; unsigned char tab[17]={0x30,0x30,0x30,0x3... unsigned char *ptrtab=&(tab+10);...
To nie ma znaczenia czy float czy double. Jeśli zmienna jest typu float to dodatkowo dochodzą jeszcze konwersje float->double double->float fpu_enable() jest wywoływane wcześniej - to jest Twój kod. Problem i tak jest w tym, że nie ma obsługi sprzętowego fpu - kompilator wszystkie operacje na zmiennoprzecinkowych wykonuje programowo.
Witam! Piszę program który ma mniej więcej obliczać mi ile paliwa jest wtryskiwane do cylindra w samochodzie. Ale chciałem aby wartość uśredniona już nie była tracona wraz z odłączeniem zasilania, tak więc trzeba ją do EPROM'a zapisać. Robię to tak: float wynik = 0; eeprom_write_byte( (float *)0x0, wynik); wynik = eeprom_read_byte(...
mam problem jak w temacie, klikniecie pzycisku na formie ma zwiekszac zmienna typu float o 0.1 z koleji label ma to wyswietlac, problem polega na tym ze zmienna zostaje zwiekszona o np 0.099998472147 itp. zalezy mi na tym zeby zarowno to co wyswietlam jak i to co jest w zmiennej wynosilo dokladnie 0.1 0.2 .... jak sformatowac zakres zmiennej w builderze??
Co do dzielenia, it's not a bug, it's a feature! :) Po naszemu, to nie ograniczenie, tylko odgórne założenie, dzięki temu w C nie ma dwóch operatorów dzielenia (całkowite i zmiennoprzecinkowe), jak w niektórych innych językach, ale trzeba uważać na typy zmiennych, coś za coś. Według tego, co wyczytałem z dokumentacji avr-libc int zajmuje 2 bajty, a...
Coś takiego chiałes? : #include <stdio.h> #include <stdlib.h> #define W 3 #define K 3 int main(int argc, char *argv[]) { float tab[W][K]; int i,j; for(i=0;i<W;i++){ for(j=0;j<K;j++) scanf("%f", &tab[i][j]);... for(i=0;i<W;i++){...
Nie wiem czy probowales, ale zeby umiescic np. zmienna w przestrzeni xdata piszesz cos takiego: xdata float zmienna i wszystko. (dla zmiennej typu float). Zamiast xdata mozesz dac tez pdata. Jesli chodzi o ustawienia keila to wchodzisz w opcje projektu i wybierasz model pamieci Compact lub Large. Swoja droga masz swietny procek, ja mam aduc842, mozesz...
Jeżeli Cię dobrze zrozumiałem, to wrzuć do tablicy. Zadeklaruj tablicę : float zmienna[ilosc_danych]; i przypisuj w każdym przebiegu pętli zwiększając indeks np. i++ do kolejnego indeksu tablicy czyli np. zmienna[i] = message.toFloat(). Pozdr
Jakiego typu jest zmienna adc? float? Jakie jest taktowanie IO? Jaki model XMEGA? Generalnie nie podoba mi się to kasowanie flagi przerwania, podobnie odblokowanie układu wzmacniacza na wejściu ADC. Odpal powyższy kod w symulatorze i sprawdź po inicjalizacji czy rejestry ADC wyglądają rzeczywiście tak jakbyś sobie tego życzył.
W sumie to można wysyłać bez unii i dodatkowej pętli, i dodatkowo w C++ ;) value to zmienna typu float. Analogicznie można odbierać funkcją Serial.readBytes(): [syntax=c] Serial.readBytes((byte *)&value, sizeof(value)); [/syntax] Albo wykorzystać do odbioru funkcję Serial.parseFloat() - to jest trudniejsze. https://www.arduino.cc/reference/en/lang...
o ile dobrze pamietam to dolaczasz plik iomanip.h, i piszesz np cout << setprecision (3) << zmienna;
Witam, Problem może jest laicki, ale nie mogę sobie z tym poradzić. Mianowicie między dwiema komunikującymi się ze sobą Atmegami8 za pomocą TWI lub SPI chciałbym przesyłać dane zmiennopozycyjne. Próbowałem przesyłać zmienną float bezpośrednio wrzucając ją na magistrale, a po stronie odbiorczej zamienić na stringa (funkcja dtostrf()) i wyświetlić na...
Witam, Mam do zrobienia prędkościomierz/ obrotomierz z zastosowaniem aTTINY 26, Hallotronu TLE4905L Mam problem z zerowaniem poprzedniego odczytu, aby wyzerować ustawiam i=0, ale kasuje to tylko cyfrę jedności, a cyfry dziesiątek i setek zostają nietknięte. Czy macie jakiś pomysł aby ominąć ten problem. Dodatkowo mam problem z hallotronem, ponieważ...
Witam, mam dziwny problem ze zmiennymi podczas programowania Atmega8-ki. Problem polega na tym, że gdy tworzę zmienną typu np. int, long int, unsigned int, to wszystkie te zmienne posiadają zakres short int (-32768 - 32767). Zmienna float również dziwnie się zachowuje zaokrąglając wynik gdy jest dość długi (pamiętałem o zaznaczeniu "floating point"...
To ty się mylisz. rejestr to nie zmienna Operacja jest wykonywana, ale zmienna nie istnieje i nie da jej się śledzić. No koledzy to już jest herezja Apage satanas !!! :D Rejestry w tym momencie zmienna - float i struktura tez są przechowywane w rejestrach i nie mają swojego miejsca w pamięci. Debuggery są na tyle mądre, że rozumieją jaka jest reprezentacja...
...proszę o sprawdzenie i korektę błędów z komentarzem... //--------------------------------------... // >>>>>>>>>>... V O L T O M I E R Z <<<<<<<<<<... //--------------------------------------... //##################...
Sprobuj ustawic model pamieci small, a przy deklaracji zmiennych pisac np. xdata float zmienna, lub pdata, ewentualnie idata, moze to pomoze. P.S. Duzy szacunek dla kobiet programujacych mikrokontrolery!!! 8)
Program do tego zegarka napisałem w języku C. W tym języku zmienna typu float przechowuje liczbę rzeczywistą, a wartościami funkcji trygonometrycznych są właśnie liczby rzeczywiste, stąd użycie zmiennych tego typu w projekcie. Nie wiem, jak wyglądałoby wyliczanie wartości funkcji trygonometrycznych przez 8-bitowy mikrokontroler AVR, jakim jest przykładowa...
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...
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.
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.
Nie tworz wlasnych opoznen, tylko skorzystaj z delay.h. W SIGNAL(SIG_ADC) masz blad - zastanow sie co sie dzieje po przelaczeniu multipleksera ADC. Poza tym te liczenie do 50 to jaki ma sens? Jesli chciales usrednic 50 pomiarow to nie wyszlo. Zmienna counter jest niezainicjowana. Konstrukcja typu: result=(float)(ADCL | (ADCH<<8))/1024*VREF; wcale...
w sterowniku na wejscie PIW 340 wchodzi sygnal z przetwornika temperatury- dla sterownika to powiedzmy wartosc od 0 -27648 L piw340 T db10.dbw0 i taka mam wartosc w tym slowie a jezeli by ktos uzyl: L piw340 ITD DTR T ..... to mialbym zmienna real czy tam float i mysle ze po przecinku nie byloby tylko 0
Część całkowitą to przeważnie wiadomo jak wyświetlić, a po przecinku dodajesz do siebie odpowiednie bity 0.5+0.25+0.125+0.0625. Nazywa to się liczba stałoprzecinkowa. problem w tym ze mam procka at89s52 i w Ride jak dam zmienna np. float to mi kompilator pisze ze jest blad ,ze przekroczono wielkosc obiektu.A da sie wypisac ten ulamek uzywajac unsigned...
float zmienna = 3.14159246; std::cout.precision(5); std::.cout.setf(0,ios:... std::cout << zmienna << std::endl; Krashan7 : Pytanie było o C++ a nie ansi C to po pierwsze. Po drugie nie uzyskasz takim dzieleniem żadnej liczby z przecinkiem bo wynik jest typu int i kompilator...
Bardzo naokoło, ale udało mi się to zrobić w ten sposób, najpierw stworzyłem substring od szukanego znaku do określonej przeze mnie liczby znaków (dłuższej niż szukany ciąg znaków), następnie wykonałem szukanie spacji - jeżeli była, generowałem kolejny substring - od początku poprzedniego do spacji, jeżeli nie funkcja była czytana do entera. Następnie...
na atmedze i tak typ double jest równy typowi float. Zmienne x i kat powinny być zadeklarowane jako volatile. aha no i często warunki typu if(zmienna == 43.342) zwracają fałsz, nawet jak wpiszesz zmienna = 43.543; if(zmienna == 43.543) {cos} to "cos" się może nie wykonać, bezpieczniej jest tam dać znak nierówności if(zmienna...
Przecież w C jest dzielenie na integerach. Możesz pomnożyc okres przez np. 100 (jak chcesz w procentach), lub 128 czy cokolwiek innego, jak ci tzreba skalować i dzielić przez czas stanu. Uwaga na przekroczenei zakresów!! Być może zmienna przejściowa typu long.
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 próbie wyświetlenia zmiennej typu float lub double pojawia się pytajnik na LCD zamiast spodziewanej liczby printf("%f",zmienna); Co należy zrobić aby standardowa funkcja zadziałała ?
uiAddress jest zadeklarowana na samym poczatku jako float uint16_t uiAddress = 0 ; i nie ma znaczenia czy podam zero na końcu czy 1 czy inną liczbę - ciągle się nie kompiluje To w końcu float, czy uint16_t? To są różne rzeczy. Pierwszym argumentem powinien być adres zmiennej w pamięci EEPROM - czyli zmienna typu wskaźnik na float. Spróbuj: [syntax=c]...
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;...
Ok masz racje. Kupię układ, który daje napięcie odniesienia 4,096V (MCP1541). Wtedy wystarczy tylko daną z MCP podzielić przez 1000 i będzie napięcie. Dobrze myślę? Ale jakiego typu musi wtedy być tan zmienna przechowująca napięcie, także float? Czyli to niczego nie uprości?
Witam wszystkich Mam mały problem. Mmam dwie zmienne FLOAT zmienna1; BYTE zmienna2; i chce zrobić konwersje zmienna=(BYTE)zmienna1; to które bity mi wezmie ze zmiennej1 i wstawi do zmiennej2. np. jezeli mam FLOAT zmienna1=3421.2323 lub zmienna1= 65653421.2323; to co odpowiednio zostanie?
Ze nie ma then to sie zgodze bo jest zastopione blokiem { } ale ze nie ma else to juz sie raczej zgodzic nie moge. Funkcje napisal Ci kolega smerfikk tylko ja bym dal formule pod zmienna (np k typu float) i pozniej zwrocil ja jako wartosc funkcji.
Dziękuję za odpowiedź. Niestety zbyt słabo rozumiem zasadę działania regulatora PID, żeby móc tam cokolwiek zmienić:/ Mam jeszcze jedno pytanie. Muszę jeszcze go nastroić. Czytałem już w Internecie jak się stroi regulatory ale że tak się wyrażę tylko na czuja. Czytałem też o jakichś metodach Zieglera Nicholsa itp ale są trochę zbyt skomplikowane:P Tylko,...
Ja bym polecił jeszcze aby zmienna w której przechowujesz wynik była float bo nie widze żeby ktoś coś takiego poruszył. A pozatym w przypadku float z tego co pamiętam to czynniki muszą mieć postać float czyli np nie 300 tylko 300.0 (pamiętaj że w C w matematyce nie ma "," tylko jest "."
Witam, posiadam projekt sterownika do terrarium (odpowiada za wyświetlanie temperatury i wilgotności, oraz załączanie kabla grzewczego), dostosowałem go do własnych potrzeb, jednak napotkałem problem z podłączeniem zegara czasu rzeczywistego (DS1307), potrzebuję pomocy w podłączeniu go do Arduino UNO, oraz dorobieniu nowej części programu. Chciałbym...
Dodano po 5 Nie napisałem o co chodzi Bo bardzo rzadko zakładam nowe tematy i nie wyszło mi to chodzi o to że napisałem kod nawet późno i chciałem go spróbować załadować do atmegi 8 ale jest troszkę za duży czy ktoś mógłby sprawdzić czy jest jakaś możliwość ewentualnie mamy jeszcze jeden który jest trochę mniejszy. Proszę o pomoc jeśli to możliwe....
Znowu nie dziala:P Widzialem myk ze ktos wszystkie sekcje alignowal do 8 ale to chyba tez nie zalatwia sprawy na zawsze a tylko jesli zastosuje sie tego floata jako zmienna globalna.
Dane pokazywane oczom użytkownika mogą być zupełnie inne niż te przechowywane w programie. Wpisywanie wartości liczby po cyferce jest uciążliwe. W piekarniku mam ustawianą godzinę jednym przyciskiem (czy dwoma), wystarczy w programie zauważyć że przycisk został wciśnięty, przytrzymany przez 1s, przytrzymany przez 5s,itd. Jak nie używasz delay nie jest...
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)....
Nigdzie nie podałeś (albo ja niedowidzę) jakiego typu jest zmienna temp_current ... a to pewnie jest przyczyną problemów
[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]...
O tyle o ile. Jeśli wskaźnik ma być użyty do danych o różnych typach można użyć wskaźnika na void [syntax=c]struct { void *ptr; } Struktura;[/syntax] Do wskaźnika void można przypisać wartość wskaźnika dowolnego typu. [syntax=c]int zmienna; Struktura.ptr = &zmienna;[/syntax] Dostęp do zmiennej wskazywanej przez wskaźnik po odpowiednim rzutowaniu: [syntax=c]*((int*)Struktura.ptr)...
odczytanie i wysłanie całego bajtu [syntax=c]void send_byte(char wartosc) //wysyla caly bajt do ukladu { unsigned char i; //licznik unsigned char pom; //zmienna pomocnicza for(i=0; i<8; i++) { pom = wartosc>>i; //przesuniecie bitowe w prawo pom &= 0x01; //skopiowanie bitu do zmiennej pomocniczej send(pom); //wyslanie bitu na magistrale...
Witam, nie koniecznie problem ale chciałem przedstawić sposób na to aby przedstawić dowolną zmienną z pomocą zmiennej tekstowej string (ciąg HEX) i odwrotnie. Podana przeze mnie metoda robi dużo więcej niż tylko zmienia int na hex czy hex na integer obsługuje oprócz tego String,Int, Long, byte, word, fload, double, oraz tablice i struktury i dowolna...
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>...
No ładnie to i elegancko wygląda, będę próbował. A to co napisałem ma jakiś sens? Tzn. przy y = x, zmienna y typu int przyjmie część całkowitą zmiennej x typu float?
no i działa mistrzu :) mam to teraz tak: [syntax=php] $xml = simplexml_load_file('C:\serwer\1_Wire_Lo... function GetRoomTemperature($id) { $result = $GLOBALS['xml']->xpath("/DATA/TEMPERA... return $result[0] ; } $temp_01 = round( (float )GetRoomTemperature("4F000005A2B8CF28"), 1); $temp_02 = round(...
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...
A zmienna VREF jaką ma wartość? Polecam sobie wyprowadzić wzór przekształcenia sprowadzający się do jednej operacji typu: capVF = (float) (capVoltage * COEFFICIENT);
Projekt OK, ale po co używać mikrokontrolera z tak dużą ilością wyprowadzeń? Faktycznie mikrokontroler dość spory, jednak z 40 pinów doliczyłem się (tak na szybko) 7 pinów wolnych. Oj, byłem rozrzutny :D . Głównie chodzi też pewnie o rozmiary, ale bardzo lubię PIC18F4550, cena też bardzo akceptowalna. Zrobiłem również gniazdo dla USB - początkowo myśląc...
W tym momencie budynek1[i].numer to tablica, a nie zmienna - chyba nie możesz wczytać tablicy z klawiatury. Pisząc "float numer[4]" robisz tablicę z 4 wartościami float, a to pewnie nie to, co chcesz uzyskać. Jeśli chcesz mieć tam pojedynczą wartość, wystarczy "float numer".
Napisałem poniższą funkcję do konwersji liczby typu float na stringa, który go reprezentuje. W symulatorze AVR Studio sprawdziłem czas takiej konwersji przy zegarze 16MHz i wyniósł on ok 500µs. Czy ma ktoś pomysł jak bardziej zoptymalizować tą funkcję? Inna sprawa to optymalizacja wykorzystywanej pamięci, bo w tej chwili wykorzystuje jeśli poprawnie...
Zrób sobie unię ze zmiennymi typu int o takim samym zapotrzebowaniu na pamięć co float: [syntax=c]union { float temperatura; uint32_t in; uint8_t buf[4]; } flo_to_by;[/syntax] Jak masz gotową funkcję to wyślij to jako zmienna "in" a jak nie to kolejne bajty z bufora "buf".
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...
Inaczej. Mam działający kod pod pomiar wilgotności z ADC. oto on: [syntax=c] void ADC_set() { DDRA &= ~(1<<PA0); /* ustawienie portu A na wyjście */ ADCSRA = 0x87;/* włączenie ADC, fr/128 */ } int ADC_odczyt() { //ADMUX = 0x40; /* Vref: Avcc, ADC channel: 0 */ ADMUX = (1<<REFS0); //| (1<<MUX0); ADCSRA |= (1<<ADSC); /* start...
Napisałem inną funkcje, aby sprawdzić czy to błąd w moim kodzie. Funkcja wygląda następująco: void floatToString(float data, uint8_t *stringTab) { float test = 22.4567f; stringTab[0] = (uint8_t)((data / 10) + 48); stringTab[1] = (uint8_t)((test / 10) + 48); stringTab[2]...
zmienna float konwersja zaokrąglać float float konwersja
beninca fotokomórka satel ekspander rozrusznik zmiana kierunek
chwilowy zanik obrazu chwilowy zanik obrazu
Zamiennik silnika do odkurzacza Bosch Readyy'y 18V Li-ion Czas pracy Bosch BBHL21841/01 18V Li-Ion w trybie normalnym i turbo