Tak jest na początku ale jak używam biblioteki LUFA lub czegoś podobnego to nie czuję nad tym kontroli i jak ustawia taktowanie MCU. Więc dlatego zapytałem jak sprawdzić aktualne skonfigurowany F_CPU? Zrób pętlę, w której zmieniasz stan LEDa np. co 1 s. Mierząc rzeczywisty okres zmian możesz określić...
cyt "... sumuję 16 pomiarów i później dzielę przez 16") zapewne dalej w programie jest dalsze przeliczanie - dzielenie aby uzyskać stopnie celzjusza. POLECAM nie dzielić dwa razy, tzn zrezygnować z dzielenia przez 16, tylko podzielić RAZ na końcu. Dzięki temu, powstaje oversampling, dzięki czemu bez...
Witam, mam mały problem którego nie potrafię rozwiązać, i potrzebuję porady. Potrzebuję zrobić układ który będzie przesyłał dźwięk za pomocą usart. I tak: Jeden mikrokontroler xmega będzie zbierał dżwięk z mikrofonu podpiętego do ADC i za pomącą DMA przesyłał zebrane przez ADC próbki dźwięku do UART. Drugi...
Właściwie mamy już Święta i świąteczny konkurs w DIY. A w nim sporo konstrukcji opartych na programowalnych diodach WS2812B. Stąd też, aby ułatwić innym realizację świątecznych projektów oświetleniowych, postanowiłem podzielić się rozwiązaniem pozwalającym na w pełni sprzętowe sterowanie tego typu...
Witam. Mam problem z xmega 128A3-AU. Zbudowałem prosty woltomierz do 20V lecz przy zwarciu pinu ADC z masą nie ma 0V tylko napięcie waha się od 0 do 0.06V. Czy jest jakiś sposób na uśrednienie tego nie niszcząc płytki PCB? Program napisany w bascomie. [syntax=basic4gl]$regfile = "xm128a3def.dat" $crystal...
Witam. Zwracam się do Was z dziwnym problemem, który spędza mi sen z powiek. Pacjent to Xmega 128A3U, którą próbuje zmusić do do uruchomienia przetwornika ADC. Postaram się ogólnie nakreślić w czym problem, a następnie przedstawie kod źródłowy obsługi przetwornika. Korzystam z dwóch przetworników...
Teraz mam inny problem. Chcę robić pomiar temperatury i zapisywać na kartę SD. Używam do tego modułu prototypowego tego autora: Ponieważ post dotyczy innego tematu niż oryginalny wątek, temat podzieliłem. Na przyszłość proszę w przypadku napotkania problemów niezwiązanych z oryginalnym tematem postu...
Linie SO x układów łączysz wspólnie ze sobą i dołączasz do MISO mikrokontrolera; Linie SCK x układów łączysz wspólnie ze sobą i dołączasz do SCK mikrokontrolera; Linie CS x układów dołączasz do x pinów mikrokontrolera; Co prawda artykuł jest o XMega, ale zasada działania SPI jest we wszytkich...
Ostatnio zapragnąłem męczyć się z tym maleństwem (xmega32E5).. Próbuje skonfigurować timer tak aby udało mi się zmierzyć szerokość impulsu na jednym z portów. Dla Xmega128A3U nie stanowi to problemu i mój kod konfiguracji timera wygląda tak: [syntax=c] PORTA_PIN5CTRL= PORT_ISC_BOTHEDGES_gc | PORT_OPC_PULLUP_gc;...
Popatrz na atxmegę, też na nią przeszedłem i jest to nowa jakość, peryferii full, zegar łatwo ustawić, fuse bity nie straszą, 3 poziomy przerwań, timerów full no i eventy, na tym można cuda robić. Ale Xmega, w stosunku do ARM są drogie i mają mało RAM. Nadal to 8-bit przez co trzeba walczyć z atomowym...
Witam Od pewnego czasu walczę z uruchomieniem ADC w Xmega 128D4 na zbudowanej płytce. Napisałem poniższy kod [syntax=c][/syntax] #include "PMSM.h" void Config32MHzClock(void) { CCP = CCP_IOREG_gc; //Security Signature to modify clock // initialize clock source to be 32MHz internal...
Witam , Po dłuższej przerwie próbuję się przeprosić z AVR-ami , przechodząc jednocześnie do XMega, zadanie jest proste - pomiar obrotów z wejścia PC0 . 1. Timer TCC1 - odmierza czas 100us 2. Timer TCC0 - używa przepełnień TCC1 jako zegara , strobem do pomiaru okresu / "częstotliwości" jest routowany...
Witam, mam takie dwa pytania do xmegi: 1. Jaka jest maksymalna częstotliwość próbkowania przetwornika ADC w xmedze "XMEGA E MANUAL" ? W dokumentacji jest napisane że przy 12 bitach i pojedynczym pomiarze bez wzmocnienia maksymalna częstotliwość próbkowania wynosi 300k ksps co odpowiada okresowi równemu...
Niby prosty enkoder a tyle problemów ;) Niby działa ale jednak nie zawsze i nie za dobrze, nadal zdarzają się jakieś skoki lub postoje. Chciałem użyć regulacje wartości zadanej do regulacji napięcia w mojej przetwornicy typu flyback sterowanej XMEGą Tranzystor przełączający flybacka jest sterowany...
ad 2. Nie możesz. Dla każdego procesora Vref ma określoną, minimalną wartość, zwykle jest to nie mniej niż 1,1-2,4V. Co więcej ze względu na budowę ADC w ATMega rozdzielczości lepszej niż 2mV bezpośrednio nie uzyskasz. ad 3. Oczywiście wprowadzi, w nocie jest to nawet określone. Dla 10-bitowego ADC...
O ADC będzie w drugiej części, już wkrótce. Tak, możesz zainicjować jednocześnie wszystkie kanały, lecz konwersja nie będzie jednoczesna. Cztery kanały ADC tworzą potok, konwersja w ramach potoku odbywa się co 1 takt CLKADC (kanały odpalane są zgodnie z priorytetem). Dla dwóch oddzielnych ADC jakie...
Witam, Po testowałem trochę ADC oraz DAC w XMEGAch. Jednak mam problem z określenie realnej dokładności działania tych dwóch podzespołów. Z tego co zauważyłem to mimo, wczytania ustawień kalibracyjnych od producenta DAC/ADC nie działają idealnie. Czytając pewną popularną książkę zauważyłem, że jest...
Sygnał "Power on" jest źle zrealizowany. Mikrokontroler będzie zasilany pasożytniczo przez R4, a Q1 będzie cały czas przewodzić. Lepiej wywal to i wykorzystaj pin CE w układzie AP1609. Kolejne pasożytnicze zasilanie to sygnał VBAT. Duży miszmasz na zasilaniu. Mikrokontroler zasilasz niby 3V6, a przyciski...
Dziękuję za szybką odpowiedź. Zastosowanie: Zapewne chciałeś dać |=. nie pomogło. Teraz jest tak: ADCA_CTRLA |= ADC_CH0START_bm; /... pomiaru i ADC nadal nie działa. Zastawiam się czy może sama konfiguracja w ADC_init() nie jest błędnie wykonana. Zastanawia mnie szczególnie: ADCA_CH0_MUXCTRL= ADC_CH...
Jak w temacie, mam taki kod, ma za zadanie wyświetlić wynik w 8bit, gdy kliknę w przycisk to z danego pinu Xmega, albo z innego pinu. Niestety gdy kliknę raz w jeden to pokaże prawidłowo, potem z drugiego też, ale potem już nie zmienia tych ustawień. Jest to niezbędne bo co jak jeden woltomierz...
To norma że mają taki offset. Jednym z rozwiązań jest oprogramowanie jednej nogi procka jako wyjście i zwarcie nią pinu ADC do masy. Wtedy mierzysz ten offset który potem odejmujesz od następnych pomiarów (już bez tej masy) Poczytaj o ADC w Xmega - są trochę "inne" :D Bajty kalibracyjne w sygnaturze...
Weź pod uwagę, że przy 100 kHz i taktowaniu ATMega128 równym 16 MHz, na jeden okres sygnałju badanego przypada zaledwie 160 taktów zegara. A więc rozdzielczość z jaką będziesz mierzył sygnał jest mocno ograniczona. Oczywiście jeśli interesuje cię pomiar szerokości impulsów. Druga sprawa - w jaki sposób...
Właśnie od kilku dni bawię się AtxMega32A4. Widać, że konstruktorzy popracowali nad nim i ma wiele ciekawych funkcji i ogólnie szybko i sprawnie uruchamia się kolejne peryferia (używam AvrGCC). Cieszy praktyczny system zegarów (w tym wewnetrzny 32MHz) ustawianych programowo, priorytetowy system przerwań,...
Tak na koniec zabawy z ADC polecam: [url=]Link [url=]Link Mi opis bardzo pomógł uzyskać stabilne i dość dokładne pomiary na Xmedze.
Temperaturę wnętrza to akurat zmierzysz bo Xmegi mają opcję jej pomiaru. Jeśli chodzi Ci ona 64MHz/3V3 to na pewno nie będzie problemów z 64MHz/3V6. Po za tym wciąż nie rozumiem Ciebie... raz piszesz o hobby a teraz piszesz, że nie możesz zagwarantować powtarzalności... Albo myślisz o komercyjnym projekcie...
Nie rozumiemy się. W żadnym momencie nie powiedziałem, że optymalizował będę tu a gdzie indziej nie. Z całością muszę powalczyć, przemyśleć i nieźle pogłówkować. I nie twierdzę że jestem profesjonalistą, ledwo na początkującego się załapuję ale jeśli mam do wyboru zrobić coś szybciej wykorzystując możliwości...
Spróbuj podać sygnał z jakiegoś innego urządzenia. Bo teraz masz tak że z tego samego procesora pobierasz sygnał i tym samym procesorem dokonujesz pomiaru. A generowanie sygnału i pomiar zapewne nie są niezależne- jakieś przesunięcie czasowe itp. może występować. Wszystko zależy od kodu i działania...
Chyba kolego coś kręcisz, bo nie widziałem jeszcze miernika w którym przekręcenie czegokolwiek sprawia że sonda podłączona do wejść służących do pomiaru napięcia jest zwierana. Do pomiaru prądu są zwykle osobne wejścia między innymi dlatego żeby nie były możliwe sytuacje jak wspomniałeś, ale mniejsza...
Zbyt optymistycznie podszedłem do tych wykresów, ... Nie spotkałem jeszcze przypadku, by parametry znacząco odbiegały od stanu faktycznego przynajmniej w przypadku AVR i PIC. Różnice były minimalne i zgodne z zastosowaną metodą pomiarową i błędem multimetru. Na przykład w PIC18F67K90 pomiar w najgłębszym...
Witam. Od czasu przesiadki z Bascoma na C, nie mogę uporać się z odczytem ADC na wielu kanałach. Napisałem taki oto kod: [syntax=c] //##################... Konfiguracja ADC A ########################################... ADCA.CTRLA = ADC_ENABLE_bm; //enable ADC ADCA.CTRLB =...
Aby rozwiązać ten problem wystarczy przejrzeć notę MCU. Offset, który jest wprowadzany celowo, dla pomiaru napięć oniżej GND można usunąć, albo przez kalibrację - trzeba offset zmierzyć i go odejmować od pomiaru, albo wykorzystując tryb różnicowy ADC. W tym trybie wystarczy jedno z wejść (-) programowo...
Przeczytaj jeszcze raz przytoczony cytat i zastanów się czy użyta XMEGA posiada rejestry OFFSETCORR, a nawet jeśli, to czy ich używasz? Rejestry CAL odpowiadają za kalibrację nieliniowości ADC. To zupełnie coś innego. Warto też przeczytać cały rodział o ADC - w XMEGA producent celowo wprowadza ofset,...
Witam pomiar SCALED_VCC wychodzi mi 1500 a Bandgap wychodzi mi 3330 (ATxmega128A1U Single ended mode oraz ADC_RES_12 i ADC_REFSEL_INT1V_gc) zasilanie mam 3,3V i nijak mi nie wychodzi z tych pomiarów 10*(1500-170)/((3330-170)/1.1)... - na tym poziomie mam pomiar zera (na nóżce)
Witam, chcę w większym projekcie wykorzystać RTC w mikrokontrolerze ATXmega128A3 lub ATXmega256A3BU. Zastanawiam się który wybrać gdyż wersja 256A3BU ma pin VBAT do zasilania awaryjnego RTC a 128A3 nie ma (i jest tańsza). Jest to dla mnie istotne gdyż budując układ zasilany ogniwem Li-pol na stałe podłączonym...
Witam wszystkich, Próbuję uruchomić kartę mikro SD na płytce extrino od Leona, Mam książki Pana Tomasza Francuza i przerabiam przykład "Inicjalizacja" z katalogu KartySD. Książka "AVR Układy peryferyjne". Używam Atmel Studio 7. Uruchomiłem przykład na płytce DIL64 (także od Leona). Działa w trybie...
(at)tronics Podałbyś źródło tych rewelacji? Zacznijmy od tego, że kompensacja nie wymaga żadnego dodatkowego pinu, gdyż podanie masy odbywa się programowo, poprzez odpowiednią konfigurację multipleksera. Nie widzę w konfiguracji dla trybu unsigned single ended możliwości podłączenia INTGND (bo...
Właśnie, jak podłączyć tą masę? do zwykłej masy? Jeśli mikrokontroler nie ma pinu oddzielnej masy analogowej (a jak patrzyłem na jakieś Xmega to nie ma) to łączysz po prostu do GND (Xmega). Ale nie jakoś dowolnie, tylko tworzysz sobie na płytce osobną ścieżkę, na której masz wszystko od czego zależy...
Generalnie offsetu nie ma w trybie różnicowym. W pozostałych można go eliminować przez pomiar poziomu masy, niemniej trzeba się liczyć z tym, że ponieważ wewnątrz ukadu jest generowane napięcie offsetu to będzie ono lekko pływać (kilka LSB, szczegóły w nocie). Oczywiście można włączyć ADC w trybie skanowania...
Do czegu służy prescaler w adc? Czy do generacji czyli zliczania ile impulsów do przerwania? Jak duże napięcie można podać na wejscie do pomiarów? Ustawienie napiecia referencyjnego int1v? Do czego służy i co się zmieni jak przełaczymy na refa (do którego pinu jest podłaczone te napiecie referencyjne...
Witam, chciałbym zrobić ograniczenie prądowe z użyciem wewnętrznego komparatora mikrokontrolera XMEGA. Do wejścia nieodwracającego podpięty będzie rezystor bocznikowy na którym będzie mierzony prąd poprzez pomiar napięcia a na wyjściu odwracającym będzie podłączony wewnętrznie przetwornik DAC. Dzięki...
Chciałbym wykonywać pomiary ADC na PortA (PIN2 - Positive, PIN4 - Negative) w trybie free run (tak chyba jestem w stanie osiągnąć najwięcej próbek?) i otrzymać wynik w przerwaniu jednak nie wykonuje się przerwanie. Czy mogę prosić o sprawdzenie? Oto kod: [syntax=c] #include <avr/interrupt.h> #include...
Dzień dobry. Mam problem z przesłaniem poprawnej wartości rejestru ADC za pomocą NRF24L01+ korzystając z SPI i wyświetleniem jej na wyświetlaczu. Pomiar ADC: Do pinów PA4..7 podłączone są przez dzielnik 4 napięcia (z baterii, czujnika prądu…). Na wyjściu dzielnika otrzymuję napięcia...
Nie znam C , lepiej poczekaj jak wypowie się TMF ....mam nadzieje że twój projekt nie jest od mierzenia 3,2V na adc bezpośrednio . Uszkodzić to raczej nie uszkodzisz (ale max napięcie to vcc-0,6v). Pomiar bez wykrycia "0" to robiłem w konfiguracji - Signed Single_ended.
To powiedz jeszcze jaka jest częstotliwość próbkowania i jakiej dokładności oczekujesz? Mając 8 linii analogowych w Atmega masz do wyboru kilka wariantów. 1. Każda linia podłączona przez osobny multiplekser do 3/4 sygnałów wejściowych (np. 4052) i wtedy wykonujesz serię 8 pomiarów (CH0..CH7), przełączasz...
Z AVR 12-bitowe ADC mają np. XMEGA. AVR ATMega z Arduino mają max 10-bitowe ADC. Stosując oversampling zapewne uzyskasz potrzebną rozdzielczość pomiaru. Pamiętaj tylko, aby użyć zewnętrznego źródła referencyjnego, gdyż potrzebujesz nie tylko dużej rozdzielczości ale także dokładności pomiaru. Swoją drogą,...
No właśnie, przy takich pomiarach przydają się niezależne ADC, co prawda można szybko multipleksować, wtedy tracimy na paśmie, ale dla 50 Hz nie ma problemu. BTW, nie myślałeś, żeby zamiast M32 wykorzystać np. jakąś XMEGA? Masz tam 2xADC z pipeline i skanowaniem wejść + DMA do transferów, co znacznie...
1.Mikrokontrolery AVR Duże uogólnienie. Atxmega to również AVR, a przetwornik jest 12 bitowy i znacząco szybszy. Dodatkowo znacznie dokładniejsze wbudowane źródło referencyjne (to w Atmegach to kpina jeśli chodzi o pomiary). W xmega można przetworniki "kalibrować". Jeśli chodzi o projekt to należałoby...
Czy np. można wykorzystać kolejne wejścia DAC w mikrokontrolerze, dla ściągania danych pomiarowych z różnych zakresów w tej samej chwili? ATTINY i ATMEGA posiadają max jeden przetwornik ADC. 8 wejść oznacza że przetwornik może mierzyć napięcie na dowolnym z nich, ale wciąż tylko na jednym. XMEGA...
Myślałem że mierzysz napięci baterii - a wtedy masz jakiś układ zewn (np dzielnik rezystorowy). Przy okazji signed czy unsigned mode Owszem, mierzę napięcie baterii, ale xmega ma możliwość ustawiania multipleksera na pomiar parametrów peryferiów: napięcia zasilania i temperatury. W przypadku pomiaru...
Aha czyli ma być 100kSPS. No to mi się wydaje, że XMega by była dobra. Według Atmela może wyciągnąć 4 MPS z 12 bitową rozdzielczością. Cenowo też jest chyba ok. No jak to mają być jakieś cewki z silnymi polami to faktycznie hallotron może się nie sprawdzić. Chyba, że ten element napędzany byłby...
A i B są poprawne :) Odnośnie jeszcze punku B. Powinieneś mierzyć szerokość impuslu, czyli czas od zbocza narastającego do opadającego. Ponieważ ATMega tego nie potrafi robić całkowicie sprzętowo, więc zostaje punkt A. Szerokość sprzętowo może mierzyć dopiero XMEGA. Można też czasy pomiędzy kolejnymi...
Zupełnie nie rozumiem Twojej metody. Chyba każda Xmega powinna załatwić sprawę ze względu na sprzętowe wsparcie w dekodowaniu sygnałów z enkoderów. Prędkość nie będzie tutaj problemem. Nic też nie stoi na przeszkodzie, aby to zrobić w oparciu o ARM albo PIC. Wszystko zależy od tego jakie masz pozostałe...
A konkretnie jaki masz problem? W Internecie jest parę opisów ADC dla XMEGA, możesz też ściągnąć przykłady do ksiażki "AVR. Układy peryferyjne" - tam masz kika przykładów konfiguracji ADC w XMEGA.
BlueDraco - taktowanie timera nie jest problemem, nawet w XMEGA może to być 256 MHz, ba, nawet w zwykłym ATTiny może być to w granicach 100 MHz. Problemem jest to, że wejście jest synchroniczne i procesor musi mieć możliwość samplowania wejścia z tak dużą częstotliwością. Stąd też taktowanie IO musi...
Tak, jak ci pisałem, najprościej pobrać przykłady do moich książek - są za darmo. Generalnie może być tryb różnicowy (na XMEGA ze względu na offset w trybie z pojedynczym wejściem) jest to wygodniejsze. Jako pin ujemny wybierasz po prostu GND.
Mogłeś wziąć XMEGA E5, która ma sprzętowe uśrednianie. Spróbuj podłączyć zewnętrzne nap. referencyjne. Ważny jest też projekt PCB - w końcu mamy 12-bitowe ADC, szum 1 LSB to jak pisałem zaledwie 244 mikrowolty dla ref. 1 V. Można też spróbować użyć większego nap. referencyjnego i zmniejszyć dzielnik....
Witam. Nie potrafię poradzić sobie z czujnikiem DS1820. Nie wiem co robię źle. Czujnik podpięty do portu D pin 2. Zasilany na stałe z 3.3 V. Linia danych podpięta przez 4k7R do 3.3V Przewody między czujnikiem a uC to ok 5 cm. uC to Xmega 128A3U. Pracuje na 32 MHz. W odpowiedzi na polecenie...
O ile dorze rozumiem idee tego przerwania (nie miałem okazji wykorzystać go w praktyce) to określona zmiana na którymkolwiek pinie z grupy wywołuje przerwanie... i teraz myślałem, żeby za pomocą prostych warunków zliczać, który wywołał i ile w danym czasie. Problem widzę w momencie, gdy przykładowo...
Witam. Jestem początkujący jeśli chodzi o zabawę z mikrokontrolerami. Otóż zakupiłem gotowy moduł z ATxmega128A3 i chciałem zrobić pomiar napięcia na nim. Dzielnik 1:20 i nie mierzy 0V tylko na dzień dobry jest od 0.02V do 0.05V. Przy pomiarze baterii 9V czy akumulatora w samochodzie pomiar jest fałszywy...
A te takty są ci do czegoś potrzebne? Jeśli to co robisz wykorzystuje XMEGA do tego stopnia, że 2 takty poświęcone na odejmowanie robią różnicę to lepiej od razu przejdź na ARMa - szkoda się męczyć. Ale coś mi się wydaje, że widzisz problemy tam, gdzie ich nie ma. Rozróżnienie poziomów rzędu 83 mV to...
Ale mi zależy na bardzo uśrednionym wyniku. Mierzę temperaturę średnią w odcinku 5 minut. Nie zależy mi na szybko zmiennych odczytach. Od siebie tylko dodam, że w tej Xmedze ADC posiada funkcję uśredniania wyników. Wystarczy wybrać liczbę pomiarów i przesunięcie bitowe wyniku. Robię to programowo,...
W trybie freerunning kolejne pomiary są wyzwalane automatycznie, po zakończeniu poprzedniego. Co do atomowości - nie, volatile zapewnia tylko to, że kompilator przy każdym dostępie do zmiennej odczyta/zapisze jej zawartość w pamięci RAM. Natomiast ty musisz zapewnić, aby przy dostępie, nie następował...
To nie ma wiele wspólnego z bitowością procesora. To ile bitów na raz można wysłać zależy od budowy interfejsu SPI - niezbyt często zdarza się aby interfejs umożliwiał przesłanie 32 bitów na raz, lub umożliwiał płynną zmianę ilości wysyłanych bitów. Jak pisałem tu przerwania są bez sensu - przy największej...
(at)Marek_Gorecki Przecież jeśli masz komparator i masz dostępne wejścia, a także wyjście (w każdym AVR, w tym w XMEGA, możesz przepiąć wyjście na pin IO MCU), to możesz ten komparator wykorzystać jako generator. Całkiem to ładnie działa, w dodatku komparatory w XMEGA są dosyć szybkie. Wyjście przez...
Oto moje odpowiedzi. Odnoszę się tylko do układów z rodziny STM32F4xx, ponieważ nie wiem nic o LPC, Kinetis czy układach od Renesas. Powiedzmy, że wyjście TxD UART chcę zmodulować przebiegiem z timera? Nie robiłem nic takiego, bo nie widzę w tym większego sensu, ale do wyboru jest SIR encoder (kompatybilny...
Oj coś koledzy krążycie wokół tematu a nie widzę nigdzie pełnej odpowiedzi. Niektóre są za to błędne albo upraszczające. F_CLK_ADC, to tak jak ktoś pisał, tylko częstotliwość taktowania ADC. A że jest to przetwornik typu SAR (z sukcesywną aproksymacją) to konwersja 1 próbki trwa n cykli zegara F_CLK_ADC. W...
Mało wiesz panie kolego. Profesjonalne oscyloskopy mają pasmo do połowy częstotliwości próbkowania i wcale nie są to 2 próbki w okresie połączone liniami ale składa się na to szereg skomplikowanych obliczeń a cała procedura nazywa się interpolacją. W moim następnym oscyloskopie spróbuję takie coś...
(at)KJ Ale do trybu różnicowego nie potrzebujesz żadnych dodatkowych pinów. To tylko zmiana konfiguracji ADC, wybierasz tryb różnicowy z wewnętrznym napięciem odniesienia. Możesz też wykorzystać klasyczny tryb, tylko wprowadzić ADC w tryb signed, dzięki czemu masz co prawda tylko 11 bitów, ale od zera,...
Owszem, rozważałem taką możliwość by sterować przy pomocy FDTI oraz bit-bang, jednak przeważyła swoboda konfigurowania pinów podłączanych do XMEGA. Druga sprawa, to w XMEGA mogę skorzystać ze sprzętowego pomiaru czasu odczytu/zapisu/kasowania stron. Trzecia sprawa, to z poziomu aplikacji PC wysyłam...
No - jeżeli będziemy na granicy bitów to nie unikniemy przeskakiwania na plus - ale na minus wtedy będzie najtrudniej przeskoczyć - No tak, albo odwrotnie :) Tobie chodziło zapewne o dokładność przetwornika. Przetwornik o rozdzielczości n bit ma dokładność n bitową dopiero, gdy bezwzględny...
Witam, Chciałbym przedstawić moja amatorską konstrukcję która miała mi służyć jako wypełnienie czasu wolnego (żaden ze mnie elektronik czy informatyk ale to chyba widać;) ). Jakiś czas temu zaczęły mnie interesować różne czujniki parametrów fizycznych i nie tylko które można było dostać...
Trochę już odbiegliśmy od głównego wątku, ale nikt nie narzeka, więc ok. Na szybko: Dokument Atmela, który podałeś nie dotyczy gcc, to stary dokument. tak tak, wiedziałem o tym, że był pisany pod kątem IAR. W każdym razie sporo zasad jest tam uniwersalnych. Chociażby kwestia optymalizacji globalnych...
Tak, zmienne domyślnie zapisywane są w SRAM, lecz dodanie zewnętrznej pamięci wymusi pewne zmiany w ustawieniach linkera - musisz go poinformować, że masz pamięci więcej. O ile oczywiście chcesz, aby zmienne były tam automatycznie rozmieszczane. Jeśli obsługa tej pamięci będzie całkowicie po twojej stronie...
Albo napisać coś inteligentniej i nawet na 8bit AVR będzie działać Pewnych problemów nie rozwiąże nawet najlepszy soft. To czego najczęściej brakowało mi w AVR to DMA i RAM. Problem rozwiązałby Xmega ale one są najczęściej droższe od dużo lepiej wyposażonych ARM i dużo wolniejsze przy tym samym zegarze...
(at)Tmf Jestem w pełni przekonany, że Atmel nie dokonał w XMegach regresu względem ATMeg. To byłoby po prostu głupie. Zlikwidowano braki, które doskwierały w stosunku do konkurencji. Ot choćby Microchipa. Nie bardzo pojmuję jaki segment aplikacji chce zająć XMEGA? Nie piszę tego przez złośliwość a...
Witam serdecznie, Tło Zajmuję się uruchomieniami dużych maszyn i w pracy często sprawdzam znaczne ilości wszelkiej maści sygnałów (600-700 na w jednej maszynie). Dotychczas do tego celu używałem oddzielnego multimetru, kalibratora oraz komunikatora HART, jednocześnie posługując się dokumentacją...
Dokładniej to nie AVRy, tylko ATMega ma jednopoziomowy sytem przerwań, XMEGA (która też należy do AVR) ma 3-poziomowy system przerwań. ATMegi mają też sztywnie przydzielone priorytety przerwań (o ile jest w ogóle sens mówić tu o priorytetach), XMEGA mają kilka schematów priorytetowania. Tak jak piszą...
A ja tylko dodam, że jeżeli teraz pracujesz nad modelem silnika i już rozważasz możliwość rozbudowy układu, to posiadanie wszystkiego na pokładzie (Xmega) znacznie ułatwia sprawę. Szczególnie, że Xmega całkiem fajnie sobie radzi ze sterowaniem silników i ma sprzętowe zabezpieczenia na wypadek awarii:...
Myślę, że najodpowiedniejszym wyborem na początek będzie jakiś mikrokontroler z rodziny AVR z tego względu, że nie są to bardzo skomplikowane układy i pozwolą ci poznać podstawy .Do tego polecam dobrą książkę i tutaj mogę zaproponować: "AVR i ARM7. Programowanie mikrokontrolerów dla każdego" autorstwa...
-te dławiki na AVCC nie są potrzebne - nie korzystasz z ADC (nawet jeśli korzystasz to wymagane są one przy superdokładnych pomiarach), - przez rezystor 1 MOm łączysz do masy osłonę gniazda USB, masy USB i układu łączysz bezpośrednio, - na USB nie ma 3,3V, jest 5V, które ci upali procka. Jeśli zasilasz...
BTW, twoje problemy jak pamiętam wynikały z kłopotów z interfejsem EBI - jakoś 6 WS musiałeś dawać? Pokazałeś kawałek kodu w asm, który nijak się ma do transmisji przez DMA. Co do opóźnień, to prawda. Mimo stosowania SRAM 55ns nie mogłem zejść poniżej 5WS, ponieważ gubiłem bajty. Powodem była prawdopodobnie...
(at)ras Sam procek i PWM to malo :) Ja nie mowie o tym co masz w procku bo obecnie dostepne procki znam dosc dobrze ale o elektronice wykonawczej itd. Problem robi sie jak to ma pracowac w roznych warunkach (tmeperatura itd.) i do tego w instalacji samochodowej ktora niestety bywa pelna zaklocen itd....
Kolejna sprawa dlaczego brakuje u ciebie w części zasilaczowej magazynu energi tylko jest sam ceramik(LM7805)?? Po mostku jest 1000uF dla dwóch stabilizatorów (9V i 5V). Po LM7805 jest 470uF. Pobór prądu z LM7805 nie powinien przekraczać 100mA, więc energii jak aż nadto. Rozważam tu raczej zastosowanie...
Nadajnik (xmega 128a3, TRYB = 1): [syntax=c]#include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #include <stdlib.h> #include <string.h> #include <avr/pgmspace.h> #include <stdbool.h> #include "SPI.h" #include "nRF24L01.h" #include...
(at)lvy Dobra robota. Tylko kilka uwag: algorytmem badania było zbieranie sumy 100 próbek z 3 kanałów (ustawionych na próbkowanie z jednego pinu) na FCPU = 2Mhz oraz największym możliwym dzielniku częstotliwości ADC To jest ADC z wejściem typu S&H, a więc mamy kondensator. Nie powinno sę za bardzo...
Proponuję użyć dowolnego uC z dwoma licznikami, ale niekoniecznie atmega8 ;) Pierwszy pracuje w trybie pomiaru częstotliwości lub pomiaru czasu (Input Capture). Drugi pracuje jako generator przebiegu wyjściowego, pędzony np. z zegara systemowego. Wartość zmierzona przez pierwszy licznik jest argumentem...
Mam pewien kłopot z uzyskaniem wartości zerowej z przetwornika ADC (Xmega). Inicjuję przetwornik: [syntax=c] void AdcInit(void) { ADCA.PRESCALER = 0X02; ADCA.REFCTRL = 0b00000000; ADCA.CTRLB = 0b00001000; ADCA.CTRLA = 0b00000001; ADCA.CH0.MUXCTRL = 0b00001000; ADCA.CH0.CTRL = 0b00000001; } //...
Witam, Poznając procki Xmega, chciałem spróbować swoich sił z przetwornikiem ADC w tym procku. Poza dziwnymi jego cechami, jak OFFSET od 200 (czasem od 170) wartości z przetwornika, zauważyłem, że wynik jest niestabilny na ostatnim miejscu i zmienia się ±3, co by przemawiało za szybkimi zmianami...
Witam Można też wyjść poza stare AVRy i użyć nowszych, XMEGA Potrzebuję mały tani uC, który wybudzi się dokona pomiaru na ADC, wyśle pomiar i znów się uśpi. XMEGA to przypuszczalnie strzelanie z armaty do muchy. Czy ja wiem czy taka armata, obejrzyj rodzinę Xmega D4 w TQFP44, wcale nie taka...
Mam już napisany w dużej mierze program w asemblerze pod mikrokontroler Atmega16. Xmega to inna architektura i robienie wszystkiego od nowa. Przetwornik A/C 10-bit to dość mało. Wykorzystując wewnętrzny komparator i wzmacniacz odejmujący dodałem jeden bit, ale to i tak za mało. Dobry jest MCP3302,...
Jeśli czekasz na konwersję i startujesz kolejną to tak naprawdę pomiar nie jest równoczesny. A jeśli nie musi być równoczesny, to 5 kanał można dodać zmieniając wartość multipleksera wejścia. Tak naprawdę można olać CH1-CH3 i wszystko robić na jednym kanale korzystając z udostęnianej przez XMEGA możliwości...
Ja bym zalecał nie obciążać przetwornika odbiorczego (gdzieś widziałem charakterystyki impedancji >10kΩ) dlatego dła by pierwszy stopień nieodwracający, wyłączony nadajnik (o małej impedancji) podłaczony przez transformator, albo nawet sam transformator też stanowią obciążenie. Dodałem...
Witam Nie chcę zakładać nowego wątku, więc piszę tutaj, bo problem podobny, choć nie do końca. Piszę program na procek XMega, który realizuje wiele rzeczy, a z istotnych tutaj steruje silnikiem krokowym i odczytuje temperaturę z DS18B20. Sterowanie silnikiem oparte jest na przerwaniu timera, w Którym...
Tak jak pisałem, ciągle nie jest to problemem dla współczesnych mikrokontrolerów. Sam pomiar realizowany jest sprzętowo, przez układ licznika wbudowany w mikrokontroler. Nawet proste AVR8 spełniają te założenia, taktowanie do 20 MHz, a więc teoretyczna rozdzielczość pomiaru to 50 ns, z tej samej serii...
wykres nie musi być bardzo płynny, ważne żeby w ogóle odwzorowywał dane To będzie wyglądać żałośnie. wykres ma zajmować cały ekran, czyli nie licząc osi to wielkość 180x275p 180*275*2 = 99kB do przesłania. W AVR nie ma tyle pamięci, w ŻADNYM!, jak pamiętam nawet XMEGA tyle nie mają). Więc...
Czy komunikacja poprzez RS485 bez izolacji galwanicznej w takim układzie nie sprawia problemów? Bez problemów, RS485 toleruje napięcie wspólne do o ile pamiętam 12V. Poza tym układy na szynie mają wspólną masę, więc tym bardziej nie powinno być problemów. IMHO w znakomitej większości przypadków RS485...
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...
XM-scope 3 - miniaturowy 2-kanałowy oscyloskop cyfrowy dla każdego. Witam. Przedstawiam dziś kolejną, trzecią już wersję oscyloskopu cyfrowego na procesorze z rodziny AVR. Tym razem urządzenie jest bardziej rozbudowane, dodane jest wiele ciekawych i przydatnych funkcji oraz przede wszystkim...
Jeszcze co do ad.2: przebieg 5MHz da się zmierzyć ale będzie musiał mieć wypełnienie możliwie zbliżone do 50%. A przetwornik ADC tutaj to raczej nietrafiony jest :D Jeżeli amplituda przebiegu będzie mniejsza od VCC procesora to trzeba aby raczej użyć komparatora. Ale raczej zewnętrznego bo ten wewnętrzny...
Raczej opcja 1 + dokładne prowadzenie mas, połączenie w jednym punkcie AGND i GND + rozlanie masy pod układem (w TQFP), mega filtrowanie, dławik na AVcc itd. Wzmacniacz i wejście analogowe max daleko od układów cyfrowych z bardzo dokładnie filtrowanym napięciem. Pamiętaj też, żeby na czas pomiaru ADC...
No właśnie, dobrzy by było gdyby autor sprecyzował założenia projektu. Bo może się okazać, że da się to zrobić na jednym procku, bez spowolnienia. Taki więc, jakie to pomiary i jak często? Na czym polega wizualizacja? Jeśli koniecznie chcesz na dwóch to dobrym rozwiązaniem jest synchroniczny USART -...
Nie wiem nic na temat tego jaką funkcję ma pełnić to urządzenie, ale... 1. Offset należy określić dla każdego kanału osobno i w zależności od aplikacji może to być różnie zrobione. Najprościej zamontować urządzenie na kole, którego oś obrotu jest pozioma i powoli obracając określić wartości minimalne...
Jest to projekt oscyloskopu z dodatkowymi przyrządami pomiarowymi w obudowie zegarka na rękę. Co więcej ma wbudowaną funkcję zegarka, więc projekt może również pełnić tą funkcję. Projekt zawiera również analizator stanów logicznych i generator arbitralny. Cały projekt bazuje na mikrokontrolerze AVR...
Rozważałem użycie interfejsu szeregowego, ale pojawił się problem przepustowości no i organizacji wyników. AD7608 umożliwia taktowanie SPI 16MHz, więc 2MB/s powinienem wyciągnąć. I w sumie wszystko automatycznie się robi, więc fakt, może to pomóc. Ale policzmy: 8 wejść x 18 bit = 144tc. I...
W BLDC? Same komplikacje. Potrzebujesz: - 3 półmostki H do sterowania, wygenerować sterujący przebieg PWM, kolejne kroki komutacji i komplementarne przebiegi sterujące górnym i dolnym tranzystorem mostka z czasem martwym - musisz jakoś określać bieżącą pozycję wirnika - albo w tym celu stosuje sie...
Czy chcesz powiedzieć, że taki fajny program jak Proteus nie pozwala na zdefiniowanie własnych obiektów? Nie można sobie namalować własnego elementu, układu, obudowy? Jeżeli nie chcesz poświęcić 10 minut na zdefiniowanie elementu lub znalezienie jego definicji w necie, to sam sobie robisz krzywdę. Zamiast...
uC mam na płytce z modułowa, ale do rzeczy. W porównanie z Atmegami tutaj ADC jest dość dziwne, więc na podstawie tego: napisałem taki kod: /usr/bin/sh: /c/WinAVR-20100110/bin/avr-gcc: Bad address make: *** [main.o] Error 126 Jak się tego pozbyć? Bo to mija ot tak raz po minucie...
O ile nauczysz się programować, to sprzętowo nie widzę problemu. 6 kanałów próbkowanych na 400Hz z urządzenia na SPI + 9 wartości 16-bitowych wyliczanych z pomiarów i to wszystko razem rozłożone na kody ASCII zapisywane do pliku .csv zrobiłem bez problemu na Xmega z zegarem 20MHz. Ten sam procek obsługiwał...
Cześć Od pewnego czasu uczę się programować atmegi z użyciem usb-asp. Pojawiła się okazja - projekt do realizacji, który pozwoliłby mi nauczyć się programować xmegi. Wstępnie zapoznałem się z ofertą Atmela i wybrałem [url=]XMEGA-C3 Xplained Niestety nie mam bladego pojęcia jaki programator-debuger...
Sprawdziłem przebiegi na wyjściu z CNY17-4 i teoretycznie do 25kHz powinno się udać pracować. Nie wiem tylko ile wynosi poziom zera logicznego lub jedynki logicznej w Xmega, a mając tę wiedzę mógł bym dość dokładnie określić z jaką częstotliwością mogę pracować. Czyli te 110kHz może wystąpić tylko...
Podobnie jak moim skromnym zdaniem jest pomyłką zmiana MCU, środowiska, posiadanych programatorów tylko po to, żeby zrealizować projekt, który wg autora da się zrealizować na nieco szybszym AVR. Oczywiście przetaktowanie ATMega128 na 30 MHz można między bajki włożyć, nawet jeśli odpali to nie wiadomo...
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 ekranu z wykresami...
Niekoniecznie musi być XMEGA. To co musisz zrobić to nadać dwom sygnałom marker czasowy. Ponieważ jeden timer w ATMega ma tylko jedno wejście ICP, to musisz wykorzystać dwa timery. Wtedy każdy z nich będzie przechwytywał impuls z jednego wejścia. Ponieważ w ATMega tylko większe procki mają dwa 16 bitowe...
Poczytałem tą dyskusję, i jedna rzecz mnie nieco przestraszyła: jakieś anomalie w ADC. Po Xmega mam już ich dosyć (bezsensowny offset, niestabilne pomiary), więc chciałbym się ustrzec przed tego typu prockami, czyli są to M3? Mam jeszcze kilka pytań: 1. Czy w STM32Fxxx peryferia są na stałe przyporządkowane...
Użyłem RCC_HSI48Cmd(ENABLE); i już nie zacina przycisku przy ustawieniu 48000, jednak zgasła dioda LED do pomiaru częstotliwości. Mam taką oto procedurkę: [syntax=c] void RCC_Config(void) { ErrorStatus HSEStartUpStatus; RCC_DeInit(); // Reset ustawien RCC RCC_HSEConfig(RCC_HSE_ON);...
Prąd mierze na masie, spadek jest ujemny więc wzmacniany jest wzmacniaczem odwracającym. Pokaż schemat. Jesteś pewien, że masz prawidłową polaryzację wzmacniacza. Zasilasz go od dołu napięciem przynajmniej 0,7V niższym niż najniższe mierzone? LM358 nie jest rail-to-rail. Pomiar "na plusie", czyli...
Witam. Jestem początkującym w dziedzinie elektroniki. Szukam pomocy przy zaprojektowaniu urządzenia regulującego temperaturę w naczyniu względem zadanego jej poziomu. A więc do rzeczy: Naczynie: 30-40L, stal nierdzewna, izolacja na zewnątrz. Kontroler: początkowo RPi, później pewnie jakaś Xmega...
(at)Visher : Ze swoich doświadczeń z tymi mikrokontrolerami radzę zastosować bardzo dobrej jakości napięcie referencyjne (ja używam REF3020AIDBZT). do walki z ADC xmegi polecam: fajne jest to że mają programowalne wzmocnienie toru analogowego i pomiary różnicowe.
Jeśli używasz unsigned mode to offset jest normalną rzeczą w XMega. Dokonaj kalibracji przetwornika: 1. Podłącz jeden z wolnych pinów ADC do GND 2. Ustaw kanał ADC na ten pin i dokonaj kilku pomiarów uśredniając wynik 3. Zapamiętaj wartość z punktu 2 np w EEPROM'ie 4. Od każdego pomiaru odejmij...
AT90PWMx - Produkt w fazie zakończenia produkcji. Nie ma sensu w to inwestować. ATTiny26 - zupełnie bez sensu jeśli idzie o falowniki. Praktycznie żadnego zysku względem mega88. ATXMEGAxx - od biedy może być do nauki. Ale pamiętaj o upierdliwości ADC w trybie single ended (offset), braku synchronizacji...
Praktycznie każdy Cortex M0, M0+ nie ma 10-krotnie wyższej wydajności niż taki 20 MHz tinek, pomijając nieżyciowe przypadki, w których ktoś robi pętlę od 1 do 10 przy pomocy 64 bitowej zmiennej. O takich jak sądzę z kol. BlueDraco pisaliśmy, bo niesądzę aby jakieś mega wypaśne ARMy były w SSOP20. Wchodzimy...
Uściślając: -Najprostszy i najtańszy układ EMG który wykryje opisane w mat. z 1 postu ruchy mięśnia -opis jak dane doprowadzić do Visuala/Matlab ( zdaję się że dla niektórych układów na RS lub USB są gotowe biblioteki pod Matlaba/C++....Czy mógłbym prosić o nawę lub link (poczytam czy sam to szybko...
No i super! bardzo fajna konstrukcja, tego typu sprzęt tylko jeszcze wyższa częstotliwość przydała by mi się do zbudowania generatora do radio odbiornika na 80m, z tym, że wymagałbym częstotliwości bliskich 10MHz. Są tanie moduły DDS na układach Analoga. 10MHz jest ok, 50MHz (jak piszą) juz nie...
Pokaż proponowany kod. Chodzi mi o moją funkcję regulacji, regulatora PI, w przetwornicy impulsowej. Czy można tutaj może coś lepiej zrobić? (mikrokontroler XMEGA) [syntax=csharp]/*Funcja regulacji przetwornicy*/ ISR(TCC5_OVF_vect) ... wartosc_rzeczywista; //Wartość...
Witam, Buduję układ przekaźnika programowalnego w ramach pracy inżynierskiej. Docelowo ma posiadać kilka we/wy analogowych (12 lub 16 bitowych) . Zależy mi na optoizolacji. Z uwagi na oszczędność miejsca na PCB i całkiem dobrą jakością przetwornika A/C w użytym procesorze (Xmega) skłaniałem się do...
Witam. Jestem w trakcie rozbudowy bardzo amatorskiej stacji pogodowej. Do tej pory jednostkę zewnętrzną z mikrokontrolerem xmega zasilałem baterią litową 3,6 V spokojnie wystarczało mi to na kilkanaście miesięcy. Planuję jednak rozbudowę o kolejny czujnik, który wymaga zasilania 5 V (4,5 - 5,5) i bierze...
Dobra, dosyć wygłupiania się. Najpierw spróbuję odpalić ten wyświetlacz na AVR. Tam jest trochę łatwiej, przy okazji dowiem się, czy wyświetlacz jest sprawny, w dodatku na AVR odpalałem już SPI. Potem poczytam o rejestrach SPI na STM32 i wtedy się odezwę, bo jak na razie rzeczywiście bez sensu. EDIT Udało...
Witam Chciałbym przedstawić konstrukcje frezarki CNC mojego autorstwa . Konstrukcja oparta jest o profile aluminiowe 60x30 jako podpory wałków osi Y oraz elementy aluminiowe o grubości od 10mm do 15mm Jako stół , blacha aluminium 15mm wzmacniana dodatkowo po najdłuższych bokach 12mm płaskownikami...
Może zamiast prostej krytyki jakieś propozycje co w takim układzie można w miarę prosto poprawić, Wywalić Mega8 użyć uC z DAC 12-bit (Xmega, ARM). Wzmacniacz operacyjny do pomiaru poboru prądu jeśli już ma być tanio bo lepszy byłby np INA219. dodanie przełącznika odczepów w tym przypadku ograniczyłoby...
Cieszę się, że udało się pomyślnie uruchomić układ :) Moja radość jest tym wieksza, że jest to pierwszy układ zmontowany przez mnie całkowicie w technologii SMD. Kiedyś popełniłem jakieś drobne projekty z "doczepionymi" scalakami SMD do elementów THT. Przy montażu bardzo pomocny będzie plik...
Witam. Pięknie Panowie piszecie. Przypuszczam że większość z was naukę zaczynało na 8051 lub AVR. Teraz jak już opanowaliście do perfekcji C i zdobyliście bardzo duże doświadczenie w programowaniu to nie macie problemu ze zmianą procesora w zależności od potrzeb projektu. Tylko że w starym AVR...
W ramach moich projektów związanych z automatyzacją, tym razem chciałbym pokazać kontroler nawadniania ogrodu. Zeszłoroczne lato było wyjątkowo upalne i raczej suche, co z pewnością odbiło się na trawie i innych roślinach ogrodowych. Jak im pomóc? Rozwiązaniem są systemy nawadniania. Każdy producent...
Czyli ładujesz do rejestru wartość, następnie przesuwasz ją o 1 bit w lewo (bo adresy na AVR są zazwyczaj 16-bitowe. Teraz do tego dodajesz adres początku tablicy z adresami i następnie ładujesz do rejestrów adres skoku z tablicy przygotowanej tak jak Marek to opisał i wykonujesz skok. Z drugiej strony,...
Przy wszechobecnych smartfonach z GPS projekt ma cel jedynie dydaktyczny. Konstrukcja Zasilanie z ogniwa Li-ion 18650, obliczony czas pracy dla ogniwa 3000mAh: 48 godz. Nie realizowałem funkcji ładowania ogniwa w urządzeniu. Całość sterowana jest jednym przyciskiem: -...
ozwiązanie 2: zamiast muzealnego uC z 10-bitowym ADC bierzemy jakąś współczesną taniznę za 1..3 zł z 12-bitowym o lepszych parametrach i mamy pomiar napięcia akumułatora samochodowego z dokładnością 5 mV oraz w bonusie 10x większą moc obliczeniową. Trudno się z tym zgodzić. Można użyć 12-bitowego...