Po konwersji część ułamkowa zostaje "utracona". Zmienna przyjmuje wartość jedynie części całkowitej bez zaokrąglenia, czyli: 2,9 (single) po konwersji na integer to 2
Kilka oczywistych oczywistości na temat DS odczytane dwa bajty zawierające temperaturę zestawione razem w zmienną o długości 16 bitów dają w efekcie integera. Integer to jak wiadomo liczba ze znakiem więc wystarczy tylko odciąć ułamek przez podzielenie przez 16 (bo część ułamkowa to w DSie 4 bity) i masz gotową wartość w stopniach celsjusza. Jeśli cześć...
Najlepiej poprzez zaokrąglenie daty do liczby całkowitej w dół, wyszukaj odpowiednią funkcję bo nazwy funkcji nie pamiętam. Następnie otrzymaną wartość sformatuj jako datę. Może to być tak ale pewności nie mam. =Zaokr.w.dol(A2,0) Na przyszłość zapamiętaj, że Excel zapisuje datę i godzinę jako liczbę rzeczywistą ( z przecinkiem). Część całkowita to data...
A może kolega wyjaśni z czego wynika stała 0,60800774943493703584113658379077 i dla czego mój uC poprawnie odczytuje pozycję z GPS'a bez korekcji. Witam, w obecnej chwili tez zajmuje się protokołem NMEA. Moje uwagi: 1. Kolega wektor1981 po prostu podzielił 18,83 przez 30,97 i wyszedł mu po prostu powyższy współczynnik. 2. Obliczenia powyższe są jak...
Opis przesyłu (warstwa fizyczna): SCK - pin 3 - Serial clock CE - pin 2 - chip enable SDI - pin 6 - serial data input SDO - pin 5 - serial data output Stan spoczynkowy łącza: SCK=0 i CE=0 Dane podawane na SDI (do układu) są zatrzaskiwane w układzie TC72 przy zmianie SCK z 1 na 0 Dane pojawiające się na SDO (wyjście ) są wysuwane przy zmianie SCK z...
Zgodnie z obowiązującymi przepisami, do nowej Unitry musiała zostać użyta cyna bezołowiowa. Akurat myli się kolega i dobrze byłoby przytoczyć przepisy na które się powołuje. Tak działa powtarzanie zasłyszanych bzdur, które narzucają nam dyrektywy unijne bez znajomości czym te dyrektywy są i jak brzmią w pełnym tekście. A google u ciebie nie działa?...
Ciało doskonale czarne w temperaturze 40 stopni celcjusza emituje ok. 550W/m2. Emisja zachodzi całą powierzchnią czyli z przodu oraz z tyłu! Ta wartość nie jest ułamkowa nawet dla polerowanego metalu czy białej błyszczącej farby emitujących 10% czyli tu tył absorbera traciłby 50 W/m2. W zimowy dzień gdy Słońce jest nisko oznacza to ok. 10% straty. Przy...
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...
(...) matować liczby z zerami wiodącymi (najlepiej bez sprintf zajmującego dużo FLASH), zwłaszcza w wypadkach jaki podałeś przy DS18B20 int16_t fraction = (temperature & 0xF) * 625; // Część ułamkowa, 625 = 0.0625 * 10000, przecież gdybyśmy wyświetlili samą liczbę po przecinku mielibyśmy 0.625 zamiast 0.0625 ? ### 1) Weryfikacja w asemblerze na uC...
problem z wierszem E5, nastąpił przeskok daty na grudzień To chyba ze względu na późną porę :oops: błąd "rachunkowy" - w kolumnie E zamiast "=D3+C3*24+G3" winno być "=D3+C3*1+G3" :D Przy obliczeniach czasowych zawsze warto pamiętać, iż "12-11-19 8:00" to dla Excela liczba "43781,33333" :idea: , przy czym wartość całkowita oznacza Datę , a wartość ułamkowa...
Jak mógł byś bliżej naświetlić i pomóc zrozumieć jak można by to zrobić był bym wdzięczy. Domyślam się iż chodzi tu o rozbicie odczytanego wyniku na dwie zmienne typu Byte lub Long. W pierwszej zmiennej mamy część całkowitą wyniku, a w drugiej część po przecinku. Można i tak. Można też wpakować cały wynik do zmiennej całkowitej tak, aby znajdowała...
Trochę to dziwne, że kaza traci pliki. Nie napisałeś ile tych plików zacząłeś ściągać. W opcjach jest nastawialne ograniczenie ilości jednocześnie ściąganych plików, spróbuj tam dać max (chyba 50). W kazie nigdy mi się nie przytrafiło żeby coś wsiąkło, wiele razy używałem przycisku RESET bo coś się zawieszało, ale kaza ssała dalej - przeciwnie do Imesha,...
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.
Witam :) Chciałbym kupić multimetr , ogólnie na elektronice się mało znam tyle co w robocie potrzebne sprawdzić bezpieczniki napięcia faza itp Kupiłem miernik z allegro za 8 zł :P. No i mogłem się spodziewać że z zasilacza 24v pokaże mi 23.84 miernik od razy poleciał do śmieci Szukam miernika do 100zł który jak zasilacz ma 24v to multimetr też pokaże...
Znasz (sprawdziłeś) takie które się nie grzeją nadmiernie? Uważam, że taka przetwornica to mniejsze ryzyko uszkodzenia laptopa niż zasilacz. A i tak koszt ok 100 pln to ułamkowa wartość nowego laptopa. dzieciaki w czasie jazdy będą oglądały głównie filmy, at jak wiadomo pożera sporo energii.
Po pierwsze poznajmy sposób tworzenia bitu. Każdy bit składa się z kilku segmentów czasowych o pewnych określonych funkcjach, których wyjaśnianie nie ma znaczenia dla tego przykładu, oto z czego składa się bit: BIT_TQ = SYNC + PROP_SEG + PS1 + PS2, gdzie: BIT_TQ - liczba kwantów czasu w bicie (o kwantach czasu poniżej) SYNC - synchronizacja PROG_SEG...
Witam kolegów! Mam taki problem, na początek troszkę teorii: ROUND Przeznaczenie: Zwraca liczbę zaokrągloną do najbliższej wartości całkowitej. Składnia: zmienna = ROUND( wartość ) gdzie: zmienna- dowolna zmienna typu Single, do której wpisana będzie wynik działania funkcji, wartość- liczba którą całkowita część powinna być zwrócona. Opis: Funkcja dokonuje...
Pod warunkiem, że wartość nie przekroczy 255. Podział na bajty składowe singla w pamięci masz przedstawiony! Część całkowita? Funkcja INT() Przeznaczenie: Zwraca całkowitą cześć podanej liczby. Składnia: zmienna = INT( wartość ) gdzie: zmiennadowolna zmienna, do której wpisana będzie całkowita część podanej liczby, wartośćliczba której całkowita część...
Po prostu zgrały się w nieodpowiednim momencie jakieś krytyczne czasowo elementy programu. Np. odczyt zegara RTC po I2C. Albo co gorsza jakieś wewnętrzne mechanizmy BASCOMa działające na przerwaniach. W normalnym języku programowania jak C, to definicja częstotliwości rezonatora nie ma wpływu prawie na nic (jedynie na funkcje opóźniające). A w BASCOMie...
Witam. Czy jest w Bascomie jakaś procedura która bezpośrednio sprawdza, czy liczba przechowywana w zmiennej single jest całkowita (naturalna)? Ewentualnie jak przy użyciu jak najmniejszej liczby kroków pośrednich sprawdzić czy wartość po kropce dziesiętnej ma wartość 0? Chcę użyć tego jako warunku i gdy single zawiera część ułamkową wyświetlić z maską...
Witam po bardzo długiej przerwie. Który parametr muszę zmienić aby mierzyć prąd w okolicach 10A? [syntax=text] /* * main.c *Multimetr dwu kanałowy z pomiarem napięcia i prądu * Created on: 2012-11-21 * Autor: Piotr Rosenbaum */ #include <avr/io.h> #include <util/delay.h> #include "LCD/lcd44780.h" #include <avr/eeprom.h> #define KEY_PIN...
Chodzi o to że po prostu nie wiem co trzeba napisać. Wiem tylko że ds18b20.h i ds18b20.c muszą zostaćtak jak są, a do main.c trzeba coś dopisać ale nie wiem co. Chyba tak powinien wyglądać odchudzony kod ale nie wiem co dalej. [syntax=text]#include <stdio.h> #include <avr/io.h> #include <util/delay.h> #include "ds18b20.h" int main(void)...
Innymi słowy zamiast float 27,6 to liczba całkowita uint16_t (unsigned int) 276, następnie wartość można do wyświetlenia rozbić na dwie części: całkowita = 276/10 ułamkowa = 276%10 Do porównania (obróbki) nie ma takie potrzeby. Bo co za różnica czy będzie 23.4 > 24.7 czy to będzie 234 > 247 wynik i tak taki sam...
Niestety nie podałeś jaki jest błąd. Nie pamiętam dużo z pascala, ale na 99% czepia się tego, że pierwiastek z liczby nie jest raczej liczbą całkowitą i trudno to zapisać w typie integer bez konwersji. Masz dwie możliwości: -Konwersja pierwiasta do typu integer (bodajże funkcja Round) , ale wtedy tracisz całą wartość ułamkową... -Zmiana typu integer...
oryginał: /* Plik "main.c" KURS AVR-GCC cz.5 (xyz.isgreat.org) Termometr cyfrowy, przykład nr. 3 (schemat i opis działania w artykule) atmega16 (1MHz) */ #include <stdio.h> #include <avr/io.h> #include <util/delay.h> #include "hd44780.h" #include "ds18b20.h" /* W tablicy będą formowane...
Mam teraz innego rodzaju problem, brakuje mi pamięci na uruchomienie programu. [syntax=c] #include <avr/interrupt.h>// Definicje nazw pinow układu #include <avr/io.h> #include <util/delay.h> #include "ds18b20.h" int main(void) { double temp; unsigned char ds18b20_pad[9]; DDRD = 0xff; DDRB = 0xff; PORTB = 0xff; PORTD = 0xff; while (1)...
Witam, mam następujący problem. Chcę zaprogramować atmega 8 tak by przy określonej temp włączyła diodę. Temp mierze czujnikiem ds18b20 wykorzystałem kod który znalazłem w sieci. Całość pisana w C [code][syntax=c] #include <stdio.h> #include <avr/io.h> #include <util/delay.h> #include "ds18b20.h" int main(void) { DDRD |=(1<<PORTD);...
Witam chciałbym zrobić sobie termometr wyświetlający na wyświetlaczu lcd 2x16 podpiętym do atmegi8 temperaturę w stopniach celcjusza i zaraz obok w tej samej lini stopnie w skali Farenheita, próbowałem coś zrobić ale wyświetla mi tylko stopnie celcjusza (czyli temperatura się zmienia po ogrzaniu lub ochłodzenia czujnika) natomiast w stopniach Farenheita...
oto kod mojego programu, właśnie niewiem czy napewno 176 to numer stopnia, skąd jeszcze mogę się tego dowiedzieć? niewiem o co ci chodzi z tym put_s chyba powinno być lcd_puts(zmienna); #include <stdio.h> #include <avr/io.h> #include <util/delay.h> #include "hd44780.h" #include "ds18b20.h" char stopien=176; char...
Jeżeli akustyka to może chodzi o generator cyfrowy z interpolacją. Polega to na tym, że masz tablicę z próbkami funkcji np. sinus, w sumie N próbek. Generator na podstawie takiej tablicy może pracować na kilka sposobów: jeżeli odtwarzasz (co okres próbkowania) kolejne próbki to otrzymujesz częstotliwość wyjściową: Fwy=\frac{Fp}{N} Jeżeli odtwarzasz...
format liczby typu IEEE float (tzw. real*4 format): SXXXXXXX XMMMMMMM MMMMMMMM MMMMMMMM gdzie S - znak, X - wykładnik, M - mantysa S=0 - znak dodatni S=1 - znak ujemny mantysa jest to stałoprzecinkowa część ułamkowa liczby x=1.MMMMMMMMMMMMMMMMMMMMMMM wykładnik to stałoprzecinkowa liczba: y = XXXXXXXX - 127 wartość liczby to: z = (-1)^S * x * 2^(y) Mam...
Dzięki wszystkim za pomoc. Oto mój program: [syntax=cpp] while(1) { dana = USART_Transmit_back(); // odczyt temperatury if (dana == 49) // 49 to tak naprawdę 1 wysyłana z kompa, zignorowałem dlaczego:) { PORTA = 0x01; // zapalenie diody, żebym wiedział która dana aktualnie jest czytana if(ds18b20_ConvertT()) /* Funkcja 'ds18b20_ConvertT' wysyła do układu...
http://upload.wikimedia.org/wikipedia/co... Wartość liczby zmiennoprzecinkowej jest obliczana wg wzoru http://upload.wikimedia.org/math/2/1/9/2... gdzie: * S (ang. sign) – znak liczby, 1 lub -1 * M (ang. mantissa) – znormalizowana mantysa, liczba...
[syntax=c] #include <stdio.h> #include <avr/io.h> #include <util/delay.h> #include "ds18b20.h" #include <avr/interrupt.h> #include <stdbool.h> #define F_CPU 8000000UL #define LED_0 0b11000000 #define LED_1 0b11111001 #define LED_2 0b10100100 #define LED_3 0b10110000 #define LED_4 0b10011001 #define LED_5 0b10010010 #define...
Generatory cyfrowe przebiegów arbitralnych (nazwa naukowa) ----------------------------------------... 1. Częstotliwość wyjściowa przebiegu fwy=k*fp/N gdzie N długość jednego okresu w próbkach (zwykle N jest potęgą liczby 2) k - przyrost fazy pomiędzy kolejnymi próbkami (1, 2 , .... , (N/2)-1 fp - częstotliwość...
Nie do końca rozumiem! Pobrane z Ds'a dane są zapisane w tablicy: unsigned char ds18b20_pad[9] Trochę niżej składam to i dzielę na 16 czego wynikiem jest zmienna temp zadeklarowana oryginalnie jako double: [syntax=c]temp = ((ds18b20_pad[1] << 8) + ds18b20_pad[0]) / 16.0 ;[/syntax] Zmienna temp była typu "double" i program działał, natomiast zmieniłem...
Witam Szanownych forumowiczów! Naukę z mikrokontrolerami zacząłem dość niedawno i od pewnego czasu męczy mnie pewna sytuacja z którą nie potrafię sobie poradzić dlatego zwracam się z prośbą do was. No więc do sedna programuję na płycie EvB 4.3 zakupionej w internecie program jaki używam do programowania to AVR Studio 5.0. Mój problem polega na tym,...
Bo jak już uda mi się skomunikować po przewodzie będę próbował transmisji bezprzewodowej 433. Zmieniłem kod i odbiornik teraz wykorzystuje przerwania. Niby już transmisja działa ale nie odbieram tego co bym chciał czyli temperatury, a raczej jej wartość jest nie prawidłowa. Podejrzewam że porąbałem coś z typami zmiennych http://obrazki.elektroda.pl/9814723300_1...
Kolejny zestaw pytań: 1. Czy ta metoda powoduje dokładniejsze czytanie tablicy? 2. Załóżmy, że mam 1024 elementy w tablicy, ale akumulator fazy jest 16-bitowy (dla uproszczenia). Mam takie dX, że tablica będzie odczytana w 19 krokach. Krok dX będzie (1023/19=53.895), ale zostanie zaokrąglona cześć ułamkowa i wyjdzie 53, co nie pozwoli na przeczytanie...
Ale w jaki sposób dopisać do mojego pliku.h te drugie wyjście? Dodano po 48 W głównym programie main.c jest odczyt z czujnika ds18b20 podpiętego do pinu PA0 a na chwilę obecną temperatura zew i wew jest czytana z tego samego czujnika bo nie potrafię zdefiniować drugiego czujnika na pinie PA2.Czy mam stworzyć nowy olik z rozszerzeniem .h? np:ds18b20x.h?...
Witam, otóż posiadam czujnik dallasa ds1820 nie ds18b20 i mam taki problem ponieważ nie mogę znaleźć żadnego kodu by odczytać temperaturę, próbuję korzystać od ds18b20 ale wynik mam równy 4. Oto kod: main.c [syntax=c] if(ds18b20_ConvertT()) { /* 750ms - czas konwersji */ _delay_ms(750); /* Odczyt z układu ds18b20, dane zapisywane są w tablicy ds18b20_pad....
Witam, mam problem, kiedyś robiłem termometr oparty na atmega8, z podpiętym lcd i czujnikiem ds18b20, działało elegancko, teraz chcę wykorzystać starą płytkę, uruchamiam a tu nie wyświetla temperatury, tekst na wyświetlaczu jest elegancko, nawet mam podpięty do portu com i też działa, a z tym czujnikiem się już kilka dni użeram i nic. Testowałem na...
Ten plik o ile się nie mylę to jest sama biblioteka, w dodatku niekompletna ponieważ kompilator wywala całą masę błędów :/ Edit. I jeszcze jedno znalazłem kolejny przykład spróbowałem skompilować i tym razem dzieją się takie cuda: http://scr.hu/8e6i/jt5tp kody: DS18B20.h [syntax=c]#ifndef DS18B20_H #define DS18B20_H /* DS18B20 przyłączony do portu PA0...
Ewidentnie brakuje jednego bitu (piątego, nr. 4 licząc od 0). Dlatego zamiast 31 (16+15) wyświetla się 15 (brakuje 16, czyli 2^4). Jakaś pomyłka w kodzie. Nie chce mi się analizować twojego kodu. Dodano po 4 Mam tu jakiś kod ze szkolenia napisany przez jednego z moich kursantów. Atmega16, hd44780, DS18x20. Zobacz jak wygląda konwersja temperatury. I...
Dzień dobry, Korzystam z gotowego kodu na komunikację przez protokół 1-wire oraz odczyt temperatury z czujnika DS18B20. Dla tego kodu prubuję zmienić rozdzielczość czujnika z 12bit na 9bit. Proszę o weryfikację kodu, a w zasadzie miejsca moich zmian, czy w dobrym miejscu kodu zmieniam wartości bajtów rozdzielczości czujnika? Oraz czy w ogóle robię to...
Witam. Co wy na to ? Bardzo fajne, raz wklepać a potem używać, ale mam pytanko, co robi kompilator kiedy z tego dzielenia wychodzą części ułamkowe? Część ułamkowa jest obcinana, bo i tak nie da się jej wpisać w 8-bitowy rejestr licznika. Chcąc osiągnąć jeszcze większą dokładność, można próbować na mniejszej skali preskalera (np. 256) i/lub większej...
Witam ponownie. Prośba jak w poprzednio. Zupełnej zmianie uległ sposób sterowania grzałkami. Obecnie problem polega na tym, że na wyjściu grzałek, bez względu na temp., nic się nie dzieje. Załączam zmodyfikowany kod: include <stdio.h> #include <avr/io.h> #include <util/delay.h> #include "hd44780.h" #include "ds18b20.h"...
Witam! Zrobiłem sobie termostat i wszystko ładnie po podłączałem oraz oprogramowałem. Jest jednak jeden problem: chce sobie zrobić podmenu (ustawianie histerezy). Na początek tworzenia w/w podmenu chciałem sprawdzić, czy są wciśnięta oba przyciski, a nastepnie wyczyścić wyświetlacz i wypisać aktualną temperaturę. Problem jest jednak taki, że wszystko...
Ogólna zasada generowania jest taka: Masz tablicę spróbkowanego sinusa, np. cały okres to 256 próbek (numerowanych od 0 do 255) Próbki te odtwarzasz przesyłając je co stały okres czasu Tp=\frac{1}{fp} do przetwornika cyfrowo analogowego. Częstotliwość sygnału jaką uzyskasz tą metodą to: fwy=\frac{fp}{N} fp - częstotliwść próbkowania N - ilość próbek...
Witam, mam pytanie odnośnie przesyłania pomiaru temperatury z czujnika DS18b20 przez RS232 do PC. Korzystam z płytki edukacyjnej: http://are.net.pl/?id=products&cmd=9... Do uC mam podłączony czujnik DS18b20, wyświetlacz LCD. Pomiar temperatury na LCD wyświetla się poprawnie, to samo chcę wysłać przez RS232 do PC i już nie działa, w ogóle...
przekroczona wartość wartość zapalenia przekroczyć wartość wartość zapalenie wartość szczytowa
karta pamięci hasło schemat wyłącznik schodowy mikrofon pomiary kolumn
toshiba odwrócony obraz toshiba odwrócony obraz
Setra 416 GT-HD – trudności z włączaniem biegów po trasie, skrzynia ZF, sprzęgło, pneumatyka Schemat elektryczny piły taśmowej Würth Master PBS 120 – dostępność, diagnostyka, serwis