Poczyniłem pewne obliczenia i zdaje się, że zaczynam rozumieć. Liczby signed short, czyli wartości z zakresu od -32768 do 32767 podstawiam do wzoru 511 - (1023 * liczba / 65535); 1. Dla wartości -32768 : 511 - (1023 * -32768 / 65535) = 511 - (-511) = 1022 2. Dla wartości 0 : 511 - (1023 *...
Dzięki za podpowiedzi teraz wiem że double jest liczbą zmiennoprzecinkową i występuje jako liczba dodatnia jak i ujemna. Teraz zostaje tylko przeliczanie na liczbę ........... a to mi się wydaje jak na razie nie tak proste. To znaczy że nie wiem jak się za tą double zabrać. A może na początek...
Ok, po długich mękach udało mi się to ustrojstwo uruchomić ale jest jeden problem. Jakim cudem pętla opóźniająca (ta zaraz przed loop "waitms 1000") wpływa na wyniki pomiarów ! W zależności od tego jakie dam opóźnienie to zmienia się wynik ciśnienia atmosferycznego. Poniżej zrzut...
Szesnastobitowa liczba bez znaku oraz ze znakiem w kodzie uzupełnień do dwóch, będzie przyjmowała następujące wartości: uint 0 = int 0 = 0x0000 = 0b0000 0000 0000 0000 uint 32767 = int 32767 = 0x7fff = 0b0111 1111 1111 1111 uint 32768 = int -32768 = 0x8000 = 0b1000 0000 0000 0000 uint 65535...
No dobra no to w moim przypadku operuję na próbkach 16 bitowych, ale na dwóch kanałach. Poza tym ja piszę w C++ więc sam ustalam poziom odniesienia :) Pojedyncza próbka ma u mnie wartość z zakresu 0...65535 więc robię dokładnie tak jak mówisz: a) odejmuje 32768 b) mnożę razy dwa c)...
Witam Posiadam moduł mini2440 na którym odpaliłem z karty mmc dystrybucje Angstrom: U-Boot 1.3.2-mini2440 (Feb 24 2010 - 13:04:49) I2C: ready DRAM: 64 MB Flash: 2 MB NAND: 256 MiB Found Environment offset in OOB.. USB: S3C2410 USB Deviced In:...
Ja nie wiem, co to jest bajt "młodszy" i "starszy" - chyba oba są w tym samym wieku, skoro wychodzą z tego samego procesora W 16bitowym słowie bajt starszy to amiast wziąć po ludzku mikrokontroler z setką nóg i dużą pamięcią w środku tworzysz jakieś potworki. Czy ja wiem czy dekoder...
Przejrzałem naszą dyskusję i zajrzałem do dokumentacji Bascom i moim zdaniem masz w swoim programie problemy z arytmetyką i typami danych W Twoim programie ma miejsce następujący tok obliczeń: 1. pobierasz z ADC dwie liczby 8-bitowe w zakresie 0..255 każda (bez znaku): Pomiarl i Pomiarh 2....
Witam Jestem posiadaczem Bm-500 od ponad roku, swietnie sie on sprawuje, aktualnie wgrany mam firmware 2.19, lecz ostatnio (znow mam troche czasu) znalazlem v.2.20 i zarzuce, lecz mam inny problem, otoz potrzebuje uruchomic usluge halonet (telefonia internetowa) dla jednego z userow i w tym celu przekierowalem...
Witam Mam moduł Czy udało sie komuś zmusić w tym uC RTC do pracy z zewnętrznym kwarcem 32768Hz ? Na generatorze taktującym procesor RTC działa dobrze a jeżeli ustawie żeby taktowanie było z dodatkowego kwarcu mam taki efekt że zegar działa bardzo wolno(~1200 razy za wolno). Wymieniałem...
Hmmm. jak chcesz wykres, jak z oscyloskopu, to się robi w skali liniowej. no chyba, ze VU-meter, czy inszy wskaznik poziomu. Na dB przeliczasz tak samo, też trzeba to przeskalować do zakresu 0..1. Różnica polega na tym, że najpierw trzeba sobie policzyć wartość amplitudy, metod jest kilka,...
Witam. W czesci drugiej "Programowanie procesorow w jezyku C" - Elektronika dla Wszystkich 6/2005 jest tabela z ktorej wynika, ze zmienna typu unsigned short int przyjmuje wartosci z przedzialu 0..65535. Moglby mi ktos w takim razie wytlumaczyc, dlaczego po zadeklarowaniu zmiennej typu unsigned...
Mam pytanie do programu z poprzedniej strony generującego 4 częstotliwości.Co się stanie z zawartością zmiennej temp jeśli wpiszemy do niej wartość przekraczającą zakres int? Pytam bo TAR ma zakres od 0 do 65535 zaś zmienna int to <-32768, 32768>.
Witam, Mam pewne pytanie, bawię się z podłączonym LCD 2x16 oczywiście HD44780, biblioteka radzia. Wyświetlam zmienną int(16 bit), konwertowaną na string za pomocą funkcji itoa . #define F_CPU 1000000UL // taktowenie wewnetrznym MHz #include <avr/io.h> #include <util/delay.h>...
Dzięki za odp. Z grubsza już działa, oczywiście okazało się, że "plusy" trzeba było podłączyć do "/D" w sterowniku, analogicznie "minusy" do "D". Pomogły testy na RS-232 gdzie był tylko TX i RX;) Druga rzecz to w XP-Builderze przy wyborze sterownika trzeba było zaznaczyć "Master" co...
Witam, Jestem początkującym w C (AVR GCC). Przez całe lata programowałem w Bascomie, i przyszedł czas na przesiadkę. Na warsztat wziąłem Attiny26 i chciałem zaprogramować jakiś programik z przerwaniami (od Timer 0). Niestety, jak ustawię przerwania, to nie chce wykonywać nic w pętli...
Witam Po żmudnych testach uruchomienia DMA w taki sposób aby działało z drugiego licznika coś udało mi się osiągnąć chociaż wyniki mnie zaskakują. wklejam cały kod proszę o sugestie chodzi mi głównie o timery i DMA reszta jest tylko żeby testować program....
Step 5 umozliwia dodawanie i odejmowanie liczb 16-o bitowych ze znakiem (zakres od -32768 do +32767). Ale czy jest mozliwość dodawania i odejmowania liczb 16-o bitowych bez znaku ? (zakres od 0 do 65535; 0h to 0, a FFFFh to 65535)
Witam. int ma zakres do 65535 (unsigned int 0 - 65535, signed int -32768 - 32767 ), spróbuj coś pokombinować z unsigned long int lub z float.
Potrzebuję umieścić dużo danych w pamięci Flash, jednak prosty sposób ogranicza się tylko do 64 kB, ja potrzebuje więcej. Robię wiec tak: Spróbuj, nie testowane... [syntax=c]const uint16_t Tablica01[2048] PROGMEM = {65535,65534,.......3,2,1,0}; const uint16_t Tablica02[2048] PROGMEM...
CHAR powinien być bez znaku, bo kody znaków są od 0 do 255, a nie od -128 do 127. Najgorsze jest to, że co jest SIGNED, a co UNSIGNED, to zależy od kompilatora (tak jest na przykład z typem BYTE, na większości kompilatorów jest SIGNED, no ale nie na wszystkich :D ). dla bezpieczeństwa należy...
char: -128..127 unsigned char 0..255 int -32768..32767 unsigned int 0..65535 long -2147483648..2147483647 unsigned long 0..4294967295
W Timerze ustawionym na 100ms jest wstawiona procedura wytwarzająca 4410 próbek dzwięku stereo (44100 próbek na sekundę). Próbki są typu Word (0..65535 z wartością średnią 32768). Jak je teraz w czasie rzeczywistym odtworzyć w systemie? Nie chodzi mi o odtwarzanie wav-ów z dysku ani o coś...
Witam.Jak w podanym programie moglbym zwiekszyc opoznienia potrzebne do inicjacji wyswietlacza.Asembler jest czarna magia dla mnie wiec prosil bym o gotowa recepte.Z gory dziekuje ;Data: 04.06.2007 ;^^^^^^^^^^^^^^^^^^^^^^^^^... obslugi PT100 na AVR ATmega8...
Problem wynika z ograniczeń wielkości danych typu int (-32767 do 32768). Zacznij od przejścia na typ bez znaku (0 do 65535): int x=0; na unsigned int x=0; x=(int)y; na x=(unsigned int)y; Jeśli nie wystarczy zamień int na unsigned long int (podobnie występujące niżej int a i int y).
Sciag sobie CoolEdit, tam mozna ładnie zapisac plik wave jako plik tekstowy - ciag próbek - dzieki temu ładnie widac o co w tym chodzi. Konkretnie - dzwiek cyfrowy to jak wiadomo sygnał dyskretny, ciąg kolejnych próbek dzwięku. Przy 16 bit'ach i 44100Hz bodajże, masz 44100 próbek sygnału...
Przetwonnik zlicza napięcia tylko do 2047, pokazując ujemne napięcie nie ma znaku minus i wartość, tylko np 65320. Czyli przetwornik zwraca wyniki w kodzie U2. Tam nie ma znaku minus. Jest za to przesunięcie poziomu. Najprościej mówiąc, zastosowanie takiej funkcji do konwersji: Napiecie...
Dzięki elektrit, naprowadziłeś mnie na dobry trop;) Wszedłem w adaptacje do kanału 03 i tam jest możliwość adaptowania numeru 32768. Po "wejściu w niego" jest okienko do wpisania wartości (0~65535) I nie wiem jaką wartość muszę wpisać aby zmienić te obroty.:/
Juz ci mowie co robisz zle :] Twoja funkcja wyswietlajÄ ca bierze TYLKO PIERWSZY znak z tabelki, bo funkcje piszlcd wywolujesz tylko raz, a w funkcji nie masz petli ktora wyrzucalaby na wyswietlacz kolejne znaki... Z tego co widze masz juz gotowa funkcje ktora potrafi wyrzucac na wyswietlacz...
witam Próbuje napisać program który po wgraniu do atmegi będzie pokazywał napięcie i prąd. 10 bitowa rozdzielczość przetwornika A/D jest dla mnie nie wystarczająca, Postanowiłem sięgnąć po technikę zwaną nad próbkowaniem (oversampling) Atmege programuje w bascomie znalazłem artykuł...
wdogli ty pisałeś ze pod atmegą32 działa Ci SHT75. Ja pracuje na SHT21. Z tego co pamiętam u ciebie występowała nietypowa sekwencja START/STOP. Cyrki, cyrki i jeszcze raz cyrki. Chciałbym mieć chociaż jednego pewniaka, albo dobry kod albo poprawnie zlutowany i sprawny czujnik. Obecnie wyświetla...
Blok skalowania "SCALE_INT" - skalowanie liniowe z zakresu wejściowego do wyjściowego. Jeśli chcesz przeskalować z zakresu przetwornika 4-20mA podłączonego pod wejście AI18 (0-32000 działek w sterowniku) to odpowiednio ustawiasz na wejściu ILO=0, IHI=32000 (zakresy wejściowe skalowania). Na...
Witam, timery w stm'ach są bardzo rozbudowane i staram się zrozumieć koncepcje działania. Napisałem standardowy kod na miganie dwiema diodami: TIM_Period i TIM_Pulse . Przy takich wartościach diody są idelanie zsynchronizowane (jedna mruga dokladnie 2 razy szybciej niż pierwsza), ale gdy...
wygląda to tak jak by nie widział gornego ramu , ale skoro tak to dlaczego go zapisuje ? Napisz nieco inny program. Od adresu 0 do 23295 (ROM+SCREEN) wpisz jakąś wartość, powiedzmy 85 (patern 01010101). Teraz w drugiej pętli zapisuj 170 (patern 10101010) w przedziale adresów 32768 do 56063,...
Typ uint16_t ma zakres 0..65535, więc niekoniecznie uda Ci się to, co planujesz. Z kolei typ int na 8-bitowcach ma zakres -32768..32767, więc jeszcze gorzej. A to wyrażenie: int metry = (int)(stopy * 3 / 10); Poprawnie policzy się tylko dla liczb z zakresu 0..10922. Inne efekty, o których...
Z A15 nie będzie prawdziwej "dziury" tylko nadpisywanie bloków, np: 0 - 32767 --> OK 32768 - 65535 --> nadpisywanie adresów od 0 - 32737 65536 - 98303 --> OK ... EDIT: A16 i A17 są zamienione miejscami ale dla ciągłości pamięci nie ma to znaczenia.
To co piszesz nie trzyma się kupy kolego. akurat ten wariant jest dla liczb <0 do wartości -32767. Chcę z tego zakresu uzyskać odpowiadające wartości dodatnie z zakresu 0 ... 65535 a wczesniej Kiedy wartość xx przekracza mi 16384, wartość yy przybiera wartości ujemne od -32768 rosnąc...
'-21890', a oczekiwano '43646' Podpowiadam: 65536-21890=43646 A... jak? I dlaczego 65536? Jakiego kompilatora użyłeś? Jeżeli Turbo Pascal to typ Integer ma długość 16 bitów. 16 bitów bez znaku to zakres 0..65535. 16 bitów ze znakiem to zakres -32768..32767. Jak to poprawić? 1....
Tak zrobiłem, tylko że niestety wyświetla mi w zakresie 0 .. 65535, a ja chcę zobaczyć taką jaką pokazuje czujnik czyli -32768 .. 32767.
Witajcie moi drodzy Przedstawię tutaj mój projekt zewnętrznego wyświetlacza temperatury procesora z komputera. Wyświetlacz pokazuje temperatury od 0 do 99C, jednocześnie odpowiednio dobierając swój kolor. Wyświetlacz zrobiony jest samodzielnie od 0 w oparciu o diody WS2812B, sterowany...