do mierzenia okresu sygnału najlepiej wykorzystać licznik i przerwanie zewnętrzne. Sygnał pomiarowy wzmocnić tak aby uzyskać przebieg prostokątny o stromym nachylaniu zboczy. Następnie podać sygnał na wejście przerwania zewnętrznego (np. detekcja zbocza 1->0). W przerwaniu włączyć licznik, wyjść z przerwania i oczekiwać na następne przerwanie w którym...
Witam Mam do napisania program generujący przebieg prostokątny o następujących parametrach: Diody świecą się przez 50 ms, potem przez 950 ms nie świecą, potem przez 300 ms świecą, a potem przez 700 nie świecą. Napisałem na to taki program: [syntax=c]#include<8051.h> #define czas 65536-46080 void zwloka50(void) { TH0=76+1; TL0=0x00; TR0=1; while(!TF0);...
Kiedyś napisałem prosty przykład użycia Timera w trybie CTC dla AVR w AVR Studio w języku C. W załączniku znajduje się ten gotowy kompletny program powodujący przerwanie od porównania (Compare) co około 250 ms i generujący przy okazji falę prostokątną na wyjściu OC0A. Otrzymujemy w ten sposób przebieg prostokątny na tej nóżce o okresie 2 Hz (2x250 ms...
Witam, mecze się i mecze, próbuje stworzyć układ który na wyjsciu bedzie mi generował przebieg prostokątny 5V ale za nic mi to nie idzie, wysyłam wam podgląd schematu który stworzyłem i przebiegi Diody maja po 5V http://obrazki.elektroda.net/2_123972014... http://obrazki.elektroda.net/0_123972024... z góry dzięki wszystkim za wskazówki....
Aha - jeśli przerwanie jest w pliku vectors.c to luz - myślałem, że przerwanie masz gdzieś zupełnie indziej. 4\/3!!
Co klakson chcesz zrobić na wypadek jakby nie skręcił? (żart) Jakiej czestotliwości jes tten przebieg i ile trwa obsługa sensorów , no własnie jakich sensorów czy mozna przerwac ich prace na moment? (odczyt) Dodano po 5 Mysle że jak ustawisz priorytet od przerwania realizującego przebieg prostokątny na najwyższy to wtedy otrzymasz niezakłocony przebieg....
Ja wiem, że mając 14 lat trochę trudno o składne pisanie ...ale bez tego daleko nie "zajedziemy". Uporządkujmy- co chcesz zrobić? Może postudiuj książkę p. Kardasia bo masz problem z pojęciami i tworzy się z tego straszny bałagan. Ty co najwyżej chcesz wygenerować zmiany napięcia na porcie mikrokontrolera za pomocą przerwań. Tryb pracy licznika CTC...
Podłączyłeś go tak jak w dokumentacji? Z rezystorem i kondensatorem? Ten odbiornik reaguje również na silne światło, więc może odbierać jakieś zakłócenia. Dobrze jest napisać program który wyświelti wszystko na LCD co jest na wejściu INT0 i mamy to na dłoni (ile i w jakim czasie pojawia się przerwanie).
Skoro masz PWM to masz licznik który stale zlicza od 0 do powiedzmy 255. Dokładasz przerwanie od przepełnienia i robisz tam kolejny powiedzmy 16-sto bitowy licznik software'owy. Następnie wejścia sygnału podpinasz pod przerwania i w przerwaniach sprawdzasz łączną 24-ro bitową wartość. Odejmujesz od poprzednio zapisanej pozycji z uwzględnieniem ew. przepełnienia...
Zacznij od pokazania całego kodu. Jeśli korzystasz z przerwań, to najprawdopodobniej mikrokontroler nie wyrabia i powoduje opóźnienia. Policz sobie (BTW, przy OCR2 = 4, dostajesz 100kHz, popatrz na wzór, należy do OCR2 dodać jeden przed dzieleniem), przy częstotliwości 100kHz, procesor ma 10 taktów na obsłużenie przerwania, co na pewno trwa dłużej,...
Jeśli chcesz generować konkretną częstotliwość to wykorzystaj do tego tryb COMPARE timera: Config Timer1 = Timer , Prescale = 1 , Compare A = Toggle , Clear Timer = 1 Częstotliwość wtedy zmieniasz wpisując odpowiednią wartość do rejestru Compare1a lub Pwm1a (ten sam rejestr - nie ma znaczenia który). W ten sposób nie obciążasz uK przerwaniami a przebieg...
Wiadomości przychodzące do mikrokontrolera zostają odczytane przez sondę jako ładne prostokątne przebiegi.
Arduino Nano wystarczy. Przerwanie zewnętrzne w Nano jest obsługiwane na pinach 2 i 3. A przekaźnik wysterowujesz z dowolnego wybranego pinu przez tranzystor - jaki? To już musisz dobrać zależnie od przekaźnika. Tu masz dokumentację: https://www.arduino.cc/reference/en/lang... Zobacz sobie przykładowy...
witam Czy da się zrobić jakimś sposobem pomiar przebiegu prostokątnego mając do dyspozycji tylko 1 timer? nie zależy mi specjalnie na precyzji a jedynie na porównaniu wartości zmieniających się do zapisanej. jakbym miał dwa timery to jednym przerwanie co pewien czas i odczyt licznika z drugiego, a tu?
Jeśli chcesz w sposób ciągły generować sygnał prostokątny o zadanej częstotliwości i zadanym wypełnieniu, to najłatwiej użyć timera w trybie generowania PWM. W przypadku jeśli czas stanu wysokiego i niskiego mogą się zmieniać z okresu na okres, również można użyć generowania PWM (przykładowo Fast PWM (mode=15) dla atmega8) - używając T1, wpisując wartość...
Odczytany program wygląda OK. Można rozpoznać charakterystyczne fragmenty, np: skoki dla adresów przerwań, inicjalizację stosu itp. Skupiłbym się raczej na sprzęcie. Sprawdź następujące rzeczy: - stan linii RST (powinien być stan "0") - stan linii EA (powinien byćc stan "1") - stan linii ALE (powinien być przebieg prostokątny o f = XTAL/6) Rozrysuj...
Instrukcja SOUND pin , il_impulsów , czas_impulsu, powtarzana wielokrotnie z różnymi parametrami, lub timer generujący przerwania w określonym czasie tworząc przebieg prostokątny na konkretnym pinie. O resztę zapytaj znajomego muzyka.
Owszem w konfiguracji Timera głupi błąd, ale ku mojemu zdziwieniu przerwanie działało. W liczeniu czasu chyba się koledze przecinek przestawił. Przerwanie w teorii kompilatora bascom trwa ok 0,16ms. W praktyce: po dodaniu w przerwaniu " toggle portb.0" częstotliwość generowanego przebiegu prostokątnego to 3,289kHz więc przerwanie wykonuje się z częstotliwością...
Bardzo przydatny tryb chociaż nazwa jest myląca. Wg mnie nazwa tego trybu powinna brzmieć "buffered CTC". Piszesz, że mozna bitami migać bezpośrednio - niby jak? PIND.0=1 PIND.0=0 i dalej co? RJMP to 2 cykle i nie pozwoli to na wygenerowanie równego przebiegu prostokatnego, a jak zmienić częstotliwość? wstawić NOPy? A programowo? Użycie przerwania to...
Dodajmy, że kiedfy pilot nie nadaje, odbiornik odbiera śmieci i wystawia na wyjściu przebieg prostokątny, któego zbocza są dużo gęstsze niż podczas odbioru danych, a każde zbiocze będzie w takim przypadku generowało przerwanie. Dlatrego lepiej jest odbierać w przerwaniu timera, a nie używać przerwań od zboczy.
Witam! Mam problem z programem w bascom'ie. Chce generować przebieg prostokątny na jednym z wyjść mikrokontrolera, lecz częstotliwość przebiegu wygenerowanego ni jak się ma do częstotliwości która powinna być wygenerowana. Częstotliwość obliczam dzieląc częstotliwość taktowania kwarcu (w moim przypadku 8MHz) przez podział pleksera ustawiony w timer0...
Witam Jaki mikrokontroler ma wbudowany regulowany niezależny generator. Znam tylko AVR i to też słabo. Wiem że da się to zrobić na atmedze ale nie mam płynnej regulacji tylko trzeba wyliczać i nei zawsze się da to prosto zrobić. Chyba że o czymś nie wiem co jest bardzo możliwe. Krótko mówiąc potrzebuję mikrokontroler który będzie generował mi przebieg...
Ale nie chodzi o przerwania INTx. Musisz zmieć wolne wejście T0, T1 albo T2. Przerwania to będa od Timerów. LCD możesz podłaczyć do dowolnych pinów.
Znaczy toglowanie nie jest docelową instrukcją. Zostało dodane w celu debagowania na oscyloskopie. Procesor docelowy ATMega32 bo takie akurat mam w zapasie. Przeanalizuję ten przykład kodu, popróbuję testować i zobaczę co wyjdzie. Po dodaniu volatile wszystko działa poprawnie. Mam dokładnie 2 takie same przebiegi prostokątne na PB4 i PB5, jeden z przerwania...
Hm, jak rozumiem, to podczas obsługi przerwania mikro kontroler zostawia cały bałagan wykonujący się w pętli loop i pędzi do tego co w tym przerwaniu się znajduje. Przerwanie znajduje się w funkcji poza pętlą loop, a gdzie definiujemy warunek obsługi przerwania? Do czego zmierzam, czysto teoretycznie analizując zagadnienie (może mieć w przyszłości podłoże...
Istnieją dwie cyfrowe metody pomiaru częstotliwości: 1. Pomiar ilości impulsów wzorcowych w trakcie trwania okresu sygnału mierzonego. Konkretnie mierzymy imp. wzorcowe w trakcie trwania połowy okresu - zwykle, gdy jest poziom wysoki. W takiej sytuacji jeżeli zmierzysz N imp. wzorcowych w trakcie połowy okresu, to: Tx=2*N*Tw, gdzie Tx okres przebiegu...
Witam! Potrzebuję wygenerować przebieg prostokątny-jest. Żądanie DMA co okres powyższego-też jest. Potrzebuję wygenerować żądanie DMA co drugi okres powyższego przebiegu bez użycia przerwania(zawracanie d..rdzeniowi) lub DMA(użyte do czegoś innego) za pomocą tego samego timera-proszę o sugestie.
Trochę nad tym posiedziałem (dużo czasu minęło od ostatniego postu, ale jakośtak nie było czasu) i mam nowe pytanie, otóż: chcę uzyskać taki przebieg (dla rozdzielczości 1024x768): http://obrazki.elektroda.pl/4684247700_1... a wyskakuje mi coś takiego: http://obrazki.elektroda.pl/7828016300_1... I chciałbym się dowiedziec, jak walczyć...
Nie będziesz miał negacji, tylko będziesz miał generator przebiegu prostokątnego - stan niski na tym pinie od przerwania nie trwa przecież 1ns, tylko może trwać np 100ms, albo równie dobrze 100s. A czas wykonywania przerwania to - np. - 1us. Po tej 1us dalej jest stan niski, więc przerwanie wykona się raz jeszcze, a potem raz jeszcze i raz jeszcze i...
Witam, pisze program w którym wykorzystuję 16 bitowy Timer1 z Atmegi 328. Najpierw konfiguruję go tak: [syntax=vbnet]Config Timer1 = Timer , Prescale = 64 'Kwarc 18.43MHz, 1/18430000 * 64 = 3.473us Enable Timer1 On Timer1 Impulsuj 'ISR[/syntax] a potem mam procedurę przerwania której zadaniem testowym jest wygenerować przebieg prostokątny: [syntax=vbnet]'---------------------ISR....
Musisz najpierw zamienic przebiegi sinusoidalne na przebiegi prostokatne. Nastepnie te przebiegi trzeba podac na przerwania zewnetrzne jakiegos procka. Odblokujesz przerwanie i czekasz na zbocze sygnalu. Kiedy sygnal wyzwoli przerwanie zaczynasz liczyc tajmerem impulsy. Drugie przebieg wyzwala drugie przerwanie i liczysz impulsy drugim tajmerem. Kiedy...
Sorry że trochę niedokładnie opisałem problem, otóż muszę wygenerować przebieg prostokątny na jednym z pinów portu LPT przy zastosowaniu przerwań. Nigdy nie programowałem obsługi przerwań, więc nie wiem jak to zrobić. Wyobrażam to sobie tak: Skorzystać z timera systemowego lub zegara RTC, w jakiś sposób określić częstotliwość przerwań (np co 0,5ms),...
Witam Zasiadłem do BASCOMa AVR i poczyniłem zawiły ale zadowalajacy (jak na to srodowisko) soft dla atmega8, wszystko byloby ok gdyby nie mały problem z obsługą przerwania... mianowicie, na jedno z wejść tj. INT0 podaje przebieg prostokątny, okres 20ms, w aplikacji wymagane jest aby w chwili gdy wystąpi zbocze opadające owego przebiegu (dopiero od pewnego...
Rozwiązanie układowe wygląda w taki sposób, że pod porty PORTA, PORTB i PORTC mam podłączone drabinki rezystorowe r2r. Do pinu PD2 doprowadzany jest sygnał synchronizujący z detektora zera sieci. Do pozostałych PIND mam podłączone przyciski. Na podstawie zliczonych przerwań uC powinien generować trzy przebiegi prostokątne pierwszy w fazie z sygnałem...
WItam Mam problem z Timerem1, chcę żeby zliczał impulsy bez użycia przerwania, tzn podaję przebieg prostokątny na dowolny pin procesora i T1 ma zliczać ilość taktów w czasie trwania stanu niskiego, czyli mierzyć czas impulsu zerowego, napisałem poniższy listing i wyświetla głupoty (około 13000), podaję 2kHz czyli T1 powinien zliczyć do 2000 bo okres...
wydaje mi sie ze mozna to zrobic w przerwaniu i mierzyc za pomoca licznika czas pomiedzy nastepnymi zgloszeniami przerwania (przerwania zglaszane kazdym zboczem) i w ten sposob ocenic czas impulsu i przerwy miedzy nimi... ale to tylko wywody na sucho, pozdrawiam
Witam Próbuję wygenerować przebieg prostokątny za pomocą timera0, pracującego w trybie clear-timer-on-compare. Mozna ustawić bity COM0B1 i COM0B0 żeby wyjście się włączało, pytanie tylko jak je wyłączyć w przerwaniu?
A zmienne używane w przerwaniach masz zadeklarowane jako volatile? Oczywiście, to podstawy podstaw. Sterowanie nim powinno przebiegać w ciągu 10 ms a nie 20 ms. Tak też właśnie jest. Widać to w kodzie. Zresztą na diodzie LED optotriaka jest ładny przebieg prostokątny... Może warto wyłączyć go w przerwaniu timera chwilę po włączeniu, a nie dopiero po...
Witam! Potrzebuje na procesorze Attiny44 zaprogramowac generator sygnału prostokątnego o częstotliwości 100Hz. Program pisałem w C, jego treść zamieszczam poniżej. Po przestudiowaniu dokumentacji od AVR, stwierdzilem ze użyć należalo by któregoś z Timerów. Mój pomysł był taki, aby zliczać do pewnej wartości, po której licznik zgłaszał by przerwanie,...
Witam! Oprogramowuję pewien układ. Na jeden z pinów procesora wchodzi sygnał prostokątny lub logiczne 0. Potrzebuję napisać procedurę która będzie mnie informowała, że jeżeli jest przebieg prostokątny to jest ok, a jeśli np. przez 2 sek logiczne 0 to jest źle i wykonam kolejną część programu. Wspomniany przebieg ma około 200 - 300Hz (częstotliwość zmienia...
Chcę zrobić sterowanie pilotem (mam niepotrzebny od wideo sony). Jaki odbiornik podczerwieni należy zastosować do mikrontrolera ?? Bo kupiłem dzisiaj zwykły odbiornik ze wzmacniaczem (dużego wyboru to ja nie miałem :( ) i mi sie wywołuje niestety przerwania na procku :/ .Obiornik na pewno działa bo go sprawdzałem. Po przyjściu sygnału z pilota napięcie...
No jasne, pytanie czy sa warunki co do wypelnienia przebiegu i rozmieszczenia go w czasie. Najprosciej to podpiac go pod jakies wejscie INT wyzwalane zboczem i w przerwaniu generowac 39 impulsow na kazde wykryte przejscie. Jesli wymagania co do przebiegu sa wieksze to pomysl nad hardwarowym/programowym PLL.
ale jak sobie wrzecę na przykład ten mój testowy LED_TOGGLE; w pętle główną to otrzymuję przebieg prostokątny więc oscyloskop działa. Zastanawiały mnie jeszcze ustawienia fuse bits mozę to ma znaczenie. możesz mi podesłać klik makefile i klik hex tego ostatniego programu jaki podałem
PDT: Aleś mi zajechał z grubej rury ;-) Drobny problem tylko w słówku" bandlimited", które chyba przeoczyłeś. Albo musisz jeszcze popracować. Podpowiedź: Jakie jest pasmo przebiegu prostokątnego. Poza tym my nie chcemy przecież rekonstruować drgań, tylko je eliminować. Albert
Cześć Chciałem odpalić timer i podłączyć do niego przerwanie ale napotkałem na pewien problem, a mianowicie konfiguruję sam Timer a następnie NVIC i po włączeniu zezwolenia na przerwanie procek skacze od razu do obsługi przerwania i już z tamtąd nie wraca. Umieściłem w obsłudze przerwania zmianę stanu pinu i wstawiłem breakpointa w main-ie zaraz po...
Nie zapominaj o pojemności pasożytniczej ścieżki do kondensatora. Ścieżka nie była przerwana tylko odklejona, odstęp był ok 1cm... to raczej przenosiło się po zasilaniu. Synchronizował się tylko na przebiegu prostokątnym. Jak będę miał czas to kupię i wymienię kondensatory 30uF/16V w torach Y (C6-C9), bo się ostały nie wymienione i widzę, że mają w...
Prosta rzecz. Ustawiasz stany na portach, czekasz odpowiedni czas wyznaczony ze znanego ze szkoły średniej wzoru: zależność częstotliwości i okresu przebiegu, znowu ustawiasz stany na portach, znowu czekasz odpowiedni czas. I tak w kółko. Oczywiście warto do tego zaprzęgnąć przerwania.
Czyli rozumiem, że z PWM dać sobie spokój ? Sprecyzuję tylko jeszcze, że zadanie to musi być napisane na timerze i przerwaniu od niego. Tak sobie zażyczył prowadzący laborki z programowania ;) Myślę, że chyba pozostaje mi tylko zrobienie tego w trybie CTC. "Na chama" generować przebiegi prostokątne o różnych częstotliwościach i czasach trwania.
Witam. Proszę o wskazówki, jak napisać program w C++ do zbudowania generatora przebiegu prostokątnego, o wypełnieniu 50%. Niby wszystko załatwia funkcja tone() w Arduino. Modulacja częstotliwości też była by banalna. Próbowałem też z przerwaniami biblioteka "timer0". Ale problemem dla mnie, jest bardzo niedokładna powtarzalność "impulsów" przebiegu....
Czy ktoś kto ma działająca transmisję na RFM12 ma dostęp do oscyloskopu? Męczę się już dłuższy czas i nie mogę uzyskać komunikacji. Chyba nadaję ponieważ sonda wcz podłączona do anteny nadajnika wskazuje że podczas nadawania pojawia się napięcie i stany na linii przerwania suregują że nadawanie się odbywa. Ale nie udaje mi się nic odebrać. Przerwanie...
To czekam na program... Układ jest zbudowany na 2313 z kwarcem 4MHz. Daje to przerwanie Timera0 co 0.5ms. Układ nie był testowany z aparaturą RC, ponieważ takowej nie posiadam. Sterowałem nim z zewnętrznego generatora przebiegu prostokątnego o wypenieniu 50 - 100% i okresie 2ms. Sprawdzałem go LED'ami połączonymi z uC przez bramki AND - tak jak na...
witam Mam do zrealizowania coś takiego: Wejścia INT0 oraz Int1 muszą reagować na pojawiające się na nich sygnały (zbocza narastające ) po czym muszę zliczać czas trwania stanu wysokiego na powyższych wejściach gdy pojawi się zbocze opadające na int0,1 liczenie czasu ma być przerwane i wartość ta zapamiętana. W skrócie jest to pomiar czasu trwania stanu...
nie znam bascoma, ale jeśli dobrze zgaduje że w takiej konfiguracjii będzie Ci liczył od 276 do 65536 i nie uzyskasz 36kHz, najprosciej w tej chwili to zmień 276 na 65536-276 ;) Ale myślę że wygodniej będzie wykorzystać tryb CTC (albo FastPWM) timera 1, możesz wtedy ustawić żeby automatycznie zerował się po doliczeniu do 278 i uzyskasz to samo, a dokładniej...
Kiedyś wpadłem na pomysł zrobienia ściemniacza fazowego na mikrokontrolerze a teraz nadszedł czas na realizację. Siadłem do komputera i wymyśliłem detektor przejścia przez zero (załączony schemat). W symulatorze to działa, ale nie mam ambicji zostać pirotechnikiem (tym bardziej, że w jednej bluzie już wypaliłem sobie dziurę :) ) więc chciałbym zapytać,...
Niezły pomysł :-) Niestety z tego co widzę w datasheet mojego procka, timer nie generuje przerwań od przepełnienia w trybie bramkowania, a generuje przerwanie w momencie opadającego zbocza sygnału bramkującego. Jedyne wyjście (jak mi się wydaje), to przestawić timer na taktowanie zewnętrznym sygnałem, a z generatora PWM puścić przebieg prostokątny -...
Ja miałem na myśli generowanie sinusoidy. Jeżeli już generujemy jednego, to dodać drugiego to mały problem. Co innego przy sygnale prostokątnym (a taki na razie sygnał generujesz). Tutaj faktycznie ciężko połączyć dwie różne częstotliwości. Zresztą chyba nie miało by sensu ze względu na zniekształcenia takiego przebiegu. Przy sinusoidach dajesz jakieś...
Chcę uzyskać przerwanie INT0 lub timer od przerwania dokładnie 1kHz. Aktualnie medzia8 pracuje na 16MHz i ni w ząb nie idzie uzyskać precyzyjnie 1kHz wykonując jeszcze chociaż zmienna++ by odliczać czas 1 ms w owym przerwaniu (ctc lub ovf). Świadom jestem niedokładnego kwarcu zewnętrznego dlatego poszedłem w inne rozwiązanie. Wykorzystałem przebieg...
Okres 100ms może nie być najlepszym rozwiązaniem. Ja proponuję kluczowanie sygnału 36kHz z trochę większą częstotliwością Programowo to chyba nie jest dla Ciebie problemem. Wystarczy przez 3..5ms generować sygnał 36kHz, po tym czasie zablokować przerwanie od timera który tą częstotliwość wypracowuje (przy okazji stan wyjścia tak ustawić, żeby dioda...
Witam. Mam pytanie bo nie wiem czy dobrze zrozumiałem działanie fast pwm dla atmegi. Kicznik zlicza od 0 do max. Wartość max jak w nocie pisze uzależniona jest od rozdzielczości (8,9,10 bitów). Ale jest też mowa że można uzyskać rozdzielczość od 2 do 16 bitów w zależności od ustawienia OCR1A). Mi chodzi o rozdzielczość 8 bitów. Ustawiam WGM odpowiednio...
Problem do rozwiązania z wykorzystaniem przerwań. Wykorzystujesz przerwania od licznika np. T0. W programie głównym wpisujesz wartości do 16 bitowego licznika T0 włączasz przerwania EA i ET0 na końcu przerwania rozkaz RETI. W zależności od oscylatora ustalasz wartości wpisu do TH0 i TL0 wiedząc ,że jest on incrementowany raz na 12 cyki oscylatora. W...
Ja myślę, że chodzi o coś trochę innego. Na rotorze umieszczony jest jakiś element, który mijając czujnik/nadajnik, kluczuje amplitudę przebiegu w.cz. w którego polu znajduje się rotor. Przejście elementu obok "czujnika" powoduje np. zanik pola w.cz. Im szybciej obraca się rotor, tym częściej pole w.cz. zanika - stąd "częstotliwość modulacji amplitudy"....
Wygeneruj z Timer-a przebieg prostokątny, przenieś jego "zero" by stał się przemienny względem masy i wpuść w elektrodę pierwszą. Pomysł bez głębszych przemyśleń : aby był przemienny , wystarczy podłączyć do 2 pinów w sterowanych w przeciw fazie np. poprzez przerwanie z licznika. Z tym, że nie będzie przesunięty względem masy, ale czy to potrzebne?
Chciałbym go tak zaprogramować, by wybierać sobie program z częstotliwościami (będzie w przyszłości działał jako podstawa częstotliwości do Zappera). Musi być bardzo dokładny. Przykładowy program ma generować częstotliwość powiedzmy 100,0 kHz (z przemiataniem) do 100,5 kHz, 810,8 kHz do 811 kHz. Jakiego układu użyć jako podstawy? Czy STM32F407VET6...
Żeby mieć małe wahania czasu początku/końca impulsu, wskazane jest użycie mikrokontrolera o szybkim zegarze - jakieś tanie STM32 mają zegar do 72MHz, a można użyć np. Raspberry Pi z zegarem 1GHz i na nim zrobić wyliczanie, kiedy zaczynać i kończyć impulsy. Jesli mikrokontroler to tylko z użyciem timerów/przerwań. Generowanie sygnału poprzez czekanie...
Korzystając z chwili wolnej poskładałem zestaw i przeprowadziłem kolejne testy. Tym razem wspierając się oscyloskopem. https://obrazki.elektroda.pl/1456926200_... Bazując na ustawieniach preskalera autora w/w artykułu uzyskałem przerwanie co 976,56Hz (16MHz/64/256) które wygląd tak: [syntax=c]ISR(TIMER0_OVF_vect)//przerwan... po przepełnieniu...
Witam Posiadam enkoder jak w temacie, niestety nie mam do niego wzmacniacza (schemat w załączniku), czy można zastąpić ten wzmacniacz jakimś układem scalonym? Sam enkoder generuje na wyjściach sygnał zbliżony do sinusoidalnego na poziomie 20mV/DIV (stary oscyloskop ale...). Myślałem o jakimś komparatorze, ale chwilowo nie mam pod ręką. Enkoder podłączony...
witam, np. tak: program2: setb p0.1 // jakies opoznienie ? clr p0.1 gen: clr p0.0 acall opoznienie3 acall opoznienie4 setb p0.0 acall opoznienie5 acall opoznienie6 sjmp gen ale to nie zmienia faktu ze program jest *źle napisany* - dlaczego nie zainteresowales sie Timerami i przerwaniami ? Czy program naprawde ma być tak 'sztuczny' i po sprawdzeniu...
Nie zrozumiałeś, jedną końcówke didody podpinasz pod linie która idzie od microswitch do zwykłej lini IO-tak robisz z wszystkimi przyciskami, a wszystkie drugie strony diody łączysz razem pod wejście int, wtedy jak wciśniesz którykolwiek przycisk to na wejściu int pojawi się stan niski lub wyskoki w zależności od tego w jakiej konfiguracji to zrobisz,...
Tu cały opis CA80, jakby ktoś szukał: https://www.elektroda.pl/rtvforum/viewto... Przedtem podłączyłem krokodylek od innej sondy do masy zasilania a inną sondą wykonywałem pomiar (tak jest wygodniej), to okazało się, że to było powodem że przebieg bardziej przypominał sinus niż prostokąt (tak było w obu moich CA80). Przy podłączeniu...
Jeżeli częstotliwość impulsów jest stała to tak. Jeżeli nie to trzeba też mierzyć okres przebiegu. Dodatkowo jak chcesz mierzyć przesunięcia i dodatnie i ujemne to trzeba trochę zmodyfikować pomiar. Jeżeli na pewno będzie ono wewnątrz zakresu -90...+90*, to wystarczy jedno z przerwań INT zamienić z Rising na Falling. Wtedy sposobu pomiaru nie trzeba...
http://obrazki.elektroda.pl/5177801100_1... Wstęp W skrócie: to kieszonkowy syntezator dźwięku z automatem perkusyjnym i kompozytorem „melodii”. Koncepcja tego urządzenia powstała zaraz po stworzeniu syntezatora Atari Punk Console – zaintrygowały mnie syntezatory z minimalistycznym interfejsem o ograniczonych możliwościach...
Witajcie. Robię bliźniaczy do wykonanego przeze mnie na '51 projekt układu do pomiaru częstotliwości na AVR w C. Przyjęta przeze mnie logika to: ATMEGA8 - kwarc 10 MHz 1. podawanie sygnału badanego na wejście INT1 2. Timer1 jako licznik z preskalerem CK/1024 2. INT1 wyzwalane zboczem opadajacym 3. Gdy przyodzi przerwanie to nastepuje sprawdzenie czy...
Dziekuje bardzo za odpowiedzi. Zdaje sobie sprawe ze z samym potencjometrm moglbym miec problemy z ustaleniem czestotliwosci dltego chce to zrobic tak ze za pomoca potencjometru bedzie zmienialo sie czestotliwosc o pewien krok np. co 10Hz natomiast za pomoca dwoch klawiszy bedzie mozna zmieniac czestotliwosc w gore lub dol o 1Hz. Konwersje chce zrobic...
Programik wygląda teraz tak: $crystal = 11059200 Config Pind.6 = Output Dim Czas As Byte Dim Czestotliwosc As Single On Int0 Licz Config Timer1 = Timer , Prescale = 256 Reset Portd.6 Enable Interrupts Enable Int0 Enable Timer1 Config Int1 = Rising Do Czestotliwosc = 1 / Czas //Tutaj chyba trzeba coś dodać// If Czestotliwosc >= 3.5 Then Set Portd.6...
bo nie pracuje na setkach Mhz Tyle, że prostokątny przebieg o częstotliwości zaledwie 1MHz zawiera w sobie częstotliwości harmoniczne o wiele wyższej częstotliwości. Tym razem nic się nie dzieje, innym razem szpilki zaczną przenikać do sąsiedniej ścieżki i wywoływać sobie np. przerwania. Później to już tylko godziny, dni, tygodnie poszukiwań przyczyny....
Witam! (at) bialy20 - Do regulacji fazowej nie można użyć optotriaka MOC 3040 i pokrewnych właśnie ze względu na wbudowany układ detekcji zera który nie pozwala załączyć triaka przy napięciach powyżej 35V (dla MOC3040). Ma to na celu redukcję impulsów prądowych (i zakłóceń impulsowych) w układach sieciowych przekaźników półprzewodnikowych. (at) MADevil...
Na starym PC (chyba jeszcze takim z zegarem 4.77MHz) robiłem pomiary czasu z dokładnością lepszą od 1µs, ale pod DOS-em (żadne Windows, czy nawet Linux, takiej dokładności nie wyrobią). Robi się to tak, że komputer czeka na przerwanie, i po przerwaniu odczytuje zegar. Albo inaczej: generator + licznik + układ zapamiętujący czas, który można odczytać...
Witajcie!! Mam taki problem: ponizej załączam mój plik źródłowy main.c , programik jest prosty, zawiera dwa przerwania jedno od timera 0 (przerwanie na narastajace zbocze CAP0.0 pin P0.2) drugie przerwanie to przerwanie zewnetrzne od przycisku (przerwanie na narastajace zbocze). Do pinu P0.2 dołączam przebieg prostokątny o częstotliwości okolo 80Hz...
Witam. Przejrzałęm archiwum, znalazłem tam kilka ciekawych artykułów, jednakże nieznalazłem tam wszystkiego. Co więcej, ja piszę w ASM pod AVR, a dużo było w C. Ale po kolei. 1. idea pomiaru okresu impulsu. Czy dobra? Przebieg prostokątny, fazy: a. sygnał narasta i jest 1 b. sygnał opada i jest 0 c. sygnał znowu narasta - koniec okresu Musze znac czas...
Skoro masz już procesor, to wytworzenie ujemnego napięcia do zasilenia komparatora/wzmacniacza operacyjnego to żaden problem. Wystarczą dwie diody, kondensator i przebieg z prostokątny z uC. Poszukaj na elektrodzie - jak nie znajdziesz to daj znać. Wieczorem będe miał więcej, to wstawię ci schemacik. Wtedy np. wykrywanie tego dodatniego ograniczenia...
Dzięki za zainteresowanie chodzi mi o to że mam program w którym po odebraniu informacji z PD3 na PD5 generuję przebieg prostokątny 400Hz (czyli potrzebuje odmierzać czas co 1250us). Po kolejnej informacji z PD3 zaczynam zliczać impulsy z PD3 i potrzebuje odmierzać czas 80ms. Po zliczeniu impulsów przechodzę do podprogramu w którym co jakiś czas będę...
Witam. Mam następujący problem mianowicie chcę zrobić ściemniacz do halogenów ale pracujący za trafem potrzebuję w możliwie prosty sposób wykrywać 0 sinusoidy za trafem mam 2 pomysły: 1. Mostek prostowniczy a za nim komparator ustawiony na kilkaset albo mniej mV w momencie zbliżenia się napięcia do 0V komparator da impuls na wejście przerwania w uC...
WItam Potrzebuję zmienić częstotliwość przebiegu prostokątnego o np 3,3 raza. Czestotliwość wejściowa jest zmiennna w pewnym zakresie maks 500hz. Wymyśliłem sobie żeby to zrealizować tak aby na INT0 podawać sygnał wejściowy i wywołuje przerwanie impulsy a timer0 generuje przerwania co jakiś mniejszy czas probkowania. Zliczam impulsy probowania pomiedzy...
To CANGSTA to rejestr procesora. Przypadek, że ma adres AAh. Wg mnie to wygląda OK. Natomiast mnie interesowała właśnie reszta programu (np. czy rzeczywiście wyłączane są przerwania lub czy nie uruchomiłeś jakiegoś urządzenia, jak wygląda procedura inicjalizacji urządzenia i rejestrów). Reasumując: Czy program zawierający wyłącznie fragmentu kodu generującego...
są dwa przebiegi prostokątne... X1 i X2 (Y1 Y2).... jeśli dioda natrafi na zapore w postaci "drabinkowego szczebla dookólnego" to w pewnym momencie zniknie kilka impusow w zależności z którego przebiegu jako pierwszy zniknie sygnal zalączający nie bedzie zbocza, w tą strone poruszy się kursor jesli tak się stanie ze jedna dioda zostanie zakryta np z...
Ja ostatnio pisałem programik, który miał między innymi coś nadawać alfabetem Morse'a i do wytwarzania dźwięku użyłem sprzętowego portu szeregowego UART z mikrokontrolera AT90S2313. Ustawiłem odpowiednią prędkość nadawania (sposób liczenia znajdziesz w data sheet) i wysyłałem same znaki b'01010101 (55 hex). Nadawanie realizowane jest od najmniej znaczącego...
Witam. Jeśli wyzwalasz triaki długimi impulsami to impuls powinien trwać od momentu wyzwolenia triaka aż do momentu przejścia przez zero w danej fazie. Co do punktu naturalnej komutacji , to jest punkt od którego dany triak zacznie przewodzić . Ale wyzwalać możesz go nawet zaraz po przejściu napięcia przez zero. Po prostu triak w danej fazie przed punktem...
(wersja arduino) Stosunek technicznych i finansowych kosztów do efektu ... mierny. Takie samo sterowanie przebiegiem prostokątnym można zrobić za 1,50 PLN. Układ bez sprzężenia zwrotnego, trudno powiedzieć, gdzie jest jego optymalne obciążenie, bo na pewno nie będzie się adaptował . Inaczej mówiąc, znów projekt "niech ma radochę, że mu się trochę żarówka...
bo odchodzi kontrola poslizgu. Przy sterowaniu wektorowym poślizg Cię nie interesuje jeśli nie wchodzisz w sterowanie bezczujnikowe. Nie mialem pomyslu jak to inaczej rozwiazac. Jak ktos zna jakies lepsze bardziej fachowe rozwiazanie to prosilbym o podpowiedz. Zamiast sygnału prostokątnego spróbuj może zadawać na starcie przebieg sinusoidalny napięcia...
No właśnie. Stąd moje pytanie. Żeby coś sensownego doradzić potrzeba więcej szczegółów. Czy potrzebujesz przebiegu według Twojego przykładu? Tam tylko pierwszy impuls wysoki będzie trwał 10ms, następne będą dwa razy dłuższe z krótkim pikiem do masy po środku. Jakiego rzędu częstotliwości Cię interesują. W granicach 50Hz? To też wynika z Twojego kodu....
Chciałem ustawić tak, aby przerwanie z timera1 było co 0,1ms. Chyba tu jest błąd. Wartość rejestru OCR1B powinna wynosić 399. Edit: Aktualny kod. Przebieg prostokątny. Serwo ustawia się w zadanej pozycji, choć nie tak jak sobie to liczyłem, tzn. zmienna pwm=15*0,1ms=1,5ms. Po wpisaniu wartości do rejestru OCR1B nic się nie dzieje. Wg noty katalogowej...
Panowie prośba. Męczę się i męczę i czytam i czytam.... i gdy coraz więcej czytam to się coraz bardziej gubię. Mam wrażenie, że DS od Atmega 168 jest napisany w strasznie zagmatwany sposób. Przejdźmy do sedna: Chcę ustawić końcówkę OC2B by generowało mi na niej przebieg prostokątny o okresie 8ms. No i tu mam problem bo opis z helpa bascoma dla timera2...
Witam szanowną brać elektroników :) Jakis czas temu rozpocząłem swoją przygode z mikrokontrolerami i postanowilem napisać programik który na określone sygnały aparatury radiowej do sterowania zdalnie sterowanym "czymś" będzie wykonywać konkretne czynności... tzn. w przypadku na przykład skrętu serva w prawo lub lewo będzie zapalać diody z prawej lub...
Witam. Niestety mam problem dotyczący wygenerowanie przebiegu prostokątnego ALE przy użyciu tylko Timerów bez PWMa. Musze Wygenerować sygnał o okresie 270ms i wypełnieniu 90%( czyli po 243ms wartość na wyjściu musi być 0 przez resztę czasu) Później po naduszeniu przycisku okres ma sie zwiększyć do 810ms.Problem juz mam na samym początku z kodem: ...............
Witam. Zbudowałem układ, który składa się z dwóch części. Pierwsza to generator o częstotliwości 125kHz, druga to przetwornik ADC, który mierzy sygnał i zapala diody w zależności od niego. Oba podukłady (podprogramy) oddzielnie działają poprawnie. Jednak jak skleiłem dwa kody (jeden od ADC drugi od generatora) to już zaczęły się schody. Jak dotąd nie...
Abstrahuję tu juz od sprintf i funkcji piszących na ekranie, których w tym miejscu **absolutnie** nie powinno być. Ogólnie masz racje, tutaj sprintf jest już po pomiarze (drugie przerwanie i tutaj jest zmierzony okres przebiegu). gu32_T1 < początek pomiaru gu32_T2 < koniec pomiaru Jednak wytyczne się zmieniły i można do moich celów zrobić inaczej....
www.elportal.pl/pdf/k07/16_14.pdf Bazowałem na tym opisie i oznaczeniu wyprowadzeń scalaka TMS3450. W moim przypadku był to inny scalak, który nie miał żadnych oznaczeń. Po prześledzeniu dokładnym ścieżek udało zlokalizować się wyprowadzenie 16 odpowiedzialne za ALARM. Na ścieżce biegnącej od tej nóżki do głośnika i po drodze na układ załączający radio...
witam, jeżeli procek ma robić tylko to i nic innego to ja bym to zrobił tak: w pętli głównej programu, wysyłasz sekwencję pierwszego kroku na port, potem skok do procedury opóźnienia, w której czas jest uzależniony od wartości zmiennej 8 bitowej. Zmienna ta natomiast jest uaktualniana w przerwaniu od ADC a jej wartość to nic innego jak wynik pomiaru...
Chodzi mi o to że jeżeli już robimy "wathdog'a" to układ (zewnętrzny)musi rozpoznać kiedy jest stan zawieszenia i układ w konsekwencji ma wykonać reset. Najlepiej jakby był to sygnał z jednego pinu procka. Np. przebieg prostokątny to znaczy procek pracuje i układ resetu nic nie robi (utrzymuje stan niski na (1)), a gdy nie ma sygnału (jest stan wysoki...
Witam Na samym początku spawarka była martwa, świeciła tylko kontrolka wyłącznika, Po wymianie w przetwornicy; UC3843B, PC817,DZ 20V i po usunięciu przerwanej ścieżki przed dwoma opornikami 100k, które zasilają UC3843B. Po tym zabiegu spawarka ruszyła kręcił się wentylator i działał regulator prądu na wyświetlaczu prawidłowo. Po podłączeniu kabli do...
przebieg prostokątny narastania generator przebieg prostokątny filtr przebieg prostokątny
kluczyk kręci antyradar laser porównanie tabletów
podnośnik claas edc16u1 schemat
Pralka Privileg nie grzeje wody – grzałka, NTC, naprawa, diagnostyka modeli Electrolux OEM Regulacja lasera RAE-150 po montażu – procedura serwisowa, ustawienia APC, focus, tracking