Choć jestem elektronikiem ze sporym stażem, posiadam marne pojęcie o programowaniu mikrokontrolerów AVR. Obecnie zaszła potrzeba wykonania pewnego urządzenia przy wykorzystaniu procesora o małym poborze prądu wg założeń: W jak najkrótszym czasie po każdym załączeniu zasilania, należy wygenerować określony ciąg impulsów z zakresu 1, 2, 3 … 28,...
Witam Potrzebuję na najprostszym modelu mikroprocesora ATMega z wykorzystaniem przetwornika DAC otrzymać do wyboru 3 przebiegi, sinus, trójkąt, piła. Wymagana jest regulowana częstotliwość i stała liczba próbek w okresie. Czyli - jak najprostszy schemat w przykładowo Proteusie, czy tam Eagle (procesor podłączony do wyświetlacza gdzie jest napisana częstotliwość...
Chciałbym kupić jeden z tych zestawów uruchomieniowych i prosze o opinie. Chciałbym pozanać wasze zdanie o ich wyposażeniu. Moduł ZL12AVR opracowano z myślą o ułatwieniu powszechnego stosowania mikrokontrolerów ATmega16 przez konstruktorów, którzy nie mogą lub nie chcą inwestować w zautomatyzowany montaż elementów o relatywnie gęstym rastrze rozmieszczenia...
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ą. http://obrazki.elektroda.pl/2501383900_1... http://obrazki.elektroda.pl/2625388300_1... http://obrazki.elektroda.pl/1655047300_1... http://obrazki.elektroda.pl/4889497000_1...
Witam, wymyśliłem generator ("prostokąt") na atmega. W założeniach miałem częstotliwość do 5MHz i wyświetlanie na LCD w Hz. Moje pytanie brzmi czy program jest napisany poprawnie, oraz co należało by zmienić? $regfile = "m8def.dat" 'Info dla kompilatora. $crystal = 8000000 'Informujemy kompilator o kwarcu 8MHz. Config Lcd = 16 * 2 'Konfiguracja...
Witam. Mam problem z generatorem przebiegu prostokątnego 153.6 kHZ. Na początku próbowałem go zrealizować przy pomocy układu 4060 (Motorola) i kwarcu 4915.2 MHz. Niestety jak się okazało z tym układem są zbyt duż problemy.. Postanowiłem więc użyć procka - padło na ATMega8 (był pod ręką). Napisałem program: #include <avr/io.h> #include <avr/interrupt.h>...
Witam! od jakiegoś czasu jestem w trakcie robienia mojego projektu, jednak po skończeniu całego układu okazało się, ze wewnętrzny generator 8MHz jest za wolny :( na dodanie zewnętrznego generatora jest za późno, bo procesor którego użyłem ma tylko jeden pin wolny i to ADC, a prawdę mówiąc nie podoba mi się zbytnio dawać nowego uC (atmegi 16). Jest jakaś...
Witam, Przez przypadek zmieniłem ustawienia w AVRStudio z kwarcu na zegar zewnętrzny. Próbuje podpiąć przebieg prostokątny wg. noty aplikacyjnej ale atmega nie chce w ogóle ruszyć. Czy ktoś już z was próbował tak uruchomić procka i może coś doradzić ? http://obrazki.elektroda.net/76_12733243... Pozdrawiam
Witam. Napisałem funkcję losującą 24bitową zmienną, ale program zawiesza się podczas jej wykonywania. Nie mam już pojęcia co może być źle. [syntax=c]/* * main.c * * Created on: 01-04-2013 * 15:05:56 * Author: miszczo */ #include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> #include <avr/pgmspace.h> #define TIME...
Uruchom arkusz kalkulacyjny, utwórz formułę by na podstawie kąta w kolumnie A od 0-179st utworzyć wartości sinusoidy od 0-255 w kolumnie B. W Excelu będzie np. taka =LICZBA.CAŁK(SIN(A1*(PI()/180))*255). Jest ona prawidłowa dla PWM 8bit. Jak chcesz inną amplitudę, np. przy PWM 10bit to zmień ostatnią liczbę na 1023. Teraz rozdzielczość sinusa z PWM możesz...
http://obrazki.elektroda.net/43_12786005... Atmega fusebit doctor, jak sama nazwa mówi, to urządzenie do naprawienia nieumiejętnie przestawionych fusebitów w mikrokontrolerach z rodziny AVR. Największymi problemami jest ustawienie nieprawidłowego źródła zegarowego (fusebity CKSEL), wyłączenie programowania SPI (fusebit SPIEN), lub ustawienie pinu...
Ja to widzę tak: - ustawisz ADC w tryb Free Running, czyli będzie na okrągło wykonywał pomiary na jakimś wejściu a ponieważ wejście zostawimy niepodłączone, to jest szansa na losowe bity. - po skończeniu pomiaru ADC wywoła przerwanie które będziemy wykorzystywać do wszystkich Twoich potrzeb nie tylko do generowania losowej liczby. Innymi słowy ADC zastąpi...
Witam Szum z diody ma charakter zbliżony do szumu białego, to znaczy że amplituda jest w miarę stałą dla całego zakresu generowanych częstotliwości, stąd odzyskanie impulsów o niskiej częstotliwości będzie bardzo trudne do odzyskania komparatorem. Jeśli chcesz robić doświadczenia z impulsami raz na kilka sekund lub minut to możesz uzyskać je cyfrowo....
Tu znajdziesz generator liczb losowych na ADC, który pomagałem zrobić kol. modrzej1988: http://www.elektroda.pl/rtvforum/topic19...
66 osoby widziały ten post, ale tylko jedna odpowiedziała. Wiesz dlaczego? Ponieważ Twój kod i schemat są nieczytelne. Jakie mosfety włączają zasilanie? Czy korzystasz z mosfetów logicznych? Przepisz kod tak, aby każdy pin, i port, do którego się odwołujesz miał swoją nazwę (przy użyciu #define lub const). Na podstawie tego, co podałeś mogę stwierdzić,...
Witam, wykonałem syntezę LM7001 z ATmega 8 według projektu http://www.elektroda.pl/rtvforum/topic13... Część sterownika pracuje ,to mój pierwszy zaprogramowany układ. Problem to wyj. lm na generator zero reakcji przy zmianie z sterownika ,nap. 0V i ten grzejący tranzystor wzmacniacza po gen. Może ktoś z was uruchamiał ten układ pomocne...
Już w innym wątku rozważałem próbkowanie krótkiego odcinka sygnału i obliczanie FFT i wyświetlanie go na oscyloskopie, czyli impuls wyzwalający podstawę czasu, a potem zmiany napięcia tak, jak są poszczególne wartości transformaty. http://www.elektroda.pl/rtvforum/topic32... Okazuje się, że w praktyce nie da się zmusić Atmegi32 do zarejestrowania...
Przepraszam, że się wtrącę za 2 pkt (moderatorze, nie złość się), ale to jest swoisty urok Elektrody. W zaledwie 2 strony od generatora na 555 do... chińskiego młotka, zwojów zwartych, matury i lokalnego konfliktu. Jeśli pewnego dnia Elektroda się zmieni, będzie mi chyba smutno :) Nie dogryzam nikomu z dyskutujących, po prostu się uśmiecham z pewnego...
Witam Spójrz na mój artykuł o I2C czyli TWI na procesorze Atmega8 jest tam też sposób wykorzystania - kodowania układu PCF8583 i układu PCF8574AP (układ PCF8574AP to to samo co PCF8574A). Pisałem ten artykuł z myślą o początkujących kolegach zobacz może coś wybierzesz z mojego kodu a jest to zegarek z wyświetlaczami LED(SA10-21GWA) i układem PCF8583...
Witam serdecznie potrzebuje zrobić licznik impulsów tzn. ustawiam żądaną wartość np. 2 i po naciśnięciu przycisku 2 razy załącza mi się przekaźnik w impulsów ,naciskam przycisk znów dwa razy i znów załącza się przekaźnik także w impulsów i tak w kółko dodam iż chciałbym to zrobić na wyświetlaczu LED znalazłem w sieci avt1824 lecz niestety avt nie udostępnia...
Trochę pokombinowałem i nawet kupiłem nowy uC. Wszystko chodziło, aż nie ustawiłem bitów konfiguracyjnych CKSEL=1111, czyli zewnętrzny rezonator kwarcowy. Program w starym uC chodzi, jak wsadziłem nowy to dał się zaprogramować, a później kicha. Nawet z zewnętrznym generatorem. Napisałem sobie szybko taki prosty interface do programowania i chodzi dobrze...
Problem w tym, że schematu nie mam, prototyp narazie składałem na AVR. Generator jest taki sam jak w oryginalnym układzie i wszystkich innych, narazie bez rewelacji, bajery będą później. Bramka AND z 74LS08. Wyjście do wejścia timera 0, który zlicza sobie impulsy z generatora (dodatkowo jeszcze jest zliczanie ilości przepałnień licznika, bo mały jest,...
Świetna sprawa z tym saperem. Będę czekał na kolejne gierki dla tej konsolki. Atmega chyba nie może wykonywać zewnętrznego kodu? Gdyby mogła - można by zrobić coś w rodzaju kartridży z grami. Na karcie pamięci lub jakimś układem z pamięcią flash czy eeprom. Interesująca jest również sprawa z generatorem liczb losowych. dzięki za schemat i opis. "Pomógł"...
(at)ElektrodaBot 2. Arbiter musi zapamiętać, kto otrzymał szynę → trzy przerzutniki D (74HC74) są obowiązkowe. - rozrysuj to . 3. CASIN0-3 kontrolera 673104A łączymy zgodnie z notą: OR(RASIN, DATA_STROBE). Przy 8-bitowej szynie wszystkie cztery wejścia można równolegle zewrzeć- nie można dlatego , że na liniach CASIN0-3 wewnątrz 673104 są tylko drivery...
Witam Postanowiłem pobawić się trochę układem DS1305. Ogólnie układ wydaje się działać, jednak kiedy bliżej przyjrzeć się temu w jaki sposób zliczany jest czas pojawia się pewne dziwne zjawisko. Mianowicie co jakiś (co 10 sekund/minut) czas zamiast inkrementacji sekund/minut o 1 inkrementują się one o 7 np. z 25 na 32. Poza tym wszystko wydaje się być...
To nie mikrokontroler "marnuje pamięć", a źle napisana biblioteka. Kod na uC 32-bitowy na ogół nie jest dłuższy niż odpowiadający mu kod na uC 8-bitowy, bo to samo da się zrobić mniejszą liczbą operacji. Za jakość bebechów biblioteki odpowiadają jej autorzy. Projekty, które na STM32 robią dużo więcej, niż da się zrobić na śrenim ATmega, na ogół zajmują...
I nie musi bo kwarc jest tutaj opcją, każdy ATtiny i ATmega ma wbudowany oscylator RC, źródło zegara wybiera się na etapie konfiguracji rejestrem CKSEL. Bęc... punkt dla Atmela. A gdzie ten punkt przepraszam? STM-y np mają z reguły dwa - LSI i HSI. Do tego nie ma upierdliwych fusebitów. Jak zewnętrzne żródło zegara padnie to nie blokuje procka tylko...
Witam, znalazłem na forum podobno działający kod do obsługi TWI. Ale u mnie jest problem z jej obsługą. Wysyłanie bajtów nie powoduje błędów, ale za to jak chce odczytać jakąś wartość to program się zatrzymuje w miejscu (zaznaczone w kodzie do którego miejsca dochodzi). Dodam że INT z RTC działa prawidłowo, układ nie wydaje mi się żeby był wadliwy....
moze pomogłoby połaczenie kilku programowanych równolegle liczników i na tej podstawie (przy odpowiedniej częstotliwości zegara) programować go wartością przy której liczniki zgłaszałyby przerwanie (przeniesienia albo pożyczki w zależności w którą stronę by liczył) wówczas może by można było mówić o nieco płynniejszej regulacji częstotliwości. Tylko...
CLKO nie mogę użyć gdyż pin już używam do czegoś innego i jest akurat zajęty(ICP). Liczyłem raczej na odpowiedź bardziej praktyczną niż typu, że do XTAL nie można nic podpinać, bo można. Nawet w samym datasheet atmega pisze, że w przypadku taktowania większej liczby układów z jednego oscylatora należy użyć full rail-to-rail swing, aby zakłócenia nie...
Użyj sprawdzonych bibliotek do zegara. Pamiętaj o rezystorach podciągających. [syntax=c] void TWI_inicjacja(void) { // Czestotliwosc TWI(i2c) = 100kHz (max 100kHz) -> atmega8 taktowana wewnetrznie 8MHz (RC=8MHz) // ----------------------------------------... /* TWSR = TWS7 TWS6 TWS5 TWS4 TWS3 - TWPS1 TWPS0 */ TWSR =0b00000000; // Preskaler =...
Masz ATmega8, czyli masz ADC i masz timer połączony z pinami I/O, czyli za pomocą timera możesz generować przebiegi na wyjściu. Rzecz wręcz banalna. Za pomocą ADC wykonujesz pomiar napięcia. przeliczasz go na okres, albo odrazu częstotliwość, nie wiem jak to w bascomie wyglada. W każdym razie częsottliwość ustala się przez zapisanie w odpowiednim rejestrze...
Podstawową zaletą z wykorzystania 1-wire zamiast USART jest brak konieczności stosowania kwarcu (w przypadku ATTiny lub ATMega). 1-wire jest na tyle tolerancyjnym protokołem, że zmiany timingów związane z niestabilnością wewnętrznego generatora są bez znaczenia. Tu autor zamiast wykryć przyczynę problemów, zastosował ominięcie pod postacią kwarcu. Ale...
A tak uczciwie: Zaczynamy od określenia wymagań na częstotliwość wejściową timera. Musi ona być wielokrotnością wszytskich możliwych wartości częstotliwości pomnożonych przez wymaganą liczbę stopni wypelnienia. Jeśli np. chcemy mieć 100 stopni i częstotliwości 2, 3, 4 i 5 kHz, to częstotliwość wejściowa timera musi być wielokrotnością 200, 300, 400...
Ustawiłeś Compare = Toggle, Clear Timer = 1. Wartość OCR2 wpłynie na częstotliwość. TCNT2 nie wpłynie na nic. Jak to binarnie? Binarnie/dziesiętnie/szesnastkowo/ósekmk... - jeden gwint. Przecież to będzie ta sama liczba.
Można też się pobawić w układ mieszany: generatory robisz na jakimś mikroprocesorze (np. ATmega), mpsor steruje przetwornikiem C/A, z przetwornika wychodzimy na analogowy filtr przestrajany i wzmacniacz sterowany napięciem. Jako generator obwiedni można użyć układów robionych na piechotę albo drugiego mikroprocesora z przetwornikami C/A. Zastosowanie...
Pomóżcie mi bo mnie krew zalewa. Atmega mierzy impulsy na wejściu zewnętrznego przerwania INT1. Timer2 służy jako podstawa czasu. Od około 240 kHz na INT1 miernik mierzy nie poprawnie, to znaczy nie występuję przerwania od Timera2 w trybie CTC i program wisi w pętli while, ale gdy przełączę zakres na generatorze na mniejszy to wyświetla mi się wartość...
Nadal próbuję zrobić sensowny układ grający z wejściem jack (słuchawki) i głośnikiem (dynamicznym bez generatora 12V). Atmega elegancko generuje sin z pwm, który puszczam na słuchawki lub głośnik. Tu pojawia się oczywiście problem ponieważ słuchawki działają już przy 1-3V ale przy takim napięciu głośnik nie ruszy. Zrobiłem więc prosty wzmacniacz (w...
... a ja dodam link do generatora liczba pseudolosowych na ADC, który pomagałem zrobić kol modrzej1988: http://www.elektroda.pl/rtvforum/topic19...
LEDy żrą idiotycznie dużo prądu, za to wygląd, z dymionym plexi jest super. True. Chociaż musiałem wypośrodkować z tym dymieniem, bo zbyt ciemna pleksi utrudniłaby czytanie napisów na soldermasce... Wyświtelacz wyglądałby czadowo, ale klawiatura nie miałaby opisów. Natomiast wyrażone przez ciebie powyżej obawy są bezpodstawne. Bardzo możliwe. Max mojej...
config.h #define F_CPU 8000000 //częstotliwość zegara w Hz //---------------------- // LCD //---------------------- #define LCD_PORT PORTB //port wyświetlacza #define LCD_RS 2 //bit linii RS #define LCD_EN 3 //bit linii EN #define LCD_X 16 //liczba znaków w linii wyświetlacza #define LCD_Y 2 //liczba wierszy wyświetlacza //#define LCD_BIT_SWAP //zamiana...
Pan piszący tego posta (https://blog.frankvh.com/2010/01/03/atm... upraszcza wiele rzeczy, pomija istotne aspekty problemu. Błąd 60 LSB przy przetworniku 12bit to 0.0146 zakresu, czyli 1.5% . Cudów nie ma, ale generator liczb losowych to to nie jest. Jak układ analogowy jest wykonany z rezystorów 1% to będzie miał tylko...
Fuse bity i inne ustawienia raczej są poprawne, a przejście na programowanie w C lub asm raczej odpada ze względu na brak czasu aby się tego nauczyć. Zauważyłem pewną rzecz w pracy mojego programu. Jeżeli nie ma wyświetlania informacji na lcd to prędkość działania programu całkowicie mnie zadowala natomiast jeśli będę coś wyświetlał to np. liczba A...
Stawiam na problemy z taktowaniem peryferii: - złe źródło sygnału zegarowego (np RC zamiast zewnętrzny kwarc czy na odwrót) - zły kwarc (np overtonowy) - ustawiony podzielnik na 8 - źle ustawiony CKSEL - źle ustawiony PLL - źle ustawione parametry transmisji (parzystość, liczba bitów itp) Pracę ułatwiłby oscyloskop albo rejestrator (SaleAE). Dzięki...
Witam. Posiadam płytkę EVBavr04. Moim celem jest komunikacja z układem zegara czasu rzeczywistego poprzez TWI. z inicjacją układu sobie poradziłem ponieważ na wyjściu SQW/OUT pojawia mi się generator 1Hz. Jednak mam problem z odbiorem danych. Napisałem taka procedurę, jednak nie pobiera ona danych tylko jakieś przypadkowe liczby, nawet wtedy kiedy nie...
Witam, Wcale lub na minus. Wszystko zależy od wybranego przetwornika i rozdzielczości. Gdy np. ośmiobitowy przetwornik będzie umiał zgłosić koniec konwersji pracując w trybie auto, to po prostu obliczenia zamiast w przerwaniu ADC trzeba będzie umieścić w przerwaniu np. INT0 lub INT1. Ilość obliczeń, czyli obciążenie CPU się nie zmieni. Wewnętrzny ADC...
Witam czy ktoś potrafi podać przyczynę dlaczego zmienna "czas" raz przyjmuje wartość 1000 a raz 768 w tym programie? TO liczy impulsy z generatora LC, T1 natomiast odlicza odcinki 1ms. [syntax=c] #include <avr/io.h> #include "HD44780.h" #include <util/delay.h> #include "Przerwanie_INT0.h" #include <avr/interrupt.h> #include <math.h>...
Oczywiście, ja też jestem zdania, że jeśli się da, to czemu czegoś nie poprawić. A zwłaszcza, jeśli jest to małym nakładem pracy i finansów. Pytałem tylko, bo ja m.in. stosuje fabryczną klawiaturę 3x4, oraz procesor wykonuje szereg innych zadań, tak, że uśpienie go raczej nie wchodzi w grę. Nie robiłem jeszcze prób z oddziaływaniem DDSa (jako urządzenia)...
Zupełnie bez pojęcia. Za dużo reti i sei w ogóle niepotrzebne chyba. To pierwsze co rzuciło mi się w oczy. Po co te powroty z przerwań, których nigdzie nie ustawiasz :) Po co "SEI", skoro nigdzie nie ma inicjalizacji, których i tak nie obsługujesz wstawiając reti na wektorach przerwań. No dobra, może to kod wyczyszczony z pewnych elementów w celi rozjaśnienia...
Drobna uwaga do schematu, napięcie zasilania jest określone w przedziale 5,5-12V, regulator 7805 nie będzie działał w okolicach dolnej granicy. Należałoby zwiększyć minimalne napięcie zasilania lub zastosować lepszej klasy stabilizator, typu LDO. Nie, nie można przestawić przerwań na inne pin-y, a co za tym idzie bez sensowne jest konfigurowanie przerwań...
Zarys. AVRy to sympatyczne uC (mikrokontrolery) firmy znanej chyba wszystkim z produkcji legendarnej "51" z pamięcią Flash - http://www.atmel.com . Rodzina ta należy do procesorów RISC - choć lista rozkazów jest dość rozległa Smile. Większość rozkazów wykonują w JEDNYM takcie - w przeciwieństwie do np. 12 taktowych MCS-51. Dodatkowo posiadają mechanizm...
Witam wszystkich. Zaprojektowałem i uruchomiłem zegarek z wyświetlaczami LED(SA10-21GWA) i układem PCF8583 współpracującym z mikroprocesorem Atmega8 oraz układami PCF8574AP na szynie TWI(i2c). http://obrazki.elektroda.net/21_12497604... http://obrazki.elektroda.net/58_12497606... http://obrazki.elektroda.net/95_12497605...
prosze oto kod mam problem z ogarnięciem dlaczego nie zlicza mi sygnałów z int0 #include <avr/io.h> // dostęp do rejestrów #include <avr/interrupt.h> // funkcje sei(), cli() #include <avr/signal.h> // definicje SIGNAL, INTERRUPT #include <util/delay.h> #include <stdlib.h> #include <stdio.h> #include...
Kol. Roko . Częściowo takie rzeczy pojawiły się już w polskiej pomocy do BASCOM-a On-Line. Obecnie jest jednak ona czasowo niedostępna. Przykład: BASCOM AVR - Tworzenie programu W trakcie edycji (...) Jak nie pisać programów. Dość często podczas przeglądania programów udostępnionych przez inne osoby da się zauważyć pewne charakterystyczne i powtarzane...
A moze by tak zastosowac AT89S8252, ma bardzo fajna funkcje do liczenia czasu pomiedzy impulsami, licznik T2 tego uC po sygnale na wejscie T2EX przepisuje wartosc licznika do specjalnych rejestrow i zeruje się i tak do kolejnego impulsu. Ja to wykorzystuje do sprawdzania prędkości generatora SRG. pozdrawiam trikess Oparcie pomiaru na Input Capture...
liczba atmega generator liczba atmega generator
mercedes xenony termet komin kreski poziome
setti odkurzacz setti odkurzacz
Steyr Compact 4665 – nie świecą reflektory robocze, brak świateł dachowych, diagnostyka Moment dokręcenia stopy korbowodu Mazda 6 GY LF-DE L3-VE RF-CiTD AJ-V6