przesunięcie bitowe atmega8

Znaleziono około 67 wyników dla: przesunięcie bitowe atmega8
  • AVRStudio4 - przesunięcie bitowe nie działa w trybie krokowym, ATmega8, avr-gcc

    witam, właściwie rozpoczynam przygodę z AVR'ami i językiem avr-gcc i muszę przyznać, że kompletnie zgłupiałem poniżej zamieszczam kod (jako wycinek większej całości), który moim zdaniem nie działa prawidłowo używam AVRStudio 4 ustawienia projektu: 1. ATmega8 2. fcpu 1000000 3. optymalizacja -O0 (wyłączona) oto kod : [syntax=c] #include <stdint.h>...

    Mikrokontrolery Początkujący   26 Lis 2013 11:38 Odpowiedzi: 4    Wyświetleń: 1068
  • [ATmega8] ATmega8: Wewnętrzny pull-up nie działa z wieloma przyciskami - co robię źle?

    Dzieki wielkie, ustawilem przesunięcie bitowe tak jak powiedziales i zadziałało :)

    Mikrokontrolery Początkujący   08 Wrz 2012 09:14 Odpowiedzi: 2    Wyświetleń: 1746
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • [atmega8] Dlaczego w funkcji WyswietlHex użyto przesunięcia bitowego o 12 miejsc?

    "a >> b" jest przesunięciem "a" o "b" bitów w prawo. "&" to nie porównanie tylko maskowanie (iloczyn logiczny) bitów. Wyrażenie "var>>(3*4)" przesunie zmienną o 12 bitów w prawo, czyli zwróci czwarty nibble (trzeci licząc od zera - stąd trójka, nibble ma 4 bity, stąd czwórka). "(var>>(2*4))&0xf" przesunie zmienną o 8 bitów w prawo i zamaskuje 4 najniższe...

    Mikrokontrolery AVR   20 Wrz 2008 22:54 Odpowiedzi: 4    Wyświetleń: 1307
  • REKLAMA
  • [ Bascom ] Atmega8 LM75 LM75A pomiar temperatur ujemnej

    Twój LM75 jest na I2C, zakładam więc że umiesz odczytać z niego te dwa bajty z wartością temperatury. Sprawdzasz najstarszy bit, starszego bajtu w odczytanym z czujnika wyniku. jeśli jest równy 0, to znaczy że temperatura jest dodatnia i wynik liczysz poprzez: 1. przesunięcie otrzymanego z czujnika wyniku o 5 bitów w prawo 2. pomnożenie rezultatu tej...

    Mikrokontrolery AVR   11 Lis 2010 22:33 Odpowiedzi: 9    Wyświetleń: 3595
  • REKLAMA
  • [ATMEGA8] [ATMEGA8][ASM] Ocena dwukanałowego 8-bitowego PWM w Assemblerze

    1. Eliminacja niepotrzebnych skoków tu i tam. Da się to zrobić inaczej - patrz CPSE, SBIC, SBIS. 2. Brak podstawy czasu - impulsy nie będą zawsze równe w czasie. Użycie licznika bardzo wskazane. 3. Brak synchronizacji zmiany stanów na portach - możliwe przesunięcia fazowe. 4. Skąpe komentarze. Za dwa dni nie będziesz wiedział co, jak i dlaczego tak.

    Mikrokontrolery AVR   05 Sty 2009 19:42 Odpowiedzi: 2    Wyświetleń: 1531
  • Atmega8 - Silnik bipolarny z MTD2003, problem z kierunkiem obrotów

    Vitling , przeczytaj ten artykuł [url=http://mikrokontrolery.blogspot.com... i zerowanie bitów, powinien Ci pomóc w zrozumieniu przesunięć bitowych. Zerknij też na [url=http://mikrokontrolery.blogspot.com... mikrokontrolerow...

    Mikrokontrolery AVR   30 Gru 2014 13:35 Odpowiedzi: 11    Wyświetleń: 1317
  • REKLAMA
  • Jak zamienić wartość 10-bitową na 8-bitową w C dla przetwornika ADC?

    A może inaczej panowei... Jaki to uC...?.?.? Pytanie dość istotne bo może być problem z głowy... W AVR przy konfiguracji ADC jest rejestr który za to odpowiada... I tak np w ATmega8 rejestr pod tytułem ADLAR ustawiony na 1 powoduje przesunięcie wszystkih bitów w lewo... Większość czyli 8 bitów zostaje w ADCH i tylko ten rejestr czytamy a dwa najmniej...

    Mikrokontrolery   23 Lip 2005 15:03 Odpowiedzi: 15    Wyświetleń: 4039
  • Mikrokontroler Atmega8 nie reaguje na sygnał RC5 przez podczerwień

    poczytaj o przesunięciu bitowym... zamiast wpisywać do tablicy możesz zadeklarować jakiegoś integera przesuwać o 1 bit i dodawać kolejne odczytane bity, w ten sposób będziesz miał liczbę całkowitą reprezentującą odebrany kod a zamiast wielu if możesz użyć case trochę to uprości.

    Mikrokontrolery   05 Wrz 2009 09:45 Odpowiedzi: 8    Wyświetleń: 3501
  • Termometr LCD na ATmega8 - nieprawidłowe znaki po stopniu Celsjusza

    Nie wiem też po co to dzielenie przez 16 w kodzie, przecież wystarczy przesunąć zmienną o 4 bity w prawo, a kod zmaleje w oczach :) Jeśli chodzi o C to przesunięcie bitowe liczby ujemnej jest niezdefiniowane w standardzie. Albert

    Mikrokontrolery AVR   15 Gru 2011 00:32 Odpowiedzi: 43    Wyświetleń: 9414
  • C++ - Zrozumienie bitowej koniunkcji (&) w projekcie z ATmega8 LED

    XOR to nie jest odejmowanie. negacja z dodaniem jedynki a pozniej OR to jest odejmowanie. Żebyś lepiej zrozumiał, xor nie daje ci przesunięcia, w związku z tym jeśli przesuniecie w działaniu powinno nastąpić to xor nie zadziała jak odejmowanie. przykład: 12 - 8 = 4 i 12 xor 8 = 8, to tak jak byś w systemie dziesiętnym próbował odjąć od 2 liczbę 8. Jeśli...

    Programowanie Początkujący   10 Maj 2014 20:02 Odpowiedzi: 7    Wyświetleń: 1638
  • REKLAMA
  • Atmega8 - Timer1 zmiana współczynnika wypełnienia

    Kłopot w tym, że ja wcale nie rozumiem tego fragmentu kodu: [syntax=c] if ((przechowuje = ((przechowuje << 1) & 0x0F) | ostatnia) == 1) { keypin_pressed = 1; } [/syntax] operator "&" - bitowa koniunkcja (AND), << przesunięcie bitowe. Wartość zapisana w przechowuje musi być możliwa do zapisania w formie zero jedynkowej, aby można...

    Mikrokontrolery AVR   24 Lut 2014 18:26 Odpowiedzi: 18    Wyświetleń: 2370
  • Jak zdefiniować porty wyjściowe w Atmega8 dla transceivera MMcc1000?

    Nie wiem o czym jest ta dyskusja, już w 5 poście napisałem, że rozwiązaniem są pola bitowe, umożliwiające praktycznie stworzenie definicji takich jak użytre w programie (z bardzo niewielkimi, możliwymi do automatycznego przeprowadzenia zmianami). To wy tu dywagujecie o operacjach przesunięć bitowych i magicznych makrach...

    Mikrokontrolery AVR   05 Cze 2013 14:44 Odpowiedzi: 22    Wyświetleń: 3645
  • Atmega8 - Nieprawidłowe działanie diod LED i przycisków na portach PD i PB

    Witaj, Zacznij od lektury dot. zmiennej wartości delay: http://mikrokontrolery.blogspot.com/2011... Co ma robić ten fragment: Słabo rozumiem zagadnienie maski, wydaje mi się, że tu może być błąd. Proszę bardzo - poćwicz tutaj: http://mikrokontrolery.blogspot.com/2011... Poza...

    Mikrokontrolery Początkujący   27 Sie 2013 20:14 Odpowiedzi: 27    Wyświetleń: 2697
  • Atmega8, kwarc zegarkowy, Timer0 multipleksuje tylko do 64..

    TCCR0 = _BV(x<<CS00); Źle użyłeś makra _BV. _BV(x) jest równoznaczne z ( 1 << x ), czyli w Twoim przypadku próbujesz wykonać podwójnie przesunięcie bitowe. Jeżeli x = 3 (CS00=0): _BV(3<<CS00) = _BV(3) = (1<<3) = 0b00001000 czyli TCCR0 będzie równe 0b00001000 . Innymi słowy, próbujesz ustawić bit tylko do odczytu, zamiast...

    Mikrokontrolery AVR   22 Gru 2010 23:21 Odpowiedzi: 4    Wyświetleń: 2802
  • Atmega8 - Jak zmierzyć częstotliwość do 2MHz? Dzielnik czy bezpośrednio?

    Tak. Gdybyś chciał wprowadzić przesunięcie o p.cz. to trzeba byłoby wstawić Czestotliwosc = Czestotliwosc +/- Pcz W tym programie Timer1 (16 bitowy) zlicza czas 1s. w jednym przebiegu dla zwiększenia dokładności pomiaru. Impulsy liczone są przez Counter0.

    Mikrokontrolery   20 Lut 2008 21:34 Odpowiedzi: 18    Wyświetleń: 6364
  • Co się dzieje wewnątrz mikrokontrolera? Opiszesz mi instrukcje Atmega8a wraz z tym jak to działa

    co każda z nich oznacza? Oczywiście, chętnie wyjaśnię znaczenie każdej z tych instrukcji dla mikrokontrolera Atmega8: 1. Instrukcje arytmetyczne i logiczne: - ADD (dodawanie): Dodaje wartości z dwóch rejestrów i zapisuje wynik w jednym z nich. - ADC (dodawanie z przeniesieniem): Dodaje wartości z dwóch rejestrów oraz bieżącą wartość przeniesienia (carry)...

    Nauka Elektroniki, Teoria i Laborki   31 Mar 2023 20:20 Odpowiedzi: 8    Wyświetleń: 264
  • Jak ustawić baud rate dla ATMEGA8(L) w komunikacji RS232 z PC?

    Jeżeli masz kwarc 4MHz i baud (czyli prędkość transmisji) 9600, to do UBRR musisz wpisać liczbę dziesiętną 25 (UBRRH = 0; UBRRL = 25;). czyli dla kwarcu 8MHz (bo taki mam załozony aktualnie) UBRRH =0 i UBBRL = 51 ..... czyli rozumiem, że zamiast tego kawałku kodu: UBRRH = (unsigned char)(baud>>8); UBRRL = (unsigned char)baud;...

    Mikrokontrolery   11 Wrz 2006 15:27 Odpowiedzi: 9    Wyświetleń: 5002
  • [atmega8] Jak podłączyć czujnik KTY 81-210 do ATmega8 i mierzyć temperaturę?

    Tak eliminacja wpływu niestałości długoterminowej (dryftu) to zaleta takiego pomiaru, podobnie w metodzie mostkowej eliminuje się wpływ zmian napięcia zasilania na wynik. Czytanie pojedynczych rejestrów jest możliwe, lepiej jednak od razu czytać cały rejestr. Kompilator zadba o odpowiednią kolejność i zoptymalizuje kod. Można porównać jak to wygląda...

    Mikrokontrolery Początkujący   15 Sty 2013 17:28 Odpowiedzi: 24    Wyświetleń: 15117
  • [Atmega8] Atmega8 i TSOP1736: Błąd w odbiorze RC-5, ekran LCD się zawiesza

    Trochę przekształciłem mój kod, wg wskazówek tu był kod Nadal nie działa. Może mój zamysł w ogóle jest zły. po otrzymaniu impulsu uC ma odczekać 0,45ms i jeżeli nadal na wejściu jest stan wysoki ma rozpocząć się próbkowanie, w tym celu timer ma odmierzać czas dokładnie 1,788ms czyli tyle ile trwa jeden jeden bit rozkazu, Wywołanie przerwania ma następować...

    Mikrokontrolery AVR   06 Lis 2009 22:18 Odpowiedzi: 6    Wyświetleń: 1943
  • [C][ATMega8] Komunikacja radiowa - sprawdzenie kodu.

    1. Kod można skrócić o połowę. 2. Stosuj sobie przesuniecie bitowe zamiast liczb szesnastkowych bo można się pogubić. 3. To nie C++ tylko C.

    Mikrokontrolery   20 Lut 2011 07:27 Odpowiedzi: 14    Wyświetleń: 3136
  • Atmega8 i LCD - Błędny odczyt temperatury 4095°C, jak naprawić?

    Dziękuję bardzo za odpowiedź chodź przyznam, że nadal nie jest to dla mnie do końca jasne. Nie pasuje mi to matematycznie. Skoro dzielenie przez 16 to przesunięcie w prawo o 4 pozycje więc wypada jakby 4 na jedną pozycję. Więc dlaczego przy przesunięciu w lewo wartość jest aż tak znacząco różna ? Przesunięcie (shift) o jedną pozycję ozacza pomnożenie...

    Mikrokontrolery AVR   11 Kwi 2013 21:25 Odpowiedzi: 25    Wyświetleń: 3090
  • AVR - Zrozumienie operacji bitowych z przesunięciem w C dla AVR

    Jak rozumiem zgodnie z teorią języka C dla AVR Prawie dobrze, ale zamiast 00010000 otrzymasz 00100000, choć końcowy wynik będzie dokładnie taki jak Twój czyli 0xF0, ale to przypadek. A teraz drugi przypadek, gdzie zamiast przesuwać jedynkę o 5 miejsc w lewo, przesuwasz w lewo liczbę 0x10 szesnastkowo (czyli liczbę 16 dziesiętnie lub 0x00010000 dwójkowo)...

    Programowanie Początkujący   13 Mar 2014 21:39 Odpowiedzi: 2    Wyświetleń: 1206
  • Dlaczego w AVR adresowanie pamięci programu wymaga przesunięcia bitowego?

    Zazwyczaj przed podaniem dyrektywy w asemblerze .db podajesz jeszcze .org 0x0000, która do umieszcza dane pod tym adresem (0x0000). Innymi słowy, wszystkie dane, które zostały zamieszczone po .org 0x0000, są dostępne od adresu 0x0000. Zauważ, że jeśli korzystasz z pamięci flash w uC np. Atmega8 masz tam organizację pamięci 2 bajtową (WORD), a wszystko...

    Mikrokontrolery   10 Mar 2008 21:48 Odpowiedzi: 9    Wyświetleń: 2222
  • Nieudana transmisja Atmega8 i RS232 z AVR Studio 5.1 - brak reakcji w 'putty'

    OOPS już wiem. Przesunięcie bitowe to przesunięcie wszystkich bitów a nie tylko jednego. #define HC_TX_OFF HC_TX_DDR |= (1<<HC_TX);HC_TX_PORT &=~ (1<<HC_TX); zamiast #define HC_TX_OFF HC_TX_DDR |= (1<<HC_TX);HC_TX_PORT &= (0<<HC_TX); i już jest OK. To nie USART wyłączał wentylator tylko odczyt_odległości, który był uruchamiany...

    Mikrokontrolery AVR   28 Gru 2021 18:00 Odpowiedzi: 56    Wyświetleń: 2199
  • Optymalizacja kodu dla sterownika lampek choinkowych na ATmega8

    kolega xury podał ci dodatkowo nazwy poleceń do przesunięć bitowych, które można wykorzystać , chociaż można byłoby je samemu spokojnie poszukać. Teraz wystarczy też tylko zajrzeć do helpa Bascoma żeby zobaczyć jak można się nimi posługiwać. W helpie masz prawie gotowca.

    Mikrokontrolery AVR   01 Gru 2009 11:09 Odpowiedzi: 12    Wyświetleń: 1798
  • Dlaczego przerwanie timera w ATmega8 nie działa? Dioda na PB1 nie świeci

    Tez mi się wydaje dziwne ze nie mozna tak zrobic ale niestety tak jest.Zrozumielem dokladnie o co ci chodzilo jako ze kiedys sam lamalem sobie glowe nad asmem ale w razie jakby chciec to zrobic w ten sposob lepiej jest dac przesuniecie bitowe bo bedzie ono efektywniejsze. Hmmm... a jeśli nawet to mikrokontroler miałby nawet obliczyć sobie to raz po...

    Mikrokontrolery   21 Kwi 2005 20:07 Odpowiedzi: 18    Wyświetleń: 10040
  • [Atmega8] Weryfikacja schematu czujnika ciśnienia MPL115A2 na I2C z Atmega8

    Czołem! trochę odgrzewam kotleta, jednak walcze teraz z tym samym czujnikiem w wersji SPI i mam problemy z ogarnieciem konwersji danych. Zgodnie z notą AN3785 Freescale pobieram i usadawiam współczynniki w zmiennych int16_t (justowanie do lewej). Staram się ogarnąć umysłem kolejne kroki przeliczeniowe i mam wrażenie, że w 1 kroku jest błąd. Mianowicie...

    Mikrokontrolery AVR   19 Cze 2012 13:48 Odpowiedzi: 15    Wyświetleń: 4304
  • [ASM] Jak przeliczyć napięcie z ADC0 na temperaturę w asemblerze dla ATmega8?

    Dzielenie przez 10 możemy zastąpić przez przesunięcia bitowe w prawo. Od kiedy? Jak juz koniecznie dzielic przez 10 stosujac przesuniacia 2 prawo to może tak? Oczywiscie zakladając wymagana dokładnośc X=a/8-a/32+a/128-a/512+............

    Mikrokontrolery AVR   31 Maj 2011 12:14 Odpowiedzi: 5    Wyświetleń: 3254
  • [Atmega8] [TSL2561T] Błędne odczyty. Złe łączenie rejestrów

    Troszkę nieprecyzyjnie się wyraziłem. Chodziło mi o to jak będą wyglądały operacje po rozbiciu tego złożonego wyrażenia i chyba sam sobie odpowiedziałem :-) Otóż: - bajt high będzie rzutowany na wartość 16 bitowa i przesunięty o osiem bitów - bajt low będzie rzutowany na wartość 16 bitową - oba operandy zostaną poddane operacji sumy logicznej - wynik...

    Mikrokontrolery AVR   04 Lis 2013 23:12 Odpowiedzi: 9    Wyświetleń: 2729
  • [TDA1543A] [Atmega8] - Napięcie stałe zamiast danych, brak komunikacji

    1) Po ustawieniu WS_1 chce by na porcie PD1 była ustawiona wartość 1 logicznej, a po wykonaniu WS_0 wystawienie 0 logicznego na PD1 - według mnie odpowiada to ustawieniu kanału lewego bądź prawego na wyjściu TDA1343a 2) 1<<PD1 to przesunięcie bitowe w lewo co zmieni wartość pinu PD1 na wartość po lewej w PD7 zależało by to od wartości wcześniej...

    Mikrokontrolery AVR   04 Maj 2016 10:58 Odpowiedzi: 15    Wyświetleń: 1839
  • Atmega8, C - Diody na PD0, PD1, PD2 nie zapalają się kolejno

    żeby po samym naciśnięciu switcha Co Masz na myśli ? By zmienić kolejność przesuwania bitów Musisz albo nacisnąć drugi raz ten sam przycisk, lub też nacisnąć inny, ewentualnie jeśli skończy się przesuwanie w lewo, nastąpi przesuwanie w prawo. Jeśli ma być to ten sam przycisk to Musisz dodać informację, która będzie widoczna dla podprogramu, który z...

    Mikrokontrolery Początkujący   01 Lip 2015 13:49 Odpowiedzi: 21    Wyświetleń: 4722
  • [c] Jak zapisać i odczytać integer w 24C256 używając I2C Fleury na ATMega8?

    Obawiam się, że nie rozumiem pierwszej części pytania. Jeżeli natomiast chodzi moment zapisu, to powiedzmy, że to się odbywa zaraz po uruchomieniu uC. Jeżeli, w momencie zapisu, do adresu komórki dodam przesunięcie bitowe w prawo, to wszystko pięknie się zapisuje i odczytuje. Zapis: [syntax=C] i2c_start(Dev24C256+I2C_WRITE); 2c_write(0x02); i2c_write(0x02...

    Mikrokontrolery AVR   30 Sie 2013 11:12 Odpowiedzi: 11    Wyświetleń: 1893
  • [C] [C][atmega8] - Jak działa operator bitowy | i << w ustawieniach portów?

    Witam, od niedawna interesuje się programowaniem mikrokontrolerów Kupiłem programator USBasp, podłączyłem wszystko, z kursów przetestowałem kilka przykładów, napisałem jakieś proste miganie diodami. A teraz opiszę w czym problem: Mam 3 diody LED i przycisk Zielony LED - PORTB0 Czerwony LED - PORTB1 Żółty LED - PORTB2 Przycisk - PORTC0 Diody ustawiłem...

    Mikrokontrolery Początkujący   15 Lip 2012 14:15 Odpowiedzi: 17    Wyświetleń: 5900
  • [Atmega8][avr-gcc] USART - Przesyłanie danych - optymalizacja

    Wszystko zależy od tego ile masz wolnego czasu i pamięci mikrokontrolera. Ja np. często wysyłam napięcia w postaci szesnastkowej, bo to nie kosztuje praktycznie nic po stronie uC, a program odbierający na PC odczyta je łatwiej niż z postaci dziesiętnej. Samo dzielenie przez 10, potrzebne do konwersji na postać dziesiętną, zajmuje grube dziesiątki instrukcji...

    Mikrokontrolery Początkujący   15 Gru 2012 23:09 Odpowiedzi: 14    Wyświetleń: 4125
  • Kwestia wyświetlacza 2x8 na Atmega88: czarne pola, testy różnych programatorów i kabli

    Witam. Mam problem z wyświetlaczem 2x8 na Atmedze88. PD0 jest podłączony do RS, PD1 jest podłączony do E, PD2 procesora jest podłączony do DB4, PD3 jest podłączony do DB5, PD4 jest podłączony do DB6, PD5 jest podłączony do DB7. Na ekranie pojawiają się tylko czarne pola. Przetestowałem różne programatory oraz kable. Wgrywa wszystko na układ żadnych...

    Mikrokontrolery AVR   30 Sie 2023 05:15 Odpowiedzi: 5    Wyświetleń: 399
  • [Atmega8] [Atmega8][C] DS18B20 - Błędne odczyty temperatury po czasie

    masz źle zrobione rzutowania, przesunięcia i dzielenia, to na pierwszy rzut oka: float temp=0.0; temp = (float)(((uint16_t&#... | (((uint16_t)temp2)&l... chcesz zmienne 8 bitowe przysuwać o 8 bitów to musisz je rzutować na typ 16 bit - inaczej tracisz cały bajt. Ponadto durgą zmienną...

    Mikrokontrolery AVR   13 Kwi 2012 12:49 Odpowiedzi: 9    Wyświetleń: 5028
  • Kod dla Atmega8A + HC-05 (Bluetooth): jak podłączyć terminal?

    1. wytłumacz mi to: UBRRH = (unsigned char)(ubrr>>8); UBRRL = (unsigned char)ubrr; UCSRB = (1<<RXEN)|(1<<TX... UCSRC = (1<<URSEL)|(3<<U... 2. Jak działa szczegółowo to połączenie bluetooth jeśli chodzi o algorytm? 1. To jest fragment kodu, który konfiguruje UART...

    Mikrokontrolery Początkujący   11 Wrz 2023 11:57 Odpowiedzi: 66    Wyświetleń: 1575
  • [atmega8] Jak napisać program dla ATmega8 do odczytu enkodera i przesyłu przez RS232?

    Witam serdecznie, potrzebuje pomocy w napisaniu programu dla atmega8. Chodzi mi o pomoc w jego napisaniu. Z programowania nie jestem najlepszy. Problem polega na:Sczytaniu wartości z przetwornika (http://www.wobit.com.pl/download/pdf/pr... konwersji z kodu Gray`a na kod binarny oraz przesłaniu za pomocą rs232 na PC. Wszystko to na...

    Mikrokontrolery AVR   10 Wrz 2009 22:27 Odpowiedzi: 6    Wyświetleń: 2708
  • Matryca LED - jak usunąć efekt duszków w wyświetlaniu?

    Witam Czy mógłbym prosić o wyjaśnienie w jaki sposób działa funkcja SendSpi ? Co to jest za wartość przekazywana w parametrze ? Jak realizowane jest przesyłanie danych do 74hc595 ?I czy kod jest w miarę optymalny ( chciałbym zbudować matrycę na atmega8 )? Próbuję uruchomić własną matrycę led 11x10 ale ciągle napotykam problemy których nie potrafię...

    Mikrokontrolery AVR   17 Lip 2011 10:34 Odpowiedzi: 24    Wyświetleń: 3375
  • [avr-gcc] Jak ustawić PWM w Atmega8 dla serwomechanizmu z impulsem 1-2ms co 20ms?

    I radze nie uzywac (1<<...) tylko makra _BV(), bo potem cos nie dziala i nie wiadomo czemu;);) Witam, muszę się wtrącić :)) Nie masz racji sugerując, by nie używać operacji (1<<....). Jest to wyrażenie jak najbardziej poprawne w języku C. W każdym kompilatorze. Zaś _BV() to jak sam napisałeś to tylko makro w avrgcc. W dodatku makro sprowadza...

    Mikrokontrolery   25 Maj 2007 15:16 Odpowiedzi: 18    Wyświetleń: 3660
  • [C] [C][Atmega8] Jak sterować 7 diodami LED za pomocą 3 pinów uC?

    Mógłbyś opisać to dokładniej Typowy 8 bitowy rejestr ma 1 szeregowe wejście (czyli pin na który podajesz albo 0, albo 1). 1 pin na "zegar" gdzie (często) zbocze narastające inicjuje przesunięcie zawartości rejestru o 1 (i aktualny stan wejścia D wskakuje do rejestru). 2 szeregowe wyjścia (jedno zanegowane - do łączenia kilku urządzeń), jeden pin strobe/latch...

    Mikrokontrolery Początkujący   20 Lip 2012 07:49 Odpowiedzi: 10    Wyświetleń: 2601
  • Jak uruchomić przetwornik A/C na Atmega8 i odczytać wynik?

    Po co tak kombinować...?.?.? Jeżeli piszesz w WinAVR (nie wiem jak w innych) to możesz nizależnie od tego jak masz ustawione przesunięcie w rejestrach ADCL i ADCH możesz pobrać wartość 10-bitową w jednej operacji (chodzi mi tylko o zapis a nie o kod wynikowy) czyli np... volatile unsigned int adc; ... int main(void) { for(;;) {...

    Mikrokontrolery   15 Sie 2006 15:09 Odpowiedzi: 4    Wyświetleń: 1755
  • [Atmega8] Jak zasilić i sterować VFD BJ883GNK z Atmega8 i SC16311?

    :cry: Nie ma szans aby działało bo jak się robi takie błędy sorrki ale uczę się #include <avr/io.h> #include <util/delay.h> #define F_CPU 1000000L #define CLK_1 PORTD|=_BV(4) //bit CLK=1 #define CLK_0 PORTD&=~_BV(4) //bit CLK=0 #define STB_1 PORTD|=_BV(5) //bit STB=1 #define STB_0 PORTD&=~_BV(5) //bit...

    Mikrokontrolery   12 Sty 2010 16:35 Odpowiedzi: 22    Wyświetleń: 6466
  • [ATmega8][WinAVR] - Różnice między kodem binarnym a HEX

    Witam Zmontowałem sobie prosty układ do ćwiczeń na kodzie wraz z najważniejszymi informacjami. Taki można powiedzieć sandbox do zabawy z operacjami na bitach. http://obrazki.elektroda.pl/5931791900_1... (pewnie dostane mały opie...rz za 1 rezystor na 8 diod - nie posiadam więcej!) Przejdę do sedna sprawy, zastanawia mnie sposób zapisu...

    Mikrokontrolery AVR   11 Maj 2014 14:37 Odpowiedzi: 6    Wyświetleń: 2385
  • [C] Atmega8 - poprawa programu realizującego mruganie 3 LED

    Witaj. Temat związany z naszą dyskusją: http://mikrokontrolery.blogspot.com/2011... 1. Błąd, który nie pozwoli na skompilowanie kodu - brakuje znaku | : przesunięć bitowych : CManiaku skompilować poniższy program: [syntax=c]//Wymagane do symulacji definicji i rejestrów ATmega8:...

    Mikrokontrolery AVR   22 Maj 2014 19:07 Odpowiedzi: 4    Wyświetleń: 2040
  • atmega8 i wyświetlacz 7 segmentowy LED ==> BASCOM

    Z LCD jest podobne a do tego musisz za palac i gasic segment z odpowiednią częstotliwością. A ten drugi sposób (szeregowo). Do jednego układu podpinasz wszystkie segmenty Na jedną noge podajesz czy dany segment ma sie palić czy nie. Jak juz ustalisz czy ma sie świecic czy nie to podajesz sygnał na CLK i lecisz z kolejnym segmenem, i tak az do ostatniego....

    Mikrokontrolery   05 Lis 2005 09:16 Odpowiedzi: 31    Wyświetleń: 23001
  • Jak podłączyć i obsłużyć iButton DS1996L-F5 z ATMEGA8 przez 1-wire?

    ok, zdaje się, że jestem z tych opornych :D, więc kilka pytań extra: #include <avr/io.h> #ifdef SINGLE_OW #define bp (1<<PD6) #define bm ~(1<<PD6) #define owhi DDRD&=bm #define owlo DDRD|=bp #define owget PIND&bp #else //MULTI_OW unsigned char *port,*ddr,*pin,bp,bm; #define owhi *ddr&=bm #define owlo *ddr|=bp...

    Mikrokontrolery   07 Sty 2007 20:24 Odpowiedzi: 36    Wyświetleń: 11046
  • Poszukiwany kod komunikacji ATmega8 (48, 88, 168, 328) z HT1621B w Bascom od Saper/nolin11

    Możesz wysyłać jako 16-bitowe SPI. Musisz tylko pamiętać, że kilka ostatnich bitów będzie ignorowane i odpowiednio przesunąć dane

    Mikrokontrolery AVR   19 Mar 2022 11:08 Odpowiedzi: 6    Wyświetleń: 546
  • Mini barometr z wyświetlaczem LCD i akumulatorkiem Li-pol na ATmega168PA

    http://obrazki.elektroda.pl/9824916400_1... Witam, Korzystając z ostatnich wolnych dni przed studiami chciałbym zaprezentować moją ostatnią konstrukcję. Jest to mały przenośny barometr. Konstrukcja powstała na potrzeby osoby wrażliwej na zmiany ciśnienia oraz spełnia jej wymagania tzn. mały rozmiar( 20x40x9mm) oraz co się z tym wiąże...

    DIY Konstrukcje   11 Kwi 2017 21:55 Odpowiedzi: 16    Wyświetleń: 21228
  • atmega8, LCD - problem z wyświetlaniem znaków na LCD, migający kursor

    Witam, napisałem własny program do obsługi wyświetlacza LCD, inicjacja przebiega poprawnie, ponieważ kursor miga. Nie udaje mi się natomiast wysłać jakiegokolwiek znaku, chodzi mi o wpisanie np litery A na pierwsze miejsce bez żadnych przesunięć. Oto kod: [syntax=basic4gl] #include <avr/io.h> #include <util/delay.h> /* ########################################...

    Mikrokontrolery Początkujący   08 Sie 2014 12:22 Odpowiedzi: 4    Wyświetleń: 1311
  • [atmega8][bascom] 7seg LED sterowanie z PORTB i PoC <<

    Zmieniłem troszkę podłączenia wyświetlacza LED do atmegi. Teraz z mam tak: PORTD.4 = segment A PORTD.5 = segment B PORTD.6 = segment C PORTD.7 = segment D PORTC.2 = segment E PORTC.3 = segment F PORTC.4 = segment G PORTC.5 = segment DP Do portów XTAL1 i XTAL2 mam podłączony rezonator 32kHZ. Układ prawidłowo wyświetla temperaturę i przekazuje na UART...

    Mikrokontrolery AVR   02 Lut 2009 21:18 Odpowiedzi: 18    Wyświetleń: 6654
  • [C] Jak połączyć trzy bajty w 24-bitowy rejestr w C? Błąd przesunięcia bitowego

    no właśnie, -O1 ma wg mnie sens, jeśli chcesz sobie ładnie móc debuggować a nie chcesz potem pod koniec musieć pamiętać o tym, żeby zmieniać na -03. Jeśli twój uC się ze wszystkim czasowo wyrabia dla -O1, a nie musisz np. minimalizowac poboru energii (bo wtedy oczywiście zależy ci na tym, żeby wszystko co trzeba wykonać jak najszybciej i pójść spać),...

    Mikrokontrolery AVR   06 Maj 2012 21:04 Odpowiedzi: 36    Wyświetleń: 5158
  • Atmega48 i wyświetlacz HD44780 (QC1603A) – brak tekstu mimo poprawnego kontrastu

    ... co wynika z tego, że gdybyś używał nazw pinów (a nie numerów) oraz przesunięć bitowych, to błędu byś nie popełnił: [syntax=c]#define E (1<<PB1)[/syntax] Nie definiuj F_CPU w kodzie z tych powodów: http://mikrokontrolery.blogspot.com/2011...

    Mikrokontrolery Początkujący   21 Kwi 2013 21:21 Odpowiedzi: 3    Wyświetleń: 1689
  • [Atmega8][bascom] timer2 CTC generuje przerwanie tylko raz

    Nie zmienia, bo masz błąd w innym miejscu. Dokładnie to miałem na myśli-że błąd jest gdzieś indziej. Zastanów się, co oznacza nazwa trybu CTC (?) – w ang. jest to ‘Clear Timer on Compare’ (pol. - wyzeruj zawartość licznika/timera, gdy jego zawartość jest równa wyznaczonej z góry i ustalonej, bądź to wyliczonej jakiejś wartości w zmiennej...

    Mikrokontrolery AVR   01 Lis 2018 13:41 Odpowiedzi: 10    Wyświetleń: 843
  • Jak wysłać 3 bity przez SPI na ATMEGA8? Transmisja 19-bitowa w BASCOM lub ASM

    Na mój gust to tam jest byk bo na rysunku nr 2 jest jak wół 1 bajt komendy, 1 bajt danych więc z tym oscylogramem coś nie halo. A jesli ma być zwrócone słowo 11,12,13 ect bitowe to trzeba nieznacząe bity zignorować i np. przesunąć w w prawo o tyle ile bitów będzie brakowało do slowa 16 bitowego.

    Mikrokontrolery AVR   17 Lut 2010 19:42 Odpowiedzi: 22    Wyświetleń: 2456
  • Barometr, wilgotnościomierz i termometr w jednym

    http://obrazki.elektroda.pl/8267947700_1... Ponad 20 lat temu jako amator hobbysta budowałem proste układy elektroniczne. Studia i styczność z informatyką spowodowały, że porzuciłem hobby pod nazwą "składanie elektroniki" na rzecz "składanie programów komputerowych". W bieżącym roku (2011) dzięki uprzejmości kolegi Jacka.M, który okazał...

    DIY Konstrukcje   13 Lis 2011 11:25 Odpowiedzi: 25    Wyświetleń: 27173
  • Atmega8 - Timer źle zlicza impulsy i czas trwania stanu wysokiego

    Witamy na forum, a miejsce na swój temat znalazłeś właściwe :) 1. Zignorowałeś warning: Warning2#warning "F_CPU not defined for <util/delay.h>" ... a to często prowadzi do problemów: http://mikrokontrolery.blogspot.com/2011... a w tym przypadku chodzi o to, by nie definiować F_CPU w kodzie programu z tych powodów:...

    Mikrokontrolery AVR   01 Sie 2015 04:27 Odpowiedzi: 9    Wyświetleń: 1296
  • XMega128A3U - Jak przenieść funkcje I2C z Atmega8, brak odpowiedników rejestrów?

    Rozumiem. Zagłębiając się w temat znalazłem funkcję liczącą CRC w bibliotece na arduino do tego czujnika. Dowiedziałem się też, że jest biblioteka o nazwie crc16.h w katalogu util . Pierwotnie chciałem z niej korzystać, ale wymaga argumentów 8-bitowych, a z tego, co zrozumiałem z datasheet'a czujnika i patrząc na funkcję z biblioteki arduino muszę zlepić...

    Mikrokontrolery AVR   13 Sie 2016 12:33 Odpowiedzi: 33    Wyświetleń: 2319
  • [Atmega8][C] - Nieprawidłowe działanie klawiatury matrycowej 4x4 - przesunięcie kolumn

    Faktycznie działa tak samo, ale problem pozostał. Nadal 1. kolumna jest przesunięta na koniec. Dodano po 34 Problem rozwiązany, wystarczyło dodać delay po zmianie stanu na porcie B. Niby 1 us ale wpływa na działanie programu. Najwidoczniej bez opóźnienia nim stan się ustabilizował to pętla przeszła już do następnej iteracji. Niby drobnostka, a zabrała...

    Mikrokontrolery AVR   15 Lis 2020 14:40 Odpowiedzi: 6    Wyświetleń: 669
  • Atmega8A - Sterowanie PWM przy użyciu potencjometru.

    Cos chyba kolega przekombinowuje z tym projektem (tak się domyślam po metodzie zjechania z 10 bitów do 8). Proponuje zamiast mnożyc floaty zrobić V8bit = V10bit >> 2; Nie używam za dużo przesunięć bitowych, nawet nie wiedziałem, że jest taka możliwość. Dziękuje za wskazówkę. dodatkowo mnożąc przez ułamek używałeś do tego armaty w postaci biblioteki...

    Mikrokontrolery   09 Maj 2016 21:32 Odpowiedzi: 26    Wyświetleń: 3354
  • Atmega8 - Makra do rejestrów - jak wymusić atomowość, niepodzielność

    Od dłuższego czasu napisałem sobie specjalne makra pod AVR definiujące wszystkie porty, aby np. zamiast pisać: #define BTN1_DDR DDRC #define BTN1_PORT PORTC #define BTN1_PIN PINC #define BTN1_P PC0 #define BTN2_DDR DDRB #define BTN2_PORT PORTB #define BTN2_PIN PINB #define BTN2_P PB1 #define BTN3_DDR DDRD #define BTN3_PORT PORTD #define BTN3_PIN PIND...

    Mikrokontrolery AVR   30 Kwi 2016 23:50 Odpowiedzi: 2    Wyświetleń: 1446
  • Zapalanie się dwóch diod LED 8x8 przy sterowaniu Atmega8a i rejestrami 74HC595

    Witam. Zaczynam przygodę z programowaniem AVR w języku C. Trochę wiedzy już przyswoiłem i postanowiłem popełnić pewien projekt. Mianowicie matrycę LED 8x8 sterowaną przez Atmega8a, dwa rejestry 74HC595 i przerwaniem od timera. Płytkę pod LEDy wytrawilem sam. Reszta układu polutowana na płytce uniwersalnej. Kod napisałem sam i jestem pewien że jest ok....

    Programowanie   15 Lut 2022 21:30 Odpowiedzi: 10    Wyświetleń: 339
  • Jak odczytać dzień tygodnia z PCF8583 w BASCOM-Atmega8?

    Wystarczy zajrzeć do datasheeta PCFa. Musisz odczytać jeszcze rejestr 6. W nim 3 najstarsze bity to binarna cyfra w zakresie 0 - 6 (teoretycznie to BCD, ale na jednym półbajcie nie ma to znaczenia), oczywiście przesunięciem bitowym wyciągniesz te bity. Musisz założyć, który dzień jest początkiem tygodnia, np. 0 - poniedziałek, następnie switchem wyciągać...

    Mikrokontrolery AVR   12 Wrz 2010 14:29 Odpowiedzi: 3    Wyświetleń: 2070
  • Jak zrobić odtwarzacz WAV na Atmega8/16 z trzema przyciskami?

    (at)serum Jesli chodzi o linie WS to sterowalem nia programowo. Z SPI wykorzystalem sygnaly SCK i MOSI. Nie bardzo rozumiem o co Ci chodzi z tym przesunieciem sygnalu WS o 1 bit?? Jezeli chodzi o kod to pisze w C, ale nie mam go przy sobie :(. Napisz czym u Ciebie objawiala sie proba przeslania probki 16 bitowej, bo jak rozumiem wystepowaly jakies bledy....

    Mikrokontrolery AVR   17 Lip 2009 19:36 Odpowiedzi: 20    Wyświetleń: 7715
  • LCD 2x16 z Atmega8 w trybie 4-bitowym wyświetla tylko 8 znaków - dlaczego?

    Witam ponownie ;)! Dzieki waszym podwiedzia napisalem fukcje przesuawania wskaznika pamieci DD RAM i okazalo sie ze zeczywiscie moge wyswietlac znak gdzie tylko chce :P. Ale napotkalem jeszcze jeden problem z ktorym nie moge sobie poradzic :(... Otoz bez problemu wyswietlam 8 pierwsyzch bitow w lini ale jak chce wyslac kolejne 8 bitow po wczesnieszym...

    Mikrokontrolery   20 Lut 2007 21:34 Odpowiedzi: 12    Wyświetleń: 2513
  • Atmega8 LCD 4-bitowa magistrala program C nie dziala

    Kiedys tez zrobilem dzialający LCD na PORTB, gdzie DB4-7 polaczone bylo z PORTB.4-7. Sadzac po Twoim sterowaniu masz podlaczony tak samo jak ja mialem wtedy. Teraz niestety plytka jest wytrawiona i musze jakosc wysterowac na mlodszych bitach portu B;/ Programu wykonawczegno nie zmienilem ale sadze ze cos sknocone jest z operatorami przesuniecia bitów...

    Mikrokontrolery AVR   07 Cze 2009 12:41 Odpowiedzi: 20    Wyświetleń: 1668
  • [atmega8][C] - Komunikacja ATmegi8 z termometrem cyfrowym DS18b20.

    Czyli wyczyszczenie magistrali następuje w pierwszej linijce tej funkcji, tak? Mam cały program i coś jest nie tak. Temperaturę z MCP9700 odczytuje prawidłowo, a z dallasa mam ciągle "cisza". Poza tym wszystko działa bardzo wolno i jak wyjmę kondensator filtrujący spomiędzy pinów MCP9700 to nie reaguje na zmianę napięcia. Procesor to ATmega8 i jest...

    Mikrokontrolery AVR   11 Paź 2015 16:22 Odpowiedzi: 15    Wyświetleń: 1401