liczby zmiennoprzecinkowe są małej dokładności. Tam dajmy na to 100 000 000 000 000 a 100 000 000 000 001 to zbyt mała różnica, przez co jedna z tych liczb nie istnieje w takim systemie zapisu. Stąd zapisując niejako kolejne liczby w systemie cecha-mantysa uzyskuje się ciąg, który w uproszczeniu przedstawię (w systemie dec 1 bit mantysy i 1 byt cechy)...
Możliwe, że winne są spacje w ścieżce, którą wypisuje kompilator w komunikacie o błędzie.
Możliwe, że to nie jest wersja trial Protela, tylko pełna i przy uruchomieniu szuka on licencji sieciowej (do pracy sieciowej).
Nie znam się, ale się wypowiem😉. Mam system 48 V i tam float ustawia się na 55,5 V - 56 V, czyli dzielone przez 4 to 13,87 V - 14 V, ale to jest ładowanie powiedzmy do 80% - 90%, a jaki stan naładowania będzie przy float 13,2 V? Hmm, może trochę rozjaśni ta tabelka https://obrazki.elektroda.pl/7817082300_... z tej strony https://www.kmdpower.com/pl/news/lifepo4...
Witam wszystkich, chciałem wyświetlić kilka zmiennych float, int na monitorze VGA przesłanych przez i2c z jednej atmegi 328 do drugiej która obsługuje monitor VGA . Przeglądałem przykładowe kody z bibliotek vga, vgax, vgaxua i myślę że poradziłbym sobie z jedną zmienną nie wiem jak to zrobić z kilkoma zmiennymi, żeby ich przesyłać i poszczególne żeby...
(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...
Hmm, spójrz jeszcze raz na kod kolegi robert-gd, a potem na ten swój - nieźle pokręcony. Jak myślisz, który jest bardziej uniwersalny? Nie wiem po co chcesz korzystać z daty juliańskiej? Tak jak kolega robert pokazał, należy dowolną datę przeliczyć na jednostki które cie interesują, np. sekundy, następnie przeprowadzić zwykłe odejmowanie i ponowne przeliczanie...
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...
Zmienną typu int najłatwiej zamienisz funkcją itoa znajdująca się w bibliotece stdlib.h. Jeżeli chcesz wypisać jedną cyfrę to ja robie tak write_char(5+0x30) - wyświetla '5'. Przejście do drugiego wiersza jest możliwe przez wpisanie write_command(0xC0) (wg. twoich procedur)- zakładam że używasz wyświetlacza 2x16 Wszystkie dostępne biblioteki są dokładnie...
O i tej informacji mi brakowało, że pierwsza liczba oznacza długość całego pola, a nie ilość przed przecinkiem. Chyba mnie zamroczyło i niedokładnie przeczytałem Minimum number of characters to be printed. If the value to be printed is shorter than this number, the result is padded with blank spaces. The value is not truncated even if the result is...
Problemu z sprintf ciąg dalszy. Mam wrażenie że to nie z sprintfem są problemy tylko z funkcjami na danych zmiennoprzecinkowych, bo oprócz problemów z wyświetlaniem float'ów sa tez problemy z konwersją, nieważne czy jawna konwersja czy niejawna np: int = float lub int = (int)float ; powodują że w zmiennej int znajduje się bitowy odpowiednik zmiennej...
No ok, ale skoro ja wysyłam co 35s, a odbieram co 20 to zawsze wszystko będzie odebrane, tak? ale w przypadku trybu MANUAL komunikacja musi odbywać się w dwie strony i tu już jest gorzej. Komunikacja Serial-Serial odbywa się w trybie half-duplex. Oznacza to, że w danej chwili UART może wysyłać dane albo je odbierać, ale nie równocześnie. Jak UART nie...
Lepiej z bibliotece nie grzeb. Spróbuj z inną wersją Arduino. Możliwe też, że biblioteka jest w złym miejscu.
miałem podobny problem (z tym że nie na '51 a na procku sygnałowym). Wyjściem okazała się metoda tablicowa. Nie potrzebowałem dużej dokładności konwersji float->fixed więc brałem sam wykładnik liczby zmiennoprzecinkowej do indeksowania tablicy z wartościami stałoprzecinkowymi. Możesz spróbować tej metody i dopasować ją do swoich potrzeb - jest to chyba...
Witam, posiadam wersję demo tego programu lecz nie możliwe jest tu używanie zmiennych typu float (brakuje biblioteki c51fps.lib) która znajduje się w pełnej wersji tego programu. Prosze o przesłanie mi tego pliku na adres tomekwert(at)poczta.fm z góry dzieki.
Próbowałem przełączyć się na "oddzielny" kod dla bufora pierścieniowego - dzięki czemu możliwe byłoby użycie tego samego kodu dla różnych przypadków. Do tej pory int to 32-bitowa liczba całkowita - float jest "symulowany" jako liczba całkowita pomnożona przez 100 (więc może pomieścić 2 miejsca po przecinku i jest dzielony przez 100 podczas odczytu)....
Zachowanie jest absolutnie poprawne, gdyż wg IEEE float ma reprezentację dla +0 i -0. Rozwiązaniem jest użycie typu unsigned (o ile to możliwe), lub pozbycie się tego zera rozbijając operację na osobno zaokrąglanie i konwersję do łańcucha. Sprawdź też czy nie pomoże sprintf(bufor, ".2f", var+0);
Witam Próbuję odczytać pomiary z licznika energii elektrycznej, które są w postaci 32 bit. Czy jest możliwe odczytanie takiej danej w LOGO! Soft Comfort w postaci liczby zmiennoprzecinkowej? Znalazłam funkcję "Float/integer converter", ale ona nie pozwala na przedstawienie liczby z przecinkiem. Czy da się obejść w inny sposób to ograniczenie logo ?...
Możliwe. 1ms to 16000 taktów zegara, biorąc pod uwagę, że podstawowe operacje na float trwają około 500 taktów, to ta funkcja wykonuje się sporo poniżej 1ms.
Problem wygląda tak: Mam pewną zmienną float wynik o wartości załóżmy 126,8. Chciałbym wyświetlić to zmienną na wyświetlaczu opartym o sterownik HD44780. Problem w tym że funkcja LCD_WriteText() obsługuje tylko tablice char. Wymyśliłem, żeby oddzielić wartość nieprzeciekową (tj. 126) od przeciekowej (tj. 8). Następnie podzielić te liczby na osobne cyfry...
mam k700i , kabelek foof, program float mobile agent i ten program nie widzi mi plików telefonu. Wgrać mogę bez problemu wszystko do telefonu. Możliwe ze przyczyną są foldery standardowe w tym telefonie, ponieważ w J300i program widzi pliki jeśli nie ma folderów a jak są to nie widać. Jak ten problem usunąć lub czy są jakieś inne programy?
ściągnąłem juz program ze stronki club-se.pl Program sie nazywa float czy jakos tam. Ale nie moze sie połaczyć z moim telefonem. Możliwe ze trzeba skonfigurować telefon.Czy wie może ktoś jak? I jeszcze czy moze wie ktoś czy ten program działa ze złączem USB?
Ale liczysz go inaczej. Popatrz na nawiasy. to nie jest realny kod, to sa dywagacje kolegi nt kodu W scenariuszach 'co jest naprawdę' wróżka mi powiedziała o kilku możliwych błędach (przy których nawiasy to elementarz)
Spoko, jak rozumiem to tajemnicze cmath to zwykłe [syntax=c]#include <math.h>[/syntax] tylko w wersji dla C++ (namespace)[syntax=c]#include <cmath>[/syntax] Biblioteka matematyczna pod AVR jest dostępna, tyle, ze double jest tożsame z float, no i jest liczona programowo, więc dość wolno.
Witam, Czy jest możliwe dogrywanie pojedynczych funkcji do działającego programu na mikrokontrolerze?. Przykładowo mam funkcję odpowiedzialną za działania matematyczne tj. dodawanie, odejmowanie itp. [syntax=c]float Oblicz(float v1,float v2){ // wykonaj rożne obliczenia i zwróć wynik } [/syntax][/code] Chciałbym zmieniać tylko to co jest wewnątrz funkcji...
Kod jest najprostszy z możliwych chyba... [syntax=c][/syntax]#include <stdio.h> #include <tgmath.h> int main(void){ float as = 3.14; printf("cos (3,14) = %f", cos(as)); return 0; }[syntax=c][/syntax]
Łuk elektryczny w stacjach SN i WN może zapalić się samoistnie. Jest to o wiele rzadsze zjawisko niż przy otwieraniu łącznika ale jest. Ponieważ napięcie jest naprawdę konkretne więc jest możliwe przeskoczenie z kubeczka na kubeczek jednej kropli a ta przy pomocy napięcia powierzchniowego utrzyma wiązkę. Jak tu zostało wspomniane nie ma 100%czystej...
Kwestia połączeń jest raczej mniej prawdopodobna, bo błędny wynik oznaczałby błędy transmisji, a te okresowo powodowałyby "przeinaczenie" komend i brak poprawnej komunikacji z sensorem (co przy dobrze napisanej obsłudze 1wire wyrzuciłoby komunikat o błędzie). Tutaj jest kwestia tylko samego wyniku i właśnie przy samej konwersji szukałbym przyczyny....
Dzięki za podpowiedź ale w WinAVR + PN2 nie ma dostępnych opcji linkera poza ustawieniami w makefile. Nie mam pewności czy to tutaj ale tylko tutaj jest coś o FLOATach. Dopisałem "-lm" w każde możliwe miejsce ale to nie pomogło. Skopiowałem całą tamtą instrukcje ale też nic to nie dało :( Oryginalny makefile wygląda tak: ---------------- Library Options...
Witam wszystkich. W pliku tekstowym znajdują się dane, które chciałbym wczytać do programu w c++. Poniżej prezentuję zawartość tego pliku. Parametry linii zasilających: Nazwa linii | MIK | JOU | KAR | ELB | ------------------------------ ---------------------- Długość linii | 150 | 100 | 120 | 60 | Rezystancja linii | 0,17 | 0,073 | 0,052 | 0,03 | Pobierana...
Witam, mam do zrobienia projekt na temat "przełączanie rzeczywistego tranzystora". Chodzi o to, żebym przeprowadził wszystkie możliwe symulacje w programie Pspice... Zgodnie z podpowiedzią prowadzącego skorzystałem z ukłądu który mi dostarczył. Umieszczam go w załączniku. Jak przerysowałem ten układ do Pspice to niestety przy podstawowej symulacji wyskakują...
(...) dokonaj optymalizacji pod kątem szybkości działania. template <FloatingPoint FP> bool equalFloatingPoint(FP lhs, FP rhs) { return std::nextafter(lhs, std::numeric_limits<FP>::lowest()) <= rhs && std::nextafter(lhs, std::numeric_limits<FP>::max()) >= rhs; } Kod, który przedstawiłeś, używa funkcji `std::nextafter`...
Witam! Pisałem sobie program i natknąłem się na problem, chcę zmienną int przerobić na zmienną float, niestety nie wiem jak ;) W kursie który czytałem nie ma ani słowa o takiej zamianie. Jest ona w ogóle możliwa? Mam linijke a=a/liczby; obie liczby są typu int, a potrzebuje mieć wysoką dokładność tego dzielenia, pomoże ktoś?
Ach, przepraszam, nie wziąłem pod uwagę faktu, że twoja żarówka jest oparta na I2C. Pokazywanie surowych PWM nie jest w tym przypadku możliwe, ponieważ nie ma PWM do pokazania. Więc zakładając, że twoja żarówka BP5758, tak jak powiedziałeś w pierwszym poście, poprawnym sposobem na to jest: BP5758D_RGBCW FF00FF00FF Nawiasem mówiąc, możesz znaleźć te...
Witam, przepraszam za późną odpowiedź. . Proszę o pomoc w następującej sprawie. 1- Muszę dopracować autoexec.bat, aby urządzenie budziło się tylko co 30 minut, pobierało odczyty i wysyłało je przez MQTT Jest to bardzo proste, wystarczy zmienić czas DeepSleep w autoexec.bat 2- Chciałbym mieć określony ładunek danych publikowany za pośrednictwem MQTT...
Wiszę piwko. Faktycznie w tych miejscach czytając od tyłu i składając tego hexa, następnie konwertując go do float dostajemy te wartości. Dlaczego trzeba czytać to od tyłu? Kolejne dane to pewnie są pozostałe dane takie jakie ilość godzin pracy na danej mocy kotła, ilość rozpaleń kotła. Z najważniejszych rzeczy to zostało wyciągnąć procent nadmuchu...
Hej, zastanawiam się jak napisać funkcje z tablicą dynamiczną, która będzie zapisywać dane na zasadzie stosu. Chciałem to zrobić za pomocą realloc'a. Nie chcę używać <stack>, ani STL'a czy list. Czy jest możliwe napisanie tego za pomocą realloc'a czy malloc'a? A jeżeli tak to w jaki sposób ? float *ptr = realloc(tab, (size + 1) * sizeof...
Nigdy nie wiadomo co kupisz u wschodnich braci... ostatnio widziałem jak klient kupił LFP 16 x 500Ah a w testach wyszło ze miały 25Ah ... trochę przepaść ;) No u mnie jeśli brać pod uwagę ze 54,5V powinny być naładowane do 100% (27,2V) akumulatory mam do 29,2V. Ładuje do 54,5V i float 54V ... i na takiej bazie bez balancerów utrzymują poziom: https://obrazki.elektroda.pl/2979536800_...
Ja przeczytałem jeszcze o funkcji dtostrf(); będzie ona w tym przypadku odpowiednia ? Którą lepiej użyć sprintf(); czy tą dtostrf(); Na razie tylko poczytałeś o tych funkcjach a wkrótce się przekonasz jak bardzo one są pamięciożerne jeśli chodzi o cenny FLASH. No chyba, że do byle projektu bierzesz np ATmega128 wtedy aż takiego znaczenia to nie będzie...
Wymyśliłem taki kod i właśnie testuję : unsigned long countPulses(int pin, unsigned long durationMs) { unsigned long startTime = millis(); unsigned long pulseCount = 0; while (millis() - startTime < durationMs) { if (digitalRead(pin) == HIGH) { pulseCount++; while (digitalRead(pin)...
Miałem wcześniej podłączone dwa panele równolegle i czy mogłem je uszkodzić nie stosując diody ?? Wszystko jest możliwe. Wczoraj jak patrzyłem na inwerterze to w pełnym słońcu nie szło więcej jak 1 Amp. ładowania aku. Dzisiaj założe ten nowy duży panel sam i zobaczę czy się poprawi. Tak jest - na spokojnie sprawdź, mając nowy panel. Prąd rzeczywiście...
Liczba: 8002930403 ma 10 cyfr, wiec raczej będziesz potrzebował bufora znaków (char *) o długości o jeden większego, by na ostatnim miejscu umieścić 0. Jednak liczba 20 000 000 000 ma 11 cyfr, więc buffor możesz odrazy zrobić na 12 znaków. Następnie możliwe że tracisz dokładność w wyniku działania tych trzech operacji: (12000000000/4095)*data.ctrl....
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....
Witam próbuję napisać w c++ (z biblioteką systemC) algorytm członu inercyjnego pierwszego rzędu, aby przetestować algorytm sterownika PI. Nie wiem jednak, czy dobrze rozumuję, wychodzą mi dziwne wyniki. Jeśli to możliwe, proszę o podanie przykładowych wartości współczynników (te tutaj po prostu "strzelałem"). ze wzoru: y(t) = K\cdot u(t)- T \frac {dy(t)}{dt}...
Ten bufor musi być większy (przynajmniej o jeden znak na kończący łańcuch znakowy znak o wartości 0x00), a tak naprawdę to, przynajmniej chwilowo, ten bufor powinien być tak duży aby pomieścić wynik o ilości cyfr przed przecinkiem odpowiadający nawiekszej możliwej wartości twojego float'a. Inaczej będziesz się woził z zamazaną pamięcią w jakichś przypadkowych...
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....
wiem że jakieś nadpróbkowanie tu jest ale jak to możliwe? Przecież dodaje 128 próbek i dzielę przez 128 Liczy średnią, najprawdopodobniej nadpróbkowuje. Z programu nie da się wywnioskować danych wejściowych, można tylko domniemywać. Przez 128? A dlaczego nie przez 4? Otóż jeśli używasz float, to masz możliwość zapisu tych dodatkowych bitów i to jak...
lgorek napisał: Czy dobrze to rozumiem że: String Text = String(totalMilliLitres) - zmienia liczę na tekst aby mógł odczytać ilość znaków..... Może rozumiesz dobrze; ale metoda ,w którą cię ‘wpycha’ kol. K nie jest najlepsza. Przypomina mi to grę w domino. Są o wiele lepsze metody wyświetlenia wyników dla liczb dziesiętnych (float) z poprawnie...
Testowałem ten układ cały częściowo słoneczny dzień i działał OK. Przełączał maksymalnie około 1.5 kW (jak na zdjęciu). Na wejściu z paneli podłączyłem pzem-025 (można go zasilać z mierzonego źródła), żeby porównać z czymś pomiar mocy z Arduino. Opóźnienie wyłączania FET-a, o którym pisałem w ubiegłym tygodniu, skorygowałem na razie przy liczeniu mocy:...
Przykład zmienna+=356 zmienna jest deklarowana automatycznie w bloku przydziału pamięci i może byc 1..dowolnej liczby bajtów w praktyce max 8 a przy float max 9 Na liczbach rzeczywisty operacje moa byc wykonywane normalnie (binarnie) i w kodzie BCD w którym to kodzie może sie liczy wolnie ale za to wyświetla szybciej Liczby rzeczywiste o całkowite rozrózniane...
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...
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...
Próbuje "tanim" kosztem uzyskać sensowny pomiar temperatury, w dodatku nie znam się dobrze na C 1. Powiedzmy że błąd +/-3° w oknie 0-100° było by wartością do przyjęcia. 2. Potrzebował bym możliwie dużą rozdzielczość, idealnie było by mieć 0,1° rozumiem że w przypadku megi32 i zwykłego dzielnika napięcia R=10k/NTC10k 0,2° jest realną sprawą. 3. Całość...
https://obrazki.elektroda.pl/1645139000_... Witam, sprawdź połączenia, możliwe że załączenie diody daje spadek napięcia, który dodaje Ci się do napięcia wyjściowego czujnika. Możliwe również, że masz jakiś błąd w programie - może go tu opublikuj. Błędu w programie raczej nie ma. [syntax=c]const int termometrPin = A0; void setup() {...
Optymalizacja obliczeń dla sht75 jest możliwa , nawet próbowałem. Okazało się że to skórka za wyprawkę. Trzeba stosować liczby typu Long co zjada cały zysk z typów całkowitych. Zamiast tego zrobiłem optymalizację samych funkcji przeliczających i to daje większe zyski na czasie i pamięci niż zabawa z typami całkowitymi. Tak jest przynajmniej dla mikrokontrolerów...
Dobrze jest mieć sprawdzony czujnik DS18B20, bo może być tak, że siedzisz cały dzień, w programie wszystko jest dobrze, tylko czujnik uszkodzony. No i najprościej wydrukować komunikaty na UART, sprawdzonych bibliotek jest dużo. Oczywiście LCD też może być, tylko najpierw testuję wszystkie możliwe inty, floaty, znaki i napisy, a dopiero przechodzę do...
Już widzę jak robicie falownik skalarny z obsługą Ethernetu i monitora, na procesorze z OSem. Zamiast na dwóch gdzie jeden jest na OSie i ogarnia wysoki poziom, a drugi mniejszy ma kod bare-metal do samego właściwego sterowania częścią mocy. Zaletą jest modularność. Chcesz rozbudować o WiFi lub Bluetooth albo nowy standard przemysłowy? Żaden problem...
Robię pewien układ, w którym potrzebuję komunikować ze sobą 2 mikrokontrolery stm32f103 jedynie w jedną stroną po usarcie. Będzie wysyłanych kilka float'ów z maksymalną możliwą prędkością. Jak podejść do tego tematu, użyć do tego DMA, tak, żeby procek był jak najmniej obciążony ciągłym odbieraniem danych? Wysyłanie nie będzie problem, gorzej z odbieraniem,...
float temp; float puls; float gsr ; int tempPin = A2; int gsrPin = A1; int pulsPin = A0; void setup() { Serial.begin(9600); pinMode(A0, INPUT); pinMode(A1, INPUT); pinMode(A2, INPUT); } void loop(){ //analogReference(DEFAULT); analogRead(pulsPin); delay(10); puls...
Ja ma mcoś takiego : void SendTemp(String temp, String idx) { long dec = strtol(temp.c_str(), NULL, 16); float flo = dec / 10.0; String str = String(flo, 1); ... Fantom Dzięki Fantom. strtol - tego potrzebowałem. Od wczoraj udało mi się uruchomić logowanie temperatur CO i CWU do domoticza :-) https://obrazki.elektroda.pl/3243209400_...
Witam, robie to tak jak opisane tutaj: czy wyświetlanie liczb o dużej precyzji (np 10 cyfr po przecinku) nie jest możliwe ?!?! Jeśli nie na AVR to na czym? A może to nie wina procka tylko kompilatora?
(...) ommandLength; i++) { 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("%"); } Wygląda na to, że problem leży w logice sterowania serwem. W kodzie, który przesłałeś,...
Witam serdecznie kolegów. Mam problem z odczytem danych z MAX31865. Tu jest nota katalogowe: https://datasheets.maximintegrated.com/e... Jest to przetwornik A/D dedykowany do pomiaru temperatury za pomocą czujników rezystencyjnych (Pt100, Pt1000) Zachowanie programu jest bardzo dziwne ponieważ odczytywane dane (zarówno LSB jak i MSB) są...
Aby wgrać jakieś pliki do T230 potrzeby jest kabel (mnóstwo ich jest na Allegro) oraz program Float's Mobile Agent w skrócie FMA.
Proponuję jednak ZAIMPORTOWAĆ przykład i NIE MIESZAĆ w jego opcjach, w ogóle, nic, wcale. Masz włączoną opcję "Generate Makefiles Automatically" i to nie zrobiło się samo... Generalnie rozwiązywanie każdego problemu należy rozpocząć od najprostszej możliwej strony - uruchomienia czegoś co działa, w sposób "standardowy" (bez mieszania w 100 opcjach i...
Nacisnąłem autotest PowerSet / kalibracji i po prostu działa: https://github.com/openshwprojects/OpenB... Działa również z liczbami niecałkowitymi: [syntax=c] void Test_EnergyMeter_BL0942() { SIM_ClearOBK(0); SIM_ClearAndPrepareForMQTTTesting("miscD... "bekens"); PIN_SetPinRoleForPinIndex(9,...
Nie znam się na Arudino, bo i po co miałby się tym zajmować ? Jednak widać, że sposób wyliczania temperatury na podstawie kodu z przetwornika jest błędny. Pamiętaj, że LM35 ma 10 mV/°C na wyjściu. Tzn. jeżeli np. napięcie wyjściowe wyniesie powiedzmy 265 mV to odpowiada to temperaturze 26,5 °C. Powinno być coś w stylu: [syntax=c]temp1 = ((analogRead(A0)*5.0)/1024.0)/0.01;[/syn...
- jak już poradzono, wszystkie zmienne umieścić w strukturze - proste i skuteczne, To znam i wiem, że tak to działa. Niestety, jeśli zmienne występują w różnych modułach aplikacji nie jest to możliwe a już na pewno proste. - zadeklarować nowe sekcje pamięci w obrębie EEPROM i podać adres takiej sekcji linkerowi. Znalazłem to rozwiązanie, ale jest ono...
Sorry, ale jak można nie wymagać obliczania pi? Pi jest stałą i z zasady się jej nie wylicza, tylko przyjmuje z większą lub mniejszą dokładnością. Ech, czego teraz uczą w tych szkołach :( Funkcje to nic innego, jak małe podprogramy z przekazanymi już parametrami (oraz możliwością zwracania wyniku), które realizują podstawowe problemy. Na funkcje należy...
Całkiem fajny układ. Jak na mój gust dobrze zbudowany PID (biorący pod uwagę fizyczne właściwości ciało-grawitacja) powinien sobie z tym poradzić. Zawsze można go trochę podrasować. A co do twoich pytań: 1.Float w procesorze jest tobie na grzyba potrzebny. Masz fixed-point math jak i emulację typu float w softwarze. Problem jest raczej na tyle prosty,...
Funkcja ta coś tam robi, operuje na danych i ma zwrócić wynik. Chciałbym móc jakoś sprawdzać czy funkcja wykonała się prawidłowo. Niby można by zrobić tak, że gdy funkcja zwraca wartości większe lub równe 0 to wtedy jest ok, a gdy zwróci np. -1 to znaczy, że jest jakiś błąd. Ale problem w tym, że wynikiem tej funkcji, może być też wartośc ujemna i...
Witam, 1. Nigdzie nie wywołujesz funkcji "pomiar"! Stąd też nie możliwe jest by pomiar był dokonywany. 2. Nie ustawiasz nigdzie w kodzie z którego źródła Vref ma korzystać ADC, domyślnie jest ustawiony pin AREF, podajesz na niego coś? 3. Czemu wartość rejestru z wynikiem konwersji, który jest zasadniczo signed short'em przypisujesz do float'a? Narysuj...
możliwe masz źródło. Program steruje wyświetlaczem LCD na t6963c. W define masz załączanie i gaszenie diod połączonych do lpt #include <stdio.h> #include <stdlib.h> // rand() #include <conio.h> // inp() outp() kbhit() #include <string.h> // strlen() #include <math.h> // cos(),sin()...
unikanie typedef dla struktur oraz wskaźników (jeżeli komuś się wydaje że przez to kod jest czytelniejszy to zapewniam, że tak nie jest :P) Możesz rozjaśnić? Obecnie w taki sposób tworzę sruktury (używając typedef): użwyanie możliwie wielu funkcji ze standardowej biblioteki, bez wynajdywania memcpy czy memset na nowo (w SPL widzialem taki stuff ;))...
no i ostatni problem. nie wiem dlaczego, ale podaje dobre wartości do tego: dUP=D1-D0 ; dUT=( 29* (T1-T0)/50-((T1-T0)*(T1-T0))/76666)*S/C; P=P0+(100*(dUP+dUT)/S) ; równania, a wynik jest zły. Czy jest to możliwe, że uc nie da rady tego wyliczyć Spokojnie wyliczy. W Twoim wzorze brakuje 29 - powyżej to pogrubiłem. 1. Metoda prosta i zasobożerna - uzyjemy...
http://obrazki.elektroda.pl/1970055200_1... Opisywany projekt to pierwszy czteronożny robot autora, jego projektowanie i budowa zajęły rok. Jest to robot kroczący, którego ruch opier się na obliczeniach pozycji serwomotorów i preprogramowanej sekwencji ruchów nóg. Jest to bardzo fajny projekt, wykonany własnoręcznie od podstaw. Może...
Gdzieś wyczytałem że zapis Ex.x nie jest możliwy w FX2 w dół, czyli dopiero od FX3. W żaden sposób nie ma możliwości wpisania stałej czy to w postaci np. E2.2. czy 2.2. Próbowałem stworzyć stałą lokalną i nadać jej wartość początkową ale gdy się obserwuje program online to ma ona wartość 0. Na tą chwilę wyliczam wartość używając instrukcji DEDIV dzieląc...
W SM napisano . Ball C64 which is PROC_SELECT# needs to be pulled to VCCST for Cannonlake support via 100K ohm resistor and with no resistor populated (floating pin) for Skylake. Raczej rozgladaj się za uzywka 7th - na (ali..s) bywaja od 110.$ - na (ebay) czasem za 100.$ i7-7xxxU 2.7 GHz Kaby Lake-U QKJW inzyniieryjne na (ali) za 110.$ zamieniaja SR2ZV...
Panowie, proszę o pomoc, mam zamiar zrobić 4 kanałowy woltomierz na arduino do 25v , po i2c , na wyświetlaczu 2x16.Sygnał wejściowy będzie podawany z dzielnika napięcia na porty A0-A3.Mam już przerobiony odpowiednio program jednak nie do końca, moja wiedza na tym etapie się kończy , a z arduino dopiero zaczynam (a mam już 55lat) W chwili obecnej po...
(...) User step type has %d phases and %d steps per cycle\n", num_phases_lut , i); return 0; } static CONTROL parse_ctrl_type(const char *ctrl) { if(!ctrl || !*ctrl || *ctrl == 'p' || *ctrl == 'P') return POSITION; if(*ctrl == 'v' || *ctrl == 'V') return VELOCITY; return INVALID; } Bezpośrednia odpowiedź na pytanie Przesłany kod nie jest w pełni poprawny...
Nie można tak zrobić, bo nie zgadzają się typy. Do "char" można przypisać "znak", a odczytać "znak". Do "char *" można przypisać "adres zmiennej w której jest znak ", a nie "adres w którym jest coś". Odczytać można ten adres, lub - przez pojedynczą dereferencję - znak który jest pod tym adresem. Do "char **" można przypisać "adres zmiennej w której...
Wrzucam kawałek kodu z którym mam problem, problem taki że gdy wgram na jeden procesor na którym wcześniej cos robiłem - działa, wgrywam na nowy, nie działa int2 i tylko to. podejrzewam jakąś flagę w jakimś rejestrze ale poddaje sie po dwóch wieczorach szukania, może ktoś z kolegów pomoze? [syntax=c] #define F_CPU 8000000UL #include <math.h> #include...
Witam Wszystkich, Od kilkunastu dni zmagam się z tematem poprawnej konfiguracji routera Archer VR400, który został zakupiony jak zamiennik standardowego FunBOX'a od Orange. 1.Podstawowym jego zadaniem jest umożliwienie połączenia ze zdalnych komputerów do sieci wewnętrznej tego routera i uzyskanie połączenia do komputera na którym zainstalowane jest...
Czekaj, czy można zmienić interwał raportowania na tym urządzeniu, czy nie? Nie mam już tych urządzeń we wszechświecie tuya, ale pamiętam dokładnie, że w aplikacji była opcja zmiany interwału raportowania. Domyślnie było to 90 minut lub coś w tym rodzaju. Dodano po 1 Będę konsekwentnie starał się podsumować problemy napotkane przy integracji HA. Odkrywanie...
Możesz to zrobić jak w podanym kodzie. Prawdopodobnie można zrobić prościej, ale to jedno z możliwych rozwiązań. #include <iostream> #include <conio.h> using namespace std; string st; char ch; bool bb=true,ctrl=false; int i,dl; float f; bool control(char ch) { if(ch<48 || ch>57) bb=false; if(ch=='.')bb=true;...
Zaintrygowany Qmexx postanowiłem dorzucić beczkę dziegciu do tej łyżki miodu niemniej kolega mnie uprzedził i zamknął temat. Chciałbym zapytać o jeszcze dwie dziwne przypadłości z którymi się spotkałem w czasie mojej zabawy z avrgcc. 1. xpos = (xpos%8); i voila! Kompilator potraktował zmienną i operacje na niej jako char. Czemu wcześniej nie chciał?...
0. Dla USER BUTTON nie włączaj pull-up'a ponieważ ten przycisk jest podłączony do zasilania i ma dołączony pull-down. To co obserwujesz to pewnie efekt stale wciśniętego przycisku. Vide schemat MB1035. 1. Nie wiem co jest na PB8, ale konfigurujesz to do pracy z licznikiem TIM4, CH3. Zgaduję, że to ta dioda migająca z f (15..20)Hz 2. PE9 i PE12 konfigurujesz...
Nie wykluczam, ze to może być błąd w połączniu, przy moich zdolnościach jest to nawet całkiem możliwe. całość wygląda tak (niestety nie mam schematu) https://obrazki.elektroda.pl/9589847900_... A tutaj jeszcze moj kod: [syntax=c]#define przycisk1 9 #define przycisk2 10 #define d (3000) #include <LiquidCrystal_I2C.h> #include...
Dobra okazja by to spie.... Jeśli jest to typowa filozofia Arduino, z delayami, odpytywaniem portów w pętli (a nie przerwania), to zabija większą aktywność Jak napisałem - wykorzystuje stack TCP I proste parsowanie stringa. Nie ma w tym magii, proste C portowalne na wiele platform. przyklad kodu parsowania: void parseudp(AsyncUDPPacket packet)...
Witam! for(i=1;i<=n;i++) - Kiedy piszemy i=0 a kiedy i=1? To zależy co chcesz zrobić. Jeśli chcesz aby początkowa wartość i była równa 0 to piszesz i=0 a jak chcesz aby była to inna wartość np 10 to piszesz i=10 . Przy okazji for oznacza pętle a zawartość nawiasu za for oznacza kolejno ( początkową wartość licznika pętli; warunek kontynuacji pętli;...
Witam Mam problem z działaniem log10 gdy próbuję je wykonać program się nie kompiluje i wysypują się błędy. Niestety mimo wielu prób nie udało mi się samodzielnie rozwiązać problemu. Poniżej przedstawiam wycinek kodu który powoduje błędy: #include <avr/io.h> #include <avr/interrupt.h> #include <avr/eeprom.h> #include <string.h>...
Youmound oczywiście że się da jeżeli znasz podstawy CSS'a, to żadna wyższa szkoła jazdy: margin, padding, float, czasem jakiś z-index, zamykasz to borderem i gotowe. Jak masz tabelkę 2x2 to super, problem jest niestety taki że czasem otrzymujesz do przekonwertowania monstrum gdzie struktura tabeli powala na kolana (zagnieżdżenia wielokrotne, rożne...
Witam, poprawiłem autoexec.bat i stworzyłem kilka czujników i automatyzacji w asystencie domowym. Chciałbym poznać waszą opinię i czy jest możliwe ulepszenie tego, co stworzyłem. Dziękuję wszystkim. //Configurar alias Aliases alias Set_Stop backlog setChannel 2 0; setChannel 1 0 alias Set_Open backlog setChannel 1 1 alias Set_Close backlog setChannel...
No i ślicznie, u Ciebie jest właśnie CLI tak jak być powinno. Masz zarówno dla wejścia w przerwanie jak i wyjścia. A w WinAVR brakuje tego. Jeszcze dla formalności skompiluje potem na linuksie nową wersję avr-gcc i to sprawdzę, ale póki co... A sprawdź jeszcze jak możesz, bez NO_BLOCK, tylko wstaw na początku przerwania ręcznie sei(); i ciekawe czy...
Cześć, Napisałem poniższy program do obsługi zegara elektronicznego, w zaprogramowanym czasie wyświetla kolejno czas (hh:mm) oraz temperaturę na wyświetlaczu 7-segmentowym. [syntax=c]#include <Adafruit_BMP280.h> #include <Wire.h> #include <TimeLib.h> #include <DS1307RTC.h> #include <avr/io.h> #include <avr/interrupt.h>...
Dziękuję za odpowiedź. Cenne uwagi, które potwierdzają dodatkowo, że długa przede mną droga, jeżeli chodzi o elektronikę. Planuję poszerzać moją wiedzę w tym zakresie. Jakkolwiek na chwilę obecną znalazłem lepszy (z mojej perspektywy) sposób na realizację celu. Zmodyfikowałem moduł audio, tak aby sygnał podawać nie na tranzystor tylko na wejście analogowe...
Witam, kolega Waldek zrobił fajny licznik obrotów na Arduino z użyciem czujnika Halla A3144 z softem. Film jest na YT https://www.youtube.com/watch?v=nO3DbYL_... Pytanie moje jest takie, bo ja obecnie bazuję na ESP, czy jest możliwe w jakiś nietrudny sposób wgrać ten soft do ESP? Albo w "rules"...
Czyli ujawnia się bolączka sonoff R3 dual. U mnie również padła dioda od S1. Zmierzony spadek napięcia na diodzie (napięcia przewodzenia) wynosi 0.7v i jest to chyba najzwyklejsza dioda prostownicza. Oznaczenie CC to jakiś kod producenta i tylko on wie co pod tym się kryje. Ale niech wypowie się ktoś mądrzejszy jak rozszyfrowuje się takie oznaczenia....
Jeśli koszty nie grają roli to jest możliwość: https://www.spiedigitallibrary.org/confe... Pytanie czy znajdziesz kogoś, kto jest w stanie to zrobić.
możliwe, ale jak to zastosować bo znalazłem taką instrukcje ale nie działa mi http://www.ely.pg.gda.pl/~mczyzak/Infsem... Dodano po 3 zastosuje to i odezwę się w razie problemu Dodano po 11 Wpisałem i tylko nie wiem co wpisać za ten zx=complex_add(x,y,z,w); [syntax=c]#include<stdio.h> #include<stdlib.h> #include<complex.h>...
rzeczywiście możliwe rzeczywisty możliwe zaokrąglać float
sieć slave master intel 4965agn wyliczenia ogrzewanie podłogowe
elektrownia wiatrowa alternatora otwarty emiter
Czyszczenie klap wirowych Audi A6 C5 163KM Punkt strojenia zero detektora w Menuet UKsrf