jak chcesz takie duze czestotliwości mieżyć to musisz użyć timera żeby liczył zewnętrzne impulsy, wtedy drógim timerem wyzwalasz przerwanie co określony czas (im dłuższy tym lepszy bo pomiar dokładniejszy) liczysz ile było ilmpusów z zewnątrz w okreslonym czasie. wydaje mi się że tą metodą dało by sie mieżyć nawet do 100Mhz ale jest jedno zalożenie...
A po co ci te informacje? Bo one nie mają żadnego praktycznego zastosowania. Jeśli 20MHz to za mało to masz serię XMega do 32MHz. Jeśli to ciągle za mało to zmień rodzinę. Parametry z noty są określane tak, żeby założony odsetek układów pracował w podanych warunkach. To znaczy, że większość będzie pracować przy szybszym zegarze, a jak szybkim nie ma...
Jeżeli można wiedzieć o ile będzie wiesza częstotliwość? (+/-) i jakie sa szanse na spalenie atmegi, ew. zawieszanie się programu? Dodano po 16 No i jeszcze kilka pytan.. czy przy wpisaniu 255 wartość zapisuje się w pamięci ulotnej czy nie? tzn chodzi mi czy po ponownym podłączeniu uC do prądu częstotliwość wróci? jeżeli nie jak później kalibrować...
Muszę po prostu zmieniać OCR2 w przerwaniu o zadanej częstotliwości? Tak.
widziałem kiedyś scalak który miał w sobie kompletny LPF sterowany przez i2c. Nie pamiętam tylko jak się nazywał. Atmegą byś mógł sobie sterować nim jakbyś chciał. Do tego potencjometr też na i2ci masz regulacje głośności.
A zmieniłeś Timer na Timer1? Przecież bez tej zmiany Timer nie jest ładowany i zlicza nie 1000 lecz 65536 cykli. Co daje właśnie około 64-krotne spowolnienie.
Przede wszystkim to zastanów się dlaczego do generowania nośnej usilnie chcesz pisać jakiś kod programu i obciążać tym program główny procesora, skoro można to zrobić CZYSTO sprzętowo za pomocą timera. Tylko nie Timera0 bo ATmega8 jest biedna w porównaniu do ATmegai88 gdyż timer0 nie posiada w niej trybu CTC. Tymczasem masz jeszcze timer2 i wystarczy...
Obstawiam, że się BASCOM nie wyrabia z obsługa przerwań co 13us. Ale na BASCOM-mie się nie znam. 4.3ms daje przerwanie co ca. 16us, co by się zgadzało z obserwowaną czestotliwością ok. 30kHz.
Hej, Jeśli chcesz płynnie regulować współczynnik wypełnienia to musisz wybrać jeden z modów PWM i wtedy będziesz skazany na jedną z kilku częstotliwości wynikających z zegara systemowego i tego jak ustawisz prescaler, Jeśli chcesz płynnie regulować częstotliwość to wybierasz mod CTC(clear timer on compare) ale będziesz miał wtedy stałe wypełnienie,...
272 to taka nieciekawa wartość do mnożenia. Ja zrobiłem tak: Przerwania z TIM0 i TIM1 TIM0 zlicza impulsy z wejścia zliczającego, i gdy się przepełni jest króciutkie przerwanie inkrementujące parę 3 rejestrów. TIM1 zgłasza przerwanie równiutko co pół sekundy. Na samym początku obsługi przerwania jest odczytywana wartość impulsów z TIM0, i jest on resetowany....
Przede wszystkim zastosuj bramkę z wejściem Shmidta - np. 74132. Tu prawdopodobnie tkwi problem w pojawianiu się oscylacji przy sygnale sinusoidalnym. AK
Co prawda to co proponuję jest w asm i jest autoreklamą, ale napisane w miarę czytelnie, może załapiesz o co chodzi : http://www.elektroda.pl/rtvforum/topic18... Powoli się zastanawiam na dopisaniem analoga w C, ale to raczej nie jutro... Tak przy okazji:[syntax=c]#define timing_hz 1000000 //Taktowanie uC[/syntax]To jest zbędne, używaj F_CPU...
regfile = "2313def.DAT" $crystal = 11059200 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.5 , Db5 = Portb.4 , Db6 = Portb.3 , Db7 = Portb.2 , E = Portb.6 , Rs = Portb.7 'Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.1 , Db6 = Portb.0 , Db7 = Portd.6 , E = Portb.3 , Rs = Portb.4 Cursor Off Config Pind.6 = 1 Config Pind.0 = 0 Portd.0...
Z tego co wiem to "odstraszacze gryzoni" pracują najczęściej na częstotliwości 300...400Hz, ponoć sygnał sinusoidalny jest zdecydowanie lepszy do odstrzaszania, dobrze aby sygnał był powtarzany w nieregularnych odstępach co kilkanaście ... kilkadziesiąt sekund i najlepiej jako przetwornik nadaje się zwykły głośnik ( najlepiej z jakąś palstikową membraną)....
ja po skonfigurowaniu u sibie Timera2 jako PWM i podłączeniu do niego tego miernika to mierzy bez problemu. Tak samo jak zrobi się w pętli Set i Reset jakiegoś portu to też mierzy częstotliwość przełączania.
Nie uszkodzi Ci to mikroprocesora, wiesz, że żeby wykryć wciśnięcie w takiej klawiaturze trzeba ją skanować (odpowiednio nią sterować) z odpowiednią częstotliwością?
ad.1. o ile przepisałeś z dokumentacji, to dobrze ad. 2. za pomocą fuse bitów. Ustawiasz kwarc zewnętrzny wysokiej częstotliwości.
Jednym z wielu błędów w Twoim kodzie jest przetwarzanie w pętli głównej zmiennych adc1 i adc2 zapisywanych w przerwaniu timera. To są zmienne 16-bitowe, więc pomiędzy odczytem jednej i drugiej połówki przerwanie timera może zmienić wartość zmiennej. Blokuj przerwania na czas ich odczytu, czytaj je w pętli głównej raz, skopiuj do innej zmiennej roboczej...
RC (wewnętrzny) 1MHz CKSEL = 0001 SUT = 10 4MHz CKSEL = 0011 SUT = 10 8MHz CKSEL = 0100 SUT = 10
Mam pytanie odnośnie pomiaru częstotliwości, lecz nie wiem jak zrealizować pomiar z zastosowaniem układu preskalera (SAA1059). Nie wiem w jaki sposób należy podłączyć układ, abym mógł mierzyć częstotliwość do 120MHz. Chciałbym wykorzystać ten układ do radia, które nie posiada skali cyfrowej. Analizowałem inne powiązane tematy np. http://www.elektroda.pl/rtvforum/topic73...
A komendy toggle będą działały tak szybko, że zmiany będziesz wstanie zaobserwować jedynie oscyloskopem/analizatorem stanów logicznych/multimetrem z funkcją pomiaru częstotliwości.
Strasznie się nakombinowałeś, jednak bez choćby analizatora logicznego Saleae to jest błądzenie po omacku. Zrobiłem ten układ na tranzystorze i 2 kondensatorach, w przykładzie Colpitts Oscillator zmieniłem cewkę na 410nH ( miałem niby 470nH, ale zmierzona chińskim testerem), kondensatory 100n, rezystory bez zmian R100 i 1k, tranzystor pierwszy leżący...
A masz zewnętrzny kwarc? No i ten $regfile" " wpisz do kodu.
spr dodać 'volatile' przy deklaracji zmiennej, możliwe że kompilator optymalizując wpisuje na stałe wartość zadeklarowaną na początku, w przerwaniu jej wartość się nie zmienia, dla kompilatora jest ona w tym miejscu jako stała ...
TCCR1B &=~(_BV(CS12)) | ~(_BV(CS11)) Ww. zapis oznacza tyle co TCCR1B &= ~(1 << 2) | ~(1 << 1), to znowuż jest równoważne TCCR1B &= ~4 | ~2. W zapisie zerojedynkowym będzie TCCR1B &= 1111 1011 | 1111 1101, przy czym po wykonaniu operacji OR na tych ślicznych liczbach postanie z nich 1111 1111...
Ustawiam F_CPU w trzech miejscach.. W kompilatorze w opcjach projektru (uzywam AVR Studio 4), w pliku lcd.h - plik nagłowkowy wyświetlacza, i w Proteusie w opcjach Atmegi8.. w każdym z tych trzech miejsc ustawiam tą samą czestotliwość => 16 MHz, przy użyciu preskalera 1024.
Jakie częstotliwości taktowania ma ten procek?
Również bawię się atmegą8 z wew generatorem i mam taki dziwny problem, że przy wpisaniu fusów na 8MHz procesor w rzeczywistości działa z częstotliwością 2MHz ! (procedury czasowe na to wskazują). Nie wiem, czy w procesor jest wbudowany jakiś dodatkowy preskaler sygnału zegarowego ? pozdrawiam
Czyli liczy 10x za wolno. A czy dobrze ustawiłeś w programatorze fusebit odpowiedzialny za to z jakiego generatora ma korzystać? Bo wygląda że korzysta z wewnętrznego 1MHz
musisz ustawić FUSE bity na kwarc zewnętrzny domyślnie jest wewnętrzny RC o czestotliwości 4MHz. Jak masz STK 200/300 i dajesz programuj procesor to masz zakładke rom eeprom i fuse bity a tam znajdziesz które to sa bo niepamietam . Pozdrawiam
Może:> Napisz w ISRze timera uruchomienie konwersji?
Strona 28 PDF-a. I wcale nie wszystkie CKSEL bo tylko 1 z 4. Pozdro Dexter
ldi r16,(1<<TWPS0) sts TWSR,r16 ldi r16,18 sts TWBR,r16 ret z tego wychodzi preskaler 160 czyli przy 1Mhz sygnał clk ma czestotliwość 6250Hz. niby nic nie szkodzi że tak wolno ale sprubuj dać wiecej. dodał bym jeszcze ldi r16,(1<<TWEN) sts TWCR,r16 w procedurze inicjalizacji i jakieś jakieś małe opuźnienie. jak bede w domu...
Poleceniem crystal podaje sie czestotliwość podłączonego kwarcu. Jeśli chodzi o resztę kodu to niewiem czy jest poprawny.
Witam , mam pytanko związane z Atmegą8, czy jest możliwe z poziomu Bascoma utworzenie programu, który stworzył by generator PWM w którym można płynnie regulować częstotliwość tego generatora w jakimś szerokim zakresie np. od 10Hz do 100kHz . Regulacja wypełnienia jest oczywiście prosta ale nie wiem czy jest mozliwość sterowania częstotliwością . Ważne...
Witam, Przymierzam sie do budowy małego sendera UKF i koderem rds i stereo w celach dydaktycznych. Znalazłem program do obsługi syntezera na saa1057 na ATMEGA8 i mam małe pytanie. Jak zmienić program żeby na wyświetlaczu wyświetlał mi częstotliwość w podanym formacie XX,XX MHZ w tej chwili wyświetla XX,XXX,X MHZ, jak ograniczyć pasmo działania syntezy...
Jaką masz częstotliwość oscylatora bo problem może polegać na tym że Twój program nie działa a przykład kolegi nie działa bo kompilujesz go dla częstotliwości 1MHz...
Zrobiłem prosty termostat. Atmega8 jest docisnieta do bojlera. Prograsm mierzy czestotliwość zegara wewnętrznego i na tej podstawie wyświetla temperature wody. Wyświetlacz najpierw był LCD do prób docelowo ma to byc kolumna 5 diod LED o róznych kolorach od 40 do 80 stopniach niebieskiego do czerwonego. Rozdzielczosć wskazan 5 stopni C. Wprowadzanie...
Może nie tyle czułości ile progu zadziałania. Może być 2-50kom. Może być i więcej- ale wejścia będą zbierały więcej śmieci. Ja bym dał 4.7kom. Poza tym jest to fragment większej całości- a na diodzie zwykle są całe projekty. No i wydaje mi się że zaczynasz "od tyłu". Zrób najpierw prosty układ- jeden transoptor, dioda transoptora sterowana z procesora,...
Twój po kompilacji. Niestety nie wiem jak będzie działał natwoim mikrokontrolerze bo nie wiem z jaką częstotliwością masz taktowany.
Przerwanie następuje dokładnie po 0,1200µs pod warunkiem że masz na prawdę 8MHz i ładujesz do licznika 255. Co do poprzedniego postu: $crystal = 8000000 counter0=255 Widzisz różnicę? Mam nadzieje że przestawiłeś fuse bity jak trzeba.
R3 - 10k C4, C5 - 100nF C6 -47-100uF C8-C9 - 12-22pF C2 - w jakim celu? Gdzie jest rezystor diody LED transoptora? R1 - nie wystarczy rezystor pull-up w pinie mikrokontrolera?
Witam, Szukałem po forum jakiejś pomocy, ale w archiwum nic nie znalazłem... Ze strony producenta atmel ściągnełem skrypt do obsługi rc5. Chce poprzez pilota sterować pracą mojego urządzenia, ale na chwile obecną chce zapalac/gasic diode na pinie PB1. Do uC podłączony jest odbiornik pod pin PD2 tak jak w programie podano. Producent pisze o częstotliwości...
Hej, Poniżej jest sprawdzony i działający kod dla MSGQ7: [syntax=c] void MSGEQ7init(void) { //Ustawienie portów STROBE i RESET, jako wyjściowe ze stanem "0" MSGEQ7_DDR |= (1<<MSGEQ7_STROBE_NR)|(1<<MS... //Stan wyjściowy: Reset=0, Strobe=1 MSGEQ7_RESET_LOW; MSGEQ7_STROBE_HIGH; } void MSGEQ7readBands(uint8_t *Bands) //920us { MSGEQ7_RESET_HIGH;...
Czasem się da - kiedy nie używasz standardowych szybkości transmisji albo kiedy szybkość jest niewielka i błąd wnoszony przez kwarc "ni w pięć ni w dziewięć" wynosi poniżej 2% albo kiedy oba komunikujące się urządzenia mają taką samą częstotliwość kwarcu.
No Dobra program juz prawie napisałem i głowiłem sie nad wersja ze zmiennym PWM+f... ale z tego co mi odpisałes to wnioskuję ze coś tu mi nie gra... A nie możnaby programowo realizować ten restart co 80ms? Moze napisz dokładniej co to ma być a coś doradzimy :) Pozdro No wlasnie o to chodziło by nie restartorwać tego zewnetrznie bo chyba prosciej zaimplementowac...
Oczywiście, zapomniałem, najlepiej Bascom i procesor Atmega8.
Nie podałeś ważnej informacji - częstotliwości zegara jaki jest ustawiony.
Na pewno przeczytałeś temat wątku, w którm się wypowiadasz? ;-) Albert
Temat już poruszany (jeśli chodzi o "czysty" mikrokontroler). Dla przetwornika U/f czętotliwość pomiaru ograniczony jest częstotliwością zegara systemowego i możliwościami konwertera http://www.elektroda.pl/rtvforum/topic61...
wydaje mi się ze 2MHz zmierzysz bez dodatkowych układów oczywiście pod warunkiem ze CPU będzie taktowane odpowiednią częstotliwością
ale o jakie częstotliwości konkretnie pytasz
Zacznij od uruchomienia samego wyświetlania. Przerwanie timera zgłaszane z częstotliwością np. 300 x liczba_cyfr Hz, a w procedurze obsługi tego przerwania jakieś 8..10 linii kodu realizujących wyświetlanie cyfr na wyświetlaczu, przechowywanych w posatci tablicy. Kiedy to Ci zadziała, bierz się za resztę. Cały program, który to robi, zapewne zmieści...
Zacznij od podania co to za moduły, bo częstotliwość ich pracy niewiele wnosi.
Napisz dokładnie jak podłączyłeś diodę świecącą. Migania diody przy kręcącym się wiatraku nie zobaczysz ze względu na wysoką częstotliwość.
Może jest na granicy błędu zegarowego. Licznikiem częstotliwości można to sprawdzić.
""Nie wiem czy to odpowiedni dział jak nie to porszę przenieść i napisać na PW gdzie jest. :D"" Mam AT8 i programuje go. Teraz mam problem bo nie wiem jak uzyskać czestotliwość 1 Hz. Mam taki kod: $regfile = "m8DEF.DAT" Config Portb = Output Dim A As Byte For A = 1 To 10 Step 1 Portb.0 = 1 Waitms 100 Portb.0 = 0 Waitms 100 Next A End 1.Ale...
Ale jak pisałem ten projekt Duch ma błędy i forumowicze mają same problemy. W Twoim przypadku było kilka błędów które się na siebie nałożyły. 1. to nadpisywanie zmiennej ss string as 6(za krótka) powinna być 7 lub 8 2. złe pozycjonowanie napisów na LCD 3. złe podłączenie DSów (zasilanie) to że u innych działa to nie znaczy że jest dobrze) jeśli miałbyś...
http://www.elektroda.pl/rtvforum/topic73...
Witam. W AVR Studio otwierasz kolejno: Project->xxxxProperties->Toolchain->Symb... W Define Symbols (-D) wklejasz : F_CPU=8000000
już zrobiłem i działa, mam jeszcze jedno pytanie jak ustawić predkość transmisji po rs-ie 115200 żeby korzystać z wewnetrznego oscylatora, on ma max 8MHz przestawiać go można w programie, a chodzi mi o 0% błędu UBRR czy można ustawić ten wewnętrzny zegar na takie czestotliwości pośrednie aby dopasowac się z czestotliwością z tabeli w datasheet. pozdrawiam
Witam. Otóż złożyłem układ, puki co na płytce prototypowej. Atmega8 + driver led MBI5030. Na GCLK generuje sygnał prostokątny, jednak wynosi on tylko 31kHz i nie wiem jak podać większy (do 8MHz) z Atmegi przy pomocy liczników. Aktualnie generuje go przez PWM z wypełnieniem 50%. Pozostałe zmierzone częstotliwości : LE 7,48kHz DCLK 40kHz GCLK 30kHz Jedna...
Mam problem steruje diodą RGB trzema pwmami. Uzylem sprzętowego pwma. Chciał bym sterować 4 ledami ale nie mam pojęcia jak to multiplexowac. Dodaje ze sterowane jest czestotliwością z aparatury RC używając komendy pulsein.
F_CPU=8000000 ustawione w Properties projektu A fuse bity w uc masz ustawione na 8MHz. Jeżeli nic nie ustawiłeś to uc domyślnie pracuje z częstotliwością około 1MHz.
Najpierw napisz program, zaprogramuj procesor a potem pytaj dlaczego nie działa. Tu uzyskasz pomoc a nie gotowe rozwiązania. Na górze strony są takie tematy "i". Zajrzyj.
Sygnał o którym napisałeś można generować nie tylko korzystając z timera . Można również zrobić to programowo. Z tego co napisałeś jest to sygnał sterujący do serwomechanizmów modelarskich Od 1 do 2 ms i przerwa 20 ms . Bascom z tego co pamiętam ma coś gotowego w stylu config servo ... Jeśli chcesz zrobić to za pomocą timera lepszym rozwiązaniem jest...
Witam. Czy da się zmienić częstotliwość taktowania mikrokontrolera programowo. Np. żeby jedną procedurę robił przy taktowaniu 1 MHz a inną 8 MHz.
Jak dla mnie to przekombinowane, raczej trudno będzie zapanować nad w miarę stabilną częstotliwością.
może wiecie czy da się zrobić miernik częstotliwości na atmega8 albo macie schemat takiego czegoś na innym procu???? Z góry dzięki :!:
ad 1. Dla timer 0 nie jest źle, bo masz preskaler i licznik jest 16-bitowy, więc wystarczy odpowiednio to skonfigurować i te 5 Hz uzyskasz. Timer 2 ijest tylko 8-bitowy, więc 5 Hz nie uzyskasz (chyba, że zwolnisz taktowanie MCU). ad 2. Zainteresuj się bitami COM, które definiują zachowanie wyjścia timera.
No to ciągnąc dalej wątek zasilania bateryjnego z opcja usypiania okazuje sie zresztą wynika to jasno z wykresów ,że nie nalezy chcąc zaoszczedzic prądu stosować niskich czestotliwości taktowania a wrećz przeciwnie czy wyżej tym lepiej.
Kolego czy oglądałeś jakiś poradnik Mirka36, twórcy MkAVRcalculatora, jak sie go używa, albo czytałeś instrukcję? Zmiana FuseBitów, nawet w tej zakladce "Proste" nie oznaczy tylko zaznaczenia kropki przy danym taktowaniu. Po zaznaczeniu kropki trzeba przejść na zakładkę Programator i tam wybrać Zapis i postawic ptaszka przy FuseBits po czym nacisnąć...
Dzięki za odpowiedź. Tak musialem taktować, żeby dostać czestotliwość ok 36 Khz. Później zamieszcze przebieg pilota z programu VMlab. Może się myle ale pilot raczej działa dobrze. Wydaje mi się, że błąd istnieje w odbiorniku.
Każdy z nich! Odległość nie wpływa na pomiar, bo np. SMT daje sygnał w postaci czestotliwości zależnej od temperatury. Częstotliwość (w zakresie 1 - 4 kHz) nie jest zależna od długości kabla.
witam , potrzebuję pomnożyć 7razy impulsy wejściowe , częstotliwość wej nie jest duża max 200hz , znalazłem podobny program na pic16 mnożacy 39razy i kawałek kodu na atmege8 również mnożący 39razy , jednak zupełnie nie mam pojęcia jak cos takiego napisac w bascomie kod dla pic: Device 16F628A Config INTRC_OSC_NOCLKOUT, WDT_OFF, PWRTE_ON, LVP_OFF, MCLRE_ON...
Witam, tak jak w temacie chciałbym zrobić generator przebiegu który byłby przynajmniej w 100 krokach przestrajany w zakresie od ok 200kHz do 500kHz. Próbowałem już robić to za pomocą Timer'a 1 w trybie CTC, lecz rozdzielczość przestrajania była stanowczo za mała :( może ktoś jest w stanie polecić prosty i tani generator na spi czy coś w tym stylu gdyby...
Korzystam z: ATMega8 LCD podłączony tak jak na schemacie u Alcon_x (z tytułu topika) czyli 4 bity Czestotliwość jak narazie dowolna, dla ustalenia uwagi 1 MHz LCD - 2 wiersze po 16 znaków (niestety nie znam modelu - kupilem na allegro z rozbiórki - mysle, że to HMC16225SY-PY - wyglada tak samo). Programuje w C - WinAVR. Próbowałem korzystac z bibliotek...
Wszystko masz opisane w dokumentacji technicznej od Atmega8, czy naprawdę tak ciężko to sprawdzić. Zasilanie – 2.7 - 5.5V (ATmega8L) – 4.5 - 5.5V (ATmega8) Zakres częstotliwości pracy – 0 - 8 MHz (ATmega8L) – 0 - 16 MHz (ATmega8)
Dalej nie rozumiem w czym jest problem. Czy zmienię na OCR1A, TOIE1A, TIMER1_COMPA_vect czy OCR1B, TOIE1B, TIMER1_COMPB_vect, czasy dalej są rozbieżne (pomijając samo to, że jestem w stanie dostrzec miganie diody, co nie powinno mieć miejsca przy żądanej częstotliwości 200Hz).
Zakres pracy to 500 - 1500kHz. W atmedze chciałem timerów używać czysto sprzętowo. Kiedyś w podobny sposób zrobiłem przestrajalny generator z regulowaną czestotliwością i wypełnieniem łącząc szeregowo 2 timery
To zależy co chcesz osiągnąć. Jak tylko beep to z generatorem. Jak chcesz zmieniać wysokość generowanych tonów to bez generatora. O częstotliwość musi wtedy zadbać kontroler.
Witam , miałem niegdyś podobny problem , tyle że działam w Bascomie , lekarstwem było przestawienie procka w fusebitach na częstotliwość 8 MHz.
Programowej ? Duzo zależy od tego z jąka czestotliwościa te przebiegi chcesz generowac. Jak rozumie prostokat? Co do kodu - w basicu nie pomoge, nie znam ;]
To w takim razie jakie powinienem wziąć poprawki do obliczeń, aby z dość dużym przybliżeniem obliczyć wyjściową częstotliwość? I jeszcze jedno pytanie - czy w momencie wykonywania przerwania timer dalej zlicza, czy czeka na zakończenie wykonywania przerwania?
No w wielkim skrócie to program ma właśnie to robić + dodatkowo półkrok lub inne usprawnienia. Zawracanie kijem Wisły ma sens w ramach nauki programowania. Wracając do częstotliwości. Żaden silnik nie będzie pracować z taką prędkością (na pewno nie te które mam). Jest to po prostu prędkość komunikacji softu ze sterownikiem. Wynika z tego że sygnał...
widzę że słabo coś z odpowiedziami nic może kod pomoże; .DEVICE ATmega8 .org 0x00 ldi r16, 0xff ;port b wyjścia out ddrb, r16 in r18, wdtcr sbr r18, (1<<wde)|(1<<wdp... out wdtcr, r18 wdr a: ldi r17, 0b01010101 out portb, r17 neg r17 out portb, r17 jmp a
Czemu w przerwaniach nie zapamietujesz na stosie rejestru SREG? Dodano po 10 A tak na marginesie to ja bym raczej do liczenia impulsów zaprzągł przerwania a w programie głównym (który nawiasem pisząc się tutaj nie kończy )wyświetlał wyniki.
Rozumiem, że Atmega masz nowe. Więc pracujesz z wewnętrznym oscylatorem = 1MHz. W programatorze masz zworke odpowiadającą za programowanie na niższych czestotliwościach w twoim wypadku 1MHz. Musisz poczytać dokumentacje nt. usbasp i usunąć odpowiednią zworkę.
Dziwne to jest. ATMega8 podobno działa 4.5-5.5V, zgodnie z tym, co stoi na pierwszej stronie karty katalogowej, ale kilka linii niżej przy power consumption wartości podano przy 3v. W rozdziale 'Electrical characteristics' brakuje wykresu Fosc(Vcc), który pojawia się zawsze u Microchipa. Można chyba przyjąć, że przy niskiej czestotliwości oscylatora...
32.768kHz to chyba 32768Hz, więc chyba tyle należy wpisać, nie? Skąd te 32768700 się u Was bierze? A te 3.2768 mHz to co to ma być? Ten kwarc może i służy do zrobienia RTC, ale nie radzę ustawiać go jako główne źródło taktowania, bo zablokujesz sobie możliwość programowania przez SPI jak masz jakiś dziwny programator (nie pozwalający na zmniejszenie...
Witam. Czy blok licznika (wejście T0) w atmega8 jest niezależny od zegara procesora? Jeżeli tak, jaką maksymalną częstotliwość mogę podać na wejście licznika? Pozdrawiam.
Generalnie się nie mylisz, ale przy programowaniu AVR jest slave'em i to master (programator) narzuca częstotliwość.
tak, nie, tak (sygnal zewnetrzny zbedny, jesli nie jest tak wlasnie ustawione), kwarc/rezonator/generator, dokladnosc najpierw sie zaklada, a potem ocenia czy wystarczy. 4\/3!!
No dobrze, ale nie rozumeim tylko po co w tamtym artykule pisali ze trzeba zrobic ten uklad z dwoma kondensatorami i tym kwarcem, cytuje "Dalsze czynności zależą od tego czy mamy już płytkę na której mikrokontroler będzie pracował. Jeśli tak to podłączamy odpowiednie piny naszego programatora do płytki z mikroprocesorem, w przeciwnym wypadku musimy...
Ok, to sprawa tego dzielnika jest załatwiona (wielkie dzięki za informacje), ale jeszcze mam pytanie odnośnie ostatniego postu: czy jeżeliby dać to o czym piszesz to dałoby sie mierzyć także częstotliwość trójkąta czy sinusoidy, ponieważ będzie to komplet do generatora, i zalezeło by mi abyś mógł coś bliżej o tym napisać (może jakiś schemat, albo przykład...
Problem nie jest z falownikiem. Właściwie w projekcie nie biorę go pod uwagę. Tu raczej nie chodzi o konkretny falownik, tylko o to jak rozwiązać problem jego sterownia PWMem ... Witam. Napisz z czym masz wreszcie problem? Jeśli nie z falownikiem to znaczy że znasz kilka możliwości ich sterowania!! Jednym z nim jest sterowanie napięciowe w standardzie...
Niech ci bóg w dzieciach wynagrodzi!!!! Trzy dni sie z tym męczyłem. Nie doszedlem do tej strony dokumentacji gdzie Timer2 jest opisany :P Jeżeli ktoś by kiedyś potrzebował wygenerować 36kHz na ATmega8 to podaje przepis: TCCR2=0x99; TCNT2=0x00; OCR2=0x1b;/ i na PB3 pojawia nam sie potrzebna czestotliwość :D
Co do tych rezystorów to widziałem właśnie schemat gdzie atmega8a była bezpośrednio spięta z tranzystorem i pełnił on funkcje przełączającą. Dla wolno zmiennych sterowań tranzystorem(obojętnie jakim) jest to prawdziwe. ATmega8 to częstotliwości do 20MHz. W układzie dochodzą pojemności ścieżek(połączeń), pojemności złącz(B-E, S-D) i te pojemności wprowadzają...
Wiem, że pytanie banalne, ale rozumiem, że podłączyłeś ten zewnętrzny rezonator? Pamiętasz także, że bit zaprogramowany ma wartość 0, a nie odwrotnie?
Może zmień częstotliwość PWMa?
czestotliwość pomiar czestotliwość migania niestabilna czestotliwość
prosty zasilacz stałoprądowy katalizator toyota pralka mastercook moduł schemat
samozamykacz furtka sztuka elektroniki
Schemat blokowy dekodera DVB-T2: kluczowe etapy przetwarzania sygnału Ile watów można rozproszyć z 1 dm² radiatora?