Wydaje mi się, że najpierw powinno być „uruchomione” odliczanie tych 0,1 sek, wyzwalane pierwszym pikiem z „paczki”. Potem trzeba odczekać te 0,1 sekundy na zanik „szumów” i zacząć zliczanie w czasie 0,9 sek. Ilość zliczonych pików podzielona przez czas da mi częstotliwość. Wynik ma się utrzymywać na wyświetlaczu...
Chcę napisac własny program z wykorzystaniem Timerów. Na początek proszę o wytłumaczenie dlaczego w poniższym programie: 1. wykorzystano podzial częstotliwości zegara (po preskalerze 256) 250/125 zamiast wykonac jedno dzialanie? 2. uzyto wartość początkową Timera0 = 250 przed Petlą do Loop End . O ile wyjaśnienie podane przez Tomq jest błędne(!) Load...
Jakie moce ma mieć posiadana przez ciebie przetwornica ?? Jaką bedziesz miał częstotliwość impulsowania PWM ?? domyślam się że przemiennik bedzie procował z elementami indukcyjnymi (np. silnikami) Temat co cię czeka nie jest łatwy i wymaga trochę doświadczenia. schematu nie mam ale moge podać ci kilka uwag praktycznych: Jeżeli chodzi o przemienniki...
http://obrazki.elektroda.pl/7329866000_1... Miernik częstotliwości o całkiem niezłych parametrach, bo potrafiący mierzyć częstotliwości od 1Hz do 10MHz (9,999,999Hz) z rozdzielczością 1Hz w całym zakresie. Idealny do generatorów funkcyjnych lub jako zwykły miernik. Do tego tani i prosty w wykonaniu, z ogólnodostępnych części, a małe wymiary...
http://obrazki.elektroda.pl/5053717900_1... Miałem ostatnio potrzebę zrobić mały termostat, który będzie dość przyzwoicie trzymał temperaturę, a warunkiem było jej nie przekraczanie. Pomyślałem, że zanim go oddam to jeszcze go zdążę tu opisać... a i będzie kolejny przykład, że Attiny 13 potrafi więcej niż tylko miganie diodą :-D Było...
Liczniki są osobnymi blokami uC, więc jeśli sygnał wejściowy jest poprawny, to impulsy powinny być zliczone poprawnie. Podany wyżej program to program użyty w moim mierniku częstotliwości okrojony z niepotrzebnych ci rzeczy, które mogłyby zaciemnić jego sens. Działa przy częstotliwości kilku MHz.
Witam. Z pewnych przyczyn musiałem przejść z pisania oprogramowania w Bascom na C. I pojawił się problem. Mianowicie chodzi o konfigurację Timera1 tak aby był generatorem, którego częstotliwość zmienia się wpisem do rejestru pwm1a. Pwm1a = 312 Config Timer1 = Timer , Prescale = 8 , Compare A = Toggle , Clear Timer = 1 On Compare1a Impuls Enable Interrupts...
Cześć. Czy ktoś wie jak obsługiwać w Bascomie Impulsator (Kliker=> nastawnik impulsowy => nastawnik obrotowy=>wszystko to to samo), element bardzo użyteczny (zastępuje tradycyjny potencjometr), a jakoś żadko stosowany. Już kiedyś pisałem post na ten temat, ale prawie nikt nie zareagował. Może ktoś budował jakiś układzik z tym elementem, może ktoś miał...
Witam. Nie wiem czy dział będzie ok. Mam nadzieje że tak. Chciałbym poprosić kogoś o napisanie krótkiego programiku w Bascomie. Dawno temu bawiłem się w AVR a teraz mam szybki temat i proszę o pomoc. Program miałby wyglądać następująco. (tak bym go napisał w PLC) Impuls (zbocze narastające) na wejściu X1 setuje marker M1 Marker M1 wyzwala Timer T1 Timer...
Dzięki wielkie za sugestie. Program poprawiłem, wszystko działa tak jak chcę. Zabrałem się za kolejną rzecz i utknąłem na timerach i książce do bascoma. Generalnie to mam problem z PWM - potrzebuję wygenerować impulsy o zadanej długości w taktowaniu pomiędzy x Hz Na razie siedzę i próbuję wymyślić jak to zrobić. Dodano po 3 Poczytałem o PWM i nie wiem...
Witam obecnych. Czy ktoś z Was ma program którym można byłoby obsłużyć enkoder impulsowy tak aby dla pewności każdy impuls był próbkowany 2 razy.Zmienna licznika w programie byłaby zmniejszana lub zwiększana w zależności ok kierunku obrotów. Jest taka opcja w bascomie "encoder"lecz nie wiem czy jest to wystarczająco niezawodna metoda na pewny oczyt...
Start Timer1 If R = 1 Then Stop Timer1 A = Timer1 End If Locate 1 , 1 Lcd A Wait 1 Ale chyba coś ze sprzętem mam nie tak, bo ciągle A wyświetla że jest zero (nie wchodzi do IFa) Hmm... ok załączasz Timer1 i odliczasz impulsy do czasu wystąpienia impulsu na R(z odbiornika) ale nie uwzględniłeś że ten impuls jest bardzo krótki i może wystąpić podczas...
nie liczyłem tego , napisałem tylko o pomysłach jakie przyszły mi do głowy na hasło "linia opóźniająca". żeby zwiększyć dokładność w metodzie z rejestrem, można połączyć kaskadowo np. 4 sztuki i zejdziemy z błędem do 0,5 stopnia. oczywiście częstotliwość rośnie. można by spróbować napisać rozsądny soft do jakiegoś małego procka, gdzie impuls powodowałby...
Wielkie dzieki , mam jeszcze pytanko bo jedna rzecz mnie nurtuje...chodzi o te 38kHz, 38kHz to zmiana co okolo 26,31 us a w dokumentacji mamy impuls ktory ma trwac 8,77 us (Carrier waveform), bylbym wdzieczny za wytlumaczenie. Pozdrawiam Częstotliwość , to inaczej ilość okresów na 1 sekundę , a w tym konkretnym przypadku , 1 okres to: dioda świeci...
Witam. Piszę sobie sterownik temperatury w Bascom '51 i mam problem z przerwaniem. Otóż serce układu to AT89C52 do niego jest podłączony RTC DS1678. Ustawiłem RTC, aby na wyjściu INT generował co sekundę impuls. Podaję ten impuls na wejście INT0 procesora. W obsłudze przerwań dałem ustawienie zmiennej Bit na 1, na podstawie jego inicjuję w pętli głównej...
W instrukcji CONFIG SERVOS jest taki parametr jak RELOAD = xxx. Liczba xxx określa jaki czas w us będzie pomiędzy kolejnymi przerwaniami licznika taktującego generator PWM dla układów serwa. I będzie to rozdzielczość tego układu. Zatem jeśli wpiszesz 10 to SERVOS(1) = 100 da nam 100x10us = 1ms impuls powtarzający się co 20ms na wyjściu podłączonym do...
W załączniku moja wersja firmware dla Twoich modułów. Na razie do przetestowania :-) PB.0 i PB.1 to wejścia, którymi łączysz moduły w łańcuszek. Nie ma też znaczenia, które wejście łączysz do następnego modułu oba identycznie działają. Do skrajnych modułów normalnie podłączasz przyciski. Ustawiłem czas na około 1,8s rozjaśniania/ściemniania i 5s (licząc...
Witam! Proszę o pomoc bo już po całym dniu zbaraniałem. Chciałem zrobić sobie zegarek na dość nietypowej kości i opanowanie jej się powiodło. Chiałem dorobić sterowanie zegarkiem z pilota i do tego jeszcze termometr ale to później. Płytka z zegarkiem generuje co sekundę impuls na wyjściu i Atmega odczytując ten impuls na INT1 ma w przerwaniu odczytać...
mam kilka pytań odnośnie bascoma i atmegi8 wypróbowałem sobie przetwornik no i właśnie mam problem tylko prosze mi wszystko wytłumaczyć łopatologicznie bo ja dopiero zaczynam 1. do czego potrzebny jest ten plik m8def, bez niego przetwornik nie dziła i czy może wskazane byłoby używać tego pliku w innych programach. 2. Użyłem programu jak poniżej. Zauważyłem...
zgłaszam się po weekendzie mój program po sugestiach kol. ZbeeGin wyglądał jak poniżej nie zdążyłam jeszcze wstawić poprawki którą zasugerował jako ostatnią $crystal = 16000000 $regfile = "m16def.dat" Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = Porta.7 , E = Porta.3 , Rs = Porta.2 Config Lcd = 16 * 4 Dim Poz...
Na moje oko 4046 to najlepsze rozwiązanie. To ja podpowiem że trzeba tylko minimalnie zmodyfikować mój program. Tak żeby drugi Timer generował tylko tyle impulsów po uruchomieniu ile wynosi mnożnik. A w tym pierwszym Timerze który mierzy okres ma być inicjalizacja tego drugiego Timera i uruchamianie go. Dzięki temu częstotliwość tego drugiego będzie...
Chodzi Tobie tylko o szybsze, czy o to, że ma zliczać impulsy tylko wtedy jeśli ich częstotliwość jest równa 100 Hz?
Można, oczywiście z rezystorem i pojemnością kondensatora dobraną do maksymalnej spodziewanej częstotliwości impulsów.
Witam, Polecenie SOUND port , il_impulsów , czas_impulsu To mi nie pomoże. Jako argument chcę podać potrzebną częstotliwość (liczba), a nie ilość impulsów i czas impulsu... Jeżeli znasz częstotliwość to nie problem określić ilość impulsów i czas trwania, ale ta funkcja jest mało precyzyjna. Lepiej wykożystać do tego Timera: $crystal = 4000000 Pwm1a...
Witam, też aktualnie bawię się impulsatorem na EVB4.3 M32 16MHz. Fajnie działa sterowanie w przerwaniu: http://www.elektroda.pl/rtvforum/topic14... Dołączyłem kondensatory 68 nF równolegle do styków. Na kwarcu 16 MHz nie ma żadnego problemu z liczeniem impulsów w obie strony. Musiałem tylko dokonać modyfikacji kodu ponieważ trafił mi się impulsator,...
Muszę użyć układ dwóch timerów ponieważ w docelowym układzie zakres czasowy Timera1 będzie za mały. Czy procesor zliczy na T1 impulsy generowane na OC2 ? Obawiam się sytuacji, że przy wspólnym CLK gdzieś mi się zbocza miną pomiędzy OC2 a T1 i układ nie zatrybi... Oczywiście że zbocza te mogą się minąć, ale to jest bez znaczenia. Podczas synchronizacji...
Hej, Jeśli chcesz płynnie regulować współczynnik wypełnienia to musisz wybrać jeden z modów PWM i wtedy będziesz skazany na jedną z kilku częstotliwości wynikających z zegara systemowego i tego jak ustawisz prescaler, Jeśli chcesz płynnie regulować częstotliwość to wybierasz mod CTC(clear timer on compare) ale będziesz miał wtedy stałe wypełnienie,...
Dałem kondesator i jest lepiej z tym że zawartość timera nie zawsze jest zwiększana co jeden szczególnie gdy z większą częstotliwością podaje impulsy.
No, tak dobrze to nie jest. AVR-y (a w nich timery) nie mogą poprawnie zliczać impulsów o częstotliwości większej niż połowa częstotliwości zegara zakladając na wejsciu wypełnienie przebiegu 50%. Niezbędne będzie zatem zastosowanie preskalera. Proponowałbym ATMEGA8 z kwarcem 16MHz i z prescalerem /4 zbudowanym np z cyfrówki 74F74. Mamy zatem poniżej...
Powiedz w jakich zakresach ma być regulowana częstotliwość tego impulsu. A w BASCOM teoretycznie można zrobić to samo co w C - kto powiedział, że nie można w B. operować na rejestrach i uruchomić "ręcznie" timera w dowolnym trybie? Dla Autora tematu - zapoznaj się z notą katalogową procesora, z rozdziałem dotyczącym timera i jego trybu pracy jako PWM...
Po pierwsze nie baw się w sterowanie fotodiodą IR tylko zastosuj fabryczny odbiornik scalony jaki jest stosowany w sprzecie RTV. Takie odbiorniki są ogólnie dostępne (poszukaj) i wymagają sygnału IR o określonej częstotliwości. Poczytaj sobie dokumentację takiego układu. Najprostsze sterowanie to nadawanie "paczek" impulsów o częstotliwości dostosowanej...
Na razie patrzyłem tylko w dokumentację Bascoma... dokumentacje tego procka ma coś koło 250 stron :/ Jeśli już wiesz ogólnie jak działają avr-y , to wtedy dokumentację czytaj wybiórczo , czyli tę część która Cie interesuje ;) Z dokumentacji Bascoma wynika, że stosując polecenie config timer nie da się ustawić prescalera dla trybu PWM... Między innymi...
Config Portb = 63 : Portb = 63 Config Timer0 = Timer , Prescale = 1 Enable Interrupts : Enable Timer0 : On Timer0 Time Do Loop End Time: Timer0 = Zmienna Toggle Portb.3 Return Zmieniając wartość zmiennej "Zmienna" zmieniać będzie się częstotliwość impulsów.
Program wyświetla to co chcesz ale w symulatorze to trwa bardzo bardzo długo. i Teraz ja licznik odlicza 100 impulsów to musisz pozmieniać obliczenia. Podczas symulacji w warunkach wpisz mniejsze wartości to się szybciej doczekasz tego wyświetlenia na lcd albo zwiększ zmienne ręcznie podczas symulacji. sygnał 125khz do generowania PWM 1,25khz. Nie rozumiem?...
Przykładowo możesz wykorzystać dwa liczniki. Jeden do regulacji częstotliwości, a drugi do regulacji wypełnienia. - licznik pierwszy odlicza czas pomiędzy okresami od 1 sek dla 1Hz do 50 ms przy 20Hz. - licznik drugi oblicza czas trwania impulsu. Powiedzmy że zmiana stanu pinu X generuje przerwanie uruchamiające licznik drugi który po upływie zaprogramowanego...
ATmega8 posiada trzy liczniki/timery, z których dwa (T0 i T1) mają możliwość zliczania zewnętrznych impulsów, dołączanych do pinów 6 i 11. Wg atmelowskiego pdf'a częstotliwość zliczanych impulsów nie może być wyższa niż połowa częstotliwości zegara ATmegi. Dla bezpieczeństwa i zapewnienia prawidłowej synchronizacji podają wartość fclk/2.5 - co w Twoim...
Witam. Jestem osobą która od kilku miesięcy w wolnych chwilach próbuje sił z mikrokontrolerami. Jako język wybrałem Bascom bo wydaje się być bardziej przyjazny od np. C. Mam wielki problem gdyż nie wiem jak zabrać się za pisanie programu który miałby generować 59 impulsów w określonym czasie, a po wygenerowanie zrobić przerwę długości jednego impulsu...
Chodzi o ten kod? To mój kod. JESZCZE RAZ NAPISZĘ - impulsy zlicza licznik0 więc musisz podać je na pin o alternatywnej funkcji "T0". Inaczej miernik nie będzie mierzył. Schemat i program to jedna całość. Nie można do danego programu dorabiać dowolnego schematu!
Tak na chłopski rozum pierwsze co przychodzi na myśl to stały pomiar częstotliwości wejściowej i na tej podstawie wytworzenie nowych impulsów o wyższej częstotliwości przeliczanych w czasie rzeczywistym. Oczywiście w takim układzie impulsy wyjściowe były by z lekkim opóźnieniem (co najmniej 2 imp. na wejściu), bo potrzebny jest przecież czas na zmierzenie...
Konfiguracja timera '51 jest inna : [syntax=basic4gl]Składnia: CONFIG TIMERx = COUNTER | TIMER , GATE = INTERNAL | EXTERNAL , MODE = 0 | 1 | 2 | 3 gdzie: x0 – TIMER0, 1 – TIMER1, Opis: TIMER0 i TIMER1 mogą pracować jako liczniki impulsów zewnętrznych gdy pierwszy parametr jest ustawiony jako COUNTER. Impulsy zliczane muszą być dostarczane...
W dobrym zakresie jest ten PWM? 1÷2ms szerokość impulsu i częstotliwości max poniżej 500Hz?
Mam rozumieć, że częstotliwość sygnału jest stała i równa 306Hz? Bo w takim przypadku nie widzę sensu stosowania dzielnika.
W pierwszym poście napisałeś że potrzebujesz zmierzyć czas całego impulsu i tak jak to wygląda na pierwszym rysunku to chyba miernik częstotliwości by tu wystarczył. Miernik od Manekinnen mierzy od 1Hz do połowy prędkości Twojego kwarca...może na początek Ci wystarczy a ma otwarty kod który możesz zaimplementować do swojego rozwiązania. Mała częstotliwość...
Patrzymy do datasheeta i widać, że potrzeba ustawić mode 7, gdzie OCR0A = 33 ustala częstotliwość, a OCR0B wypełnienie. TCCR0A = &B00100011 TCCR0B = &B00001001
Czyli generator impulsów jest włączany przez procesor nadający jakiś kod?
Tak, będziesz mógł. Jeśli chcesz liczyć w czasie (a nie chcesz) to mierzony przebieg doprowadzasz do wejścia zegarowego timera, w efekcie każdy impuls powoduje zwiększenie wartości licznika o jeden. Skoro chcesz mierzyć szerokość impulsu to wykorzystujesz wejście ICP timera - timer taktujesz z maksymalną częstotliwością, z kolei impulsy z obrotomierza...
Dawno Bascoma nie używałem ale to będzie coś takiego: On int0 czas 'przerwanie zewnetrze (wejście impulsów) do czestotliwosc=1/czas 'obliczenie czestotliwosci z czasu pomiedzy impulasmi loop czas: stop timer0 'zatrzymaj timer czas=timer0 'odczyt z timera timer0=0 'wyzerowanie timera start timer0 'ponowne uruchomienie timera return Oczywiście...
Witam ! Obliczenia źle oraz pewnie źle ustawione fusebity (pewnie default - 1Mhz internal rc). Instrukcja Load jako parametr ma po ilu impulsach ma wystąpić przerwanie, więc powinno być 625, ale że pojedyńcza połówka przebiegu sieci trwa nie 20ms a tylko 10ms więc powinno być 312,5 :D. Więc lepiej chyba prescale = 64 i load timer1, 1250. Pozdrawiam...
Chyba faktycznie zaczne sie uczyc assemblera bo ten mikropascal nie ma wogóle żadnej pomocy Wiesz, powiem Ci, że aby zacząć programować w asemblerze wystarczy znać nazwy najważniejszych rejestrów, wiedzieć za co odpowiadają i mieć pod ręką listę rozkazów dla danego procka. W porównaniu z Micropascal, Microbasic, BASCOM lub nawet z C, w przypadku programowania...
A jak trwa ci sygnał na wejsciu 1 i zacznie się na wejsciu 2, to jak jednym timerem zmierzysz dwa czasy, zerując timer po każdym impulsie?
ADC 10bit , zasilanie stabilizowane 7805 , impulsy zliczane z czujnika zbliżeniowego (magnetyczny) , możliwy błąd +/- 10 obr/s
Jak napisał mirekk36- do takich czujników w Bascomie nie ma gotowców. Trzeba je sobie napisać. Ale to dopiero jest ciekawe- a nie gotowce. Schemat wzmacniacza z linku- prawidłowy ale koncepcja układu- taka sobie. Na obrazku z linku jest pięknie- a wrzeczywistości jest tak: http://obrazki.elektroda.net/56_12643603... Pięć impulsów o częstotliwości...
impuls bascom bascom impuls częstotliwość bascom
kondensator silnika fazowego sterowanie lusterkami licznik primera
rotenso monoblok oscyloskop dt5200
Naprawa sprężynki w pilocie: krok po kroku Intel push-pin, zablokowane kołki radiatora, demontaż chłodzenia, LGA115x, wymiana mocowania