Witam. Licznik 4017 "zapalający" kolejno 3 diody LED powinien być tak połączony: http://obrazki.elektroda.net/43_12354806... Diody można sterować bezpośrednio z wyjść 4017 (z rezystorem R3) pod warunkiem, że są to diody "małej mocy" i niewielka jasność świecenia będzie - w tym zastosowaniu - wystarczająca (sam oceń). Przy większych prądach...
Czarno to widzę. ADC nie ma wyjścia tylko wejście. Jak już chcesz mieć wyjście to albo zewnętrzny DAC albo drabinka R albo PWM z filtrem. A program to w jakim języku szukasz?
Musisz zmodyfikować program tak, żeby zliczał czas jednego i drugiego stanu. Tak mniej więcej: [syntax=vbnet] If Wejscie_1 = 0 Then 'jesli pojawil sie impuls na wejsciu 1 Licznik_1 = 0 'zeruj licznik bezczynnosci danego kola If Licznik_2 < Limit Then Incr Licznik_2 Else 'jesli nie ma impulsu, to... Licznik_2 = 0 If Licznik_1 < Limit Then Incr...
Kawalek kodu w asemblerze. Nie jestem pewien czy ATiny ma wszystkie te rozkazy. in r16,PINA ;odczytaj klawiature i enkoder cbr r16,sEnkoderMask ;maskuj niepotrzebne bity lds r17,dPoprzedniStanEnkodera cpse r16,r17 ;porownaj aktualny stan ze starym rjmp EnkoderWRuchu ;= to skocz do obslugi enkodera ret ;!= to wyjdz EnkoderWRuchu: lsl r17 ;przesun...
Spróbuj najpierw najprostrzym sposobem, zamieniając typ zmiennych. Cyfra_ok(3) As Word Cyfra_nok(3) As Word
Czego oczekuje NAZE Ci niestety nie powiem. Poszukaj informacji w manualu. Po wyłączeniu nadajnika dioda przy attiny powinna zgasnąć, bo brak PWM to brak PCINT, a tam jest załączana. Możesz dopisać symulację dodatkowych kanałów i sprawdzić, czy coś to pomoże. Dodaj sobie np. drugi output compare do tego licznika, który już masz. Jak zliczysz 6 wyłączeń...
Witam! Możesz wykorzystać popularny licznik typu 4017 sterowany generatorem impulsów pracującym na częstotliwości 0,2Hz(5s) lub mikroprocesor(nawet prosty ATtiny 13), który będzie odpowiednio sterował diodami. Mikroprocesor daje większe możliwości, bo łatwo go przeprogramować na inny efekt. Pozdrawiam, BTomasz92
Witam. STM8L steruje bezpośrednio wyświetlaczem LCD i również ma mały pobór prądu. I kosztuje tyle samo co Attiny.
Dwa pytania: Co rozumiesz żeby układ był jak najbardziej uproszczony? Czy jak najmniejsza ilość elementów? Bo jeżeli tak to najlepiej zrobić to na jakimś procku attiny. Wtedy odpadają dwa scalaki z dekoderami. Jeżeli będzie to na 'zwykłych' elementach to będzie: 1 licznik, dwa dekodery (najlepiej OC), kilka elementów pasywnych do eliminacji drgań zestyków....
Ja bym nie zerował licznika tylko puscił go wolno a w przerwaniu odczytywał tylko wartosc tego licznika. Teraz wystarczy odjac obie wartosci i masz czas od zbocza do zbocza. Sumujac oba czasy otrzymujesz obroty oczywiscie po przeliczeniu odpowiednim. Ten sposób zapewnie że do pomiarów obrotów i czasu wtrysku używasz tylko jednego licznika. Dodatkowo...
Chyba złoże to z licznika 8 bitowego 74hc590 Może jakiś mały Atmel ATTINY? Nie wiem jak cenowo to wychodzi.
. Zamierzam zrobić tak by mogli wprowadzić korektę (jeśli będzie potrzebna) i zapisać w eeprom. czy to dobry pomysł? Jakoś tak; $Crystal=12000000 Config Timer1 = Timer , Prescale = 8 On Timer1 Inter_1mS Inter_1mS: Counter1 = Counter1 + Licznik (64036 - wychodzi z obliczeń, że da to 1ms) /tu odliczę sobie 103/ Błednie to rozumujesz, albo błednie podałeś...
Witam. W przerwaniu wpisałeś : Timer1 = 131 do zliczenia zostało 65536 - 131 = 65405 Przy wpisaniu do Timer0 tej samej wartości do zliczenia pozostaje : 256 - 131 = 125 impulsów. Myślę, że dobrze zrozumiałem Twój post.
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...
A więc tak : - na przyszłość podawaj pełne nazwy, łatwiej bedziesz rozumiany. ;) - zajrzałem do pdf-ów od AT90S2313 i ATtiny2313 (trudno zgadnać którego miałeś na myśli) i tak - AT90S2313 (s.18 DOC0839.pdf) ma 11 wektorów przerwania wliczając RESET, a ATtiny2313 ma ich 19 (s.43 - doc2543.pdf). Wyciągając moją słabo działającą szklaną kulę jestem w stanie...
Spróbuj zrobić tak Co4ms: 'procedura obsługi przerwania od Timera T/C0 wykonywana co 4ms Timer0 = 6 'załaduj do Timera0, żeby zliczył 250 (=256-6) impulsów Incr Licznik If Licznik = 6 Then 'zmienna Licznik liczy do 6 aby Licznik = 0 'sprawdzanie stanu przycisku następowało If Pind.0 = 0 Then 'co ok.24ms If Pomoc = 1 Then 'jeśli zmienna Pomoc...
np. Nie da się. TImer0 może zliczać tylko z pinu PD4. I to z PinD.4 a nie PortD.4 ;) Można i z PinD.0, ale nawet przerwania żadnego do tego nie ma więc trzeba by programowo. A nawet jak przerwanie by było (mowa o przerwaniach INTx) to Timer tego nie zliczy. Trzeba by programowo zwiększać zawartość licznika Timera0, ale po cholerę. Jeżeli to ma być...
Czas otwarcia wtryskiwaczy mierzysz za pomocą 1 timera, ale nie tak od razu. Są dwie metody: pierwsza to podpięcie (przez transoptor) wtryskiwacza do wejścia timera i wejścia przerwania - po wykryciu przerwania (początek stanu niskiego) startujesz timer, przestawiasz stan aktywacji wejścia INT na przeciwny i procek wraca do pętli głównej, po ponownym...
Tak teoretycznie można do tego podejść analogowo. Po pierwszym impulsie zaczyna się ładować kondensator, a po drugim impulsie zaczyna się rozładowywać. Przy odpowidnio dobranych stałych RC czasy mogą być równe. Całość będzie się składała z wzmaczniaczy operacyjnych. Inne rozwiązanie to liczniki cyfrowe, po jednym impulsie zaczyna liczyć w góre, a po...
Witaj ! Oceń tą nakładkę przy zastosowaniu małej 12V żaróweczki np. takiej z deski rozdzielczej z samochodu tak aby nie przekroczyć prądu 170mA. Połącz układ/obwód, plus 12V- żaróweczka- przewód biały lub ten brązowy z nakładki i teraz ten zielony do minusa np. tego akumulatora.Tranzystor w stanie otwartym ma 30 Ohm. Tak połączony obwód powinien Tobie...
Pozmieniałem troche program ale nie działa prawidłowo prędkość strasznie skacze od 0 do 240 km/h -bo nie zerujesz co 1 sec. licznika impulsów (Timer0), ponadto ,masz zbyt duży błąd zaniżając zakrses zmienmnej "Licz" - as byte Porównaj: $regfile = "2313def.dat" $crystal = 8000000 Config Lcdbus = 4 Config Lcd = 16 * 2 Config Lcdpin = Pin ,...
Ostatecznie tak to zrobiłem, gdzie w miejscu licznika będzie attina, generator impulsów jest tutaj tylko dla symulacji attiny. http://obrazki.elektroda.pl/1118534000_1...
Nie możesz używać Waitms nigdzie indziej poza pętlą główną. Trzeba to obejść. Wiadomo, że w podprogramach jesteś co 4ms. Co do Portb.5 to nigdzie nie widzę zerowania i dlatego jest ustawiony non stop. [syntax=basic4gl]$regfile = "attiny2313.dat" $crystal = 1000000 Config Portb = Output Portb = &B1111111 Config Portd = &B11111000 Portd = &B1111111...
Takie kiedyś były np. liczniki rozmów w telefonii. Tak się składa, że identyczne, może tylko na inne napięcie - 24V - stosuje się również w "zawodowych" pulpitach kolejowych właśnie. Jeśli Kolega ma coś wspólnego z ISEA, nie powinno być problemu ze zdobyciem. No, chyba że się nie zmieszczą... A impulsator? Attiny, a do tego tranzystor i przekaźnik...
Zdefiniuj zmienną Temp jako Word. Jak ci ma wyświetlić 600 jesli zmiena Byte może przyjąc max wartość 255. Właśnie powyżej tej wartości będą ci sie wyświetlać dziwne rzeczy. No to może wytłumaczę jak to zrobić na zmiennej typu Byte według wyżej wspomnianej ideii. $crystal = 4000000 $regfile "attiny2313.dat" Dim Pomiar As Single Dim Temp As...
No tak faktycznie te 100x zrobi się w mgnieniu oka... Więc program musi dodać +1 przy zmianie na stan wysoki i koniec, jednokrotnie. Może zastosować przerwania? W momencie kiedy wystąpi stan wysoki, następuje przerwanie które zlicza +1 do licznika. Czy to miało by sens? uC to attiny 2313.
Witam. Napisałem program do migania diodami i mam trzy pytania: 1.Czy da się ustawić cały port w stan spoczynku (coś w stylu PORTD = 0)? 2.Czy po każdej komendzie IF trzeba pisać END IF, czy da się to jakoś ominąć? 3.Czy poniższy kod jest poprawny, czy będzie działał? 1. Tak, możesz tak pozostawic. Bascom akceptuje kilka form ustawienia poziomu pinów...
Witam Sposobów realizacji jest masa. Najprościej Arduino Nano i kilka linijek programu. Mniejsze sam procesor Atmega lub Attiny, ale trudniej bo trzeba płytkę robić (lub pająka żywicą zalać) CD4017 + CD4002 bez programowania. Aby to wszystko nie padło przy pierwszym włączeniu to należy jeszcze dorobić konwertery poziomów wejściowych i wyjściowych, ale...
Witam Na wstępie zaznaczam, że AVR-ami zajmuje się dopiero od tygodnia :). Mam problem jak w temacie. Potrzebuję aby timer 1 (16 bitowy) liczył od ustalonej wartości początkowej, a po wystąpieniu przepełnienia wygenerował przerwanie i się zatrzymał. Potrzebuję odliczyć 25ms. Attiny taktowany jest zegarem 16MHz, dzielnik częstotliwości dla timera 1 ustawiłem...
Chciałem zaprezentować licznik Geigera, który wraz z synem postanowiliśmy wykonać. Licznik w założeniu miał być mały i wyposażony w zewnętrzną sondę. W zasadzie oparliśmy się na dwóch projektach - pierwszym, podstawowym był projekt opisany między innymi tu: http://www.elektroda.pl/rtvforum/topic32... http://obrazki.elektroda.pl/7746693100_1...
Jutro jeszcze sprawdzę jak będzie działać Attiny 45. Może coś uda się osiągnąć. Zrobiłem trochę testów na attiny13 i po nich jestem bardzo sceptyczny co do użyteczności funkcji micros() w takim zastosowaniu jak metoda użyta w twoim szkicu. Mam obawy że na attiny45 problem może być ten sam, tylko nieco mniejszy, z powodu możliwości wyższego taktowania....
Ale odpowiedzi dla nouki? W Bascomie można wstawić wartości do rejestrów, niekoniecznie w asemlerze. Ja to robiłem tak: Set Tccr1b.cs10 'start timer1 Else 'a jak nie Czas = Timer1 'odczytaj czas (liczbę zliczonych impulsów) z timer1 Reset Tccr1b.cs10 'zatrzymaj licznik Timer1 = 0 'wyzeruj licznik(żeby po następnej zmianie wyjścia komparatora mógł liczyć...
Warto zacząć od uwzględnieniu sytuacji awaryjnych: 1. Co jeśli czujnik się odczepi, uszkodzi. Brak światła? 2. Co jeśli bateria pod wpływem wstrząsów chwilowo straci kontakt a mikrokontroler zasilanie. 3. Skoro to mikrokontroler, to może warto dodać stan baterii? Natomiast kolejne wciśnięcie switcha podczas ściecenia LED nie resetuje licznika czasu....
Nijak z żadnego kodu nie mogę się doczytać na chłopski rozum kiedy on mierzy czas od Rising do Rising. Nie używaj więc chłopskiego rozumu - użyj własny! Wyjaśnienie powinno być zbędne bo jest bardzo trywialne; - obracając wiatrakiem, w pewnym momencie wbudowany tam hall switch daje impuls na INT0, co wtedy robisz w programie? - odsyłasz go do etykiety...
Można na wspomnianej ATmedze8 a można coś kombinować z NE555 jako generator impulsów i jakiś skrócony licznik Johnsona. Program bez problemu do napisania na kolanie jak i schemat wspomnianego układu.
Możesz spróbować mniej więcej tak: // deklaracja zmiennych globalnych volatile uint8_t prev_tcnt, T; // w funkcji 'main' // skonfiguruj przerwanie INT0 tak, by reagowało na obydwa zbocza MCUCR |= (1<<ISC00); // używaj raczej makra ISR ISR(INT0_vect) { // sprawdzasz które zbocze wywołało przerwanie // jeżeli zbocze narastające,...
Witaj, Ja też walczę z SPI od pewnego czasu, ale używam SPI w Atmega8515 jako Slave. Jeśli dobrze zrozumiałem, to masz problem z USI w Attiny26. Z tego co wyczytałem w pdf'ie i z tego co pamiętam jak się bawiłem tym prockiem, to USI można skonfigurować jako normalny SPI. Musisz tylko odpowiednio ustawić bity rejestru USICR. Nie wiem po co liczysz impulsy...
Witam. Do mojego Opla Astry zamontowałem MID (wyświetlacz komputera pokładowego). Powinno się go przeprogramować na dany silnik, na impulsy z licznika przebytej drogi itp. W moim samochodzie licznik przebytej drogi podaje ponad 8000 impulsów na kilometr, ale MID pochodzi z nowszej wersji samochodu gdzie było ponad 16000 impulsów na kilometr. Czy można...
Nie,ma liczyć litry tak jak dystrybutor . Dodano po 2 Nie wiem w jaki sposób dodawac litry do zmiennej po przekroczeniu okreslonej liczby impulsów z przepływomierza to co znalazłem to liczone wszystkie w czasie a tu chyba chodzi o przepełnienie licznika Czas tu nie ma znaczenia! Użyj dowolny timer w charakterze licznika (Counter), i tak jak sugerowano...
Autorowi tego postu przestawilem moje rozwiązanie i problem który mnie przystawil. Przerwanie które jest rozwiązaniem nie potrafie obsłużyć. A układ z myszki działa nienagannie, wraz z układem detekcji kierunku . W trakcie obrotu tarczy w sekwencji kodu występuje zdarzenie ze na kanale A i B są takie same stany. (kod Grey'a). A kolega 11111olo może...
Witam muszę zaprogramować atmega8 tym kodem. Niestety on jest dla attiny. jak go konwertować do "*.bin" dla atmegi8 Jak mogę to wykonać? [syntax=basic4gl]$crystal = 4000000 $regfile "attiny2313.dat" ' Miernik prędkoci obrotowej 'licznikiem 0...65535 jest Timer1 Dim Wynik As Long Config Timer1 = Counter , Edge = Rising 'konfiguracja Timera do zliczania...
Wiec tak też jestem początkujący, właśnie częściowo też korzystam z tego programu. Udało mi sie zrobić z niego właśnie zwykły licznik impulsów. Generalnie to brak w tym kodzie jest obsługi wyświetlacza LCD, jak sam widzisz nie jest skonfigurowany gdzie jakie porty procka maja nim sterować , jest niekompletna konfiguracja Timer1.To tyle czego brak na...
Witam Kod w Bsascomie: ' Impulsator ' 432 bajtów pamięci programu ' 57 taktów zegara w pętli (max) ' 87719 obr/min przy 24x4 stanach impulsatora $regfile = "attiny2313.dat" $crystal = 8000000 Dim Licznik As Byte ' Wartość licznika Dim Stan_imp As Byte ' Pozycja impulsatora Dim Temp10 As Byte ' Zmienna Ddrd = &B01000011 'konfiguracja portu: 1 = wyjścia...
widze ze nikt :cry:
Dlaczego nie dałeś jakiegoś voltage followera na wyjściach? Bufor wyjściowy nie jest mi potrzebny. Czyli glitch. To cecha programów w asemblerze - autorom nie chce się po walce z programem ich poprawiać, bo wtedy jest duża szansa na nowe Ciekawa teoria, ale całkowicie nie trafiona. To nie żaden glitch wymagający poprawki tylko takie było moje założenie,...
Mam w domu kilka świeczek podobnych do tych z obrazka https://obrazki.elektroda.pl/8153128500_... Po czasie prawie wszystkie przestały działać - zniszczone ścieżki na płytce od wilgoci, przerdzewiałe styki włącznika. Dodatkowo świece mają tylko ruchomy płomień, a świecą statycznie. Nie było też żadnego czujnika światła, tylko ręczne...
Hej! Mam wodomierz Apator JS 4, chciałbym zczytywać z niego użycie wody w sposób kablowy (obecnie stosuję nakładkę radiową AT-WMBUS-16-2 i nie jestem zadowolony - odczyty często gubione a odbiornik 30 cm od licznika). Moduł impulsowy AT-MBUS-NE-02 jest ciężki do dostania (i dość drogi). Zastanawiam się, jak samemu sklecić jego odpowiednik. Czy ten wodomierz...
Po pierwsze ten układ na tranzystorze jest do bani. Zauważ że przy skręceniu na zero potencjometra tranzysotor najprawdopodobniej pójdzie z dymem. Po drugie warto by dać na kolektorze rezystor do masy, po trzecie na bazie dałbym diodę aby i rezystor podciągający do 5V aby układ reagował tylko na napięcia poniżej 5V. Ale jest jeszcze jeden błąd . Przecież...
Do tej pory troszkę bawiłem się AT89C2051. Wykonałem pewien układzik który za pomocą Timera0 zliczał impulsy na wejściu T0 podczas 1sekundy którą odmierzałem Timerem1. Jako, że musiałem przeprogramować 51 do innych celów chciałbym go zastąpić Attiny2313 bo mam dwie sztuki. Zacząłem czytać książkę Dolińskiego aby wykonać program ale mam pewne problemy....
Witam W prockach dopiero raczkuje. Robię obrotomierz do samochodu (choć można zastosować to wszedzie). Oparłem to na atmega16 bo taki akurat teraz mam, ale docelowo ma byc na 2312.Na razie jest wszystko w fazie testowej na biurku, ale założenia są takie: na kole zamachowym umieszczam siakiś czujnik, podaje to na układ formowania impulsu, z którego będę...
Poza tym Zrobienie takiego man-in-the-middle, może być trudniejsze niż się na początku wydaje, a atiny nie jest też demonem prędkości, a nie ma sprzętowego licznika do obsługi enkoderów. Co ty opowiadasz... Mamy enkoder, który generuje max kilka impulsów na sekundę i to ma być problem? No, niby tak, ale robienie man-in-the-middle z attiny i enkodera...
Na początku chciałbym zaznaczyć, że znam się na programowaniu w C tylko natomiast jeśli chodzi o mikrokontrolery to jestem początkujący. Wszystko zaczęło się od tego, że potrzebowałem zamiennika układu 1-wire DS2423. Jest to podwójny licznik impulsów. Niestety Maxim/Dallas już go nie produkuje ale znalazłem implementację tego licznika na uC AVR. https://github.com/smurfix/owslave...
Mógłbyś mi jeszcze podpowiedzieć jak rozszerzyć program, aby oprócz funkcji wykonywanych jak dotychczas ( dwa niezależne liczniki ) na wyjściu Portd.2 uzyskać impulsator o częstotliwości ok 0,5 Hz. Mój obecny program 'Niezależne sterowanie dwoma wyświetlaczami 'przy pomocy dwóch przcisków. Zliczanie w górę. $regfile = "attiny2313.dat" $crystal...
Dzięki, śmiga programik - kluczowanie PWM z częstotliwością ~31kHz a wyjście jest na pinie 14, jakby ktoś chciał wiedzieć: $regfile = "attiny2313.dat" $crystal = 8000000 $baud = 19200 Const Maxlen = 40 'Deklaracje stalych Dim Akey As Byte 'Deklaracje zmiennych Dim I As Byte Dim Cmd As String * 4 Dim Buffer As String * Maxlen Dim E As Eram...
Nie ma co wątpić. Zrobiłem sobie komputerek. Oblicza zużycie paliwa i inne w tym przebytą drogę. Zgadza się to dość dokładnie ze wskazaniami licznika auta. Ponadto piszesz że potrzebujesz tylko wykrywać ruch auta, więc dokładna ilość impulsów nie ma to znaczenia.
http://obrazki.elektroda.net/70_12489013... Atmel Corporation wprowadza na rynek nowy niskonapięciowy mikrokontroler z rodziny AVR. ATtiny43U - bo tak nazywa się nowy układ, może pracować już przy napięciu 0,7V, a to za sprawą wbudowanej przetwornicy DC-DC typu Boost. Przetwornica ta pozwala na zwiększenie napięcia z zakresu od 0,7 do 1,8V...
Najprostszym sposobem jest skorzystanie z języka wyższego poziomu np.C. Wtedy sytuacja się znacznie upraszcza. Nie mniej jednak tak w asemblerze jak i w C całość należy zrealizować dość podobnie. Pierwszą metodą która sprawdza się gdy nie mamy nic więcej do zrobienia a tylko odmierzenie czasu i nie używamy przerwań albo gdy ich używamy ale na dokładności...
Jeśli dobrze rozumiem, otrzymujesz przerwanie co 1 sekundę i w jego obsłudze odczytujesz ile licznik zliczył impulsów? Nie ma się co dziwić że tak się dzieje licznik po prostu zliczy wartość całkowitą impulsów. Lepszym rozwiązaniem będzie pomiar czasu pomiędzy impulsami (okresu) i z niego przeliczenie częstotliwości.
Dokładnie, skorzystanie z timera ułatwia sprawę - nie trzeba liczyć instrukcji procesora. Poniżej mała wskazówka z komentarzami (może nie jest to podręcznikowe cudo, ale najprostsze i najczytelniejsze zrealizowanie migacza na procesor attiny10 w ASM). [syntax=asm] /* * Created: 2012-07-12 10:32:21 * Author: Piotr */ ;dołączenie definicji procesora .include...
Cześć To nie jest tak jak kombinujesz. Sterownie typu PPM do serw może przenieść kilka kanałów, 20ms to nie przerwa miedzy impulsami tylko okres powtarzania. Transmitowane sygnały od nadajnika PPM nie zawierają szerokich na 1,5ms impulsów tylko szpilki i szerokości około 300µs, pierwsza szpilka wyznacza początek impulsu do serwa, druga koniec,...
Witam temat mocno przed sezonem, poszukaj czujników indukcyjnych są one niezawodne, muszą pracować w warunkach przemysłowych i zniosą bardzo dużo, montaż ich jest bardzo wygodny, wystarczą trzy przewody i tyle, napięcie zasilanie różne zależy od typu i producenta są takie nawet od 6v do 24V, na alledrogo można trafić je już od 20zł, elektronikę z wyświetlaczem...
Witam Kiedyś kupiłem zestaw nord elektronik ne2008 (licznik impulsów) na procku 2051 ja włozylem tam avr 2313 i odpowiednią przerobką. problem polega na tym że nie potrafię wysterowac tranzystora pnp który steruje wyświetlaczen 7seg , bez znaczenia jakiej komendy uzyje do ustawienia pinu w stan niski (bascom avr). Jeśli w to miejsce wlutuje npn i odpowiednio...
Witam. Proszę nie mówcie żebym nie szukał na forum bo tego jest miliony i tu się zgodzę bo jest pełno ale dla kogoś kto średnio się zna to jest mało przydatne. Mam układ ds18b20 podłączony do portu D pin 0 avr'ka tiny2313 rezystor podciągający 4,7k. Cały port B wykorzystany do sterowani podwójnym wyświetlaczem siedmio segmentowym przy pomocy CD4511....
'$sim 'to jest programik do sterowania silniczkiem w obu kierunkach 'za pomocą sygnału do sterowania serwa w odbiorniku zdalnego sterowania. 'sygał odbierany przez wejście odwracające komparatora analogowego z progiem 1.1V 'Sterowniki do silników modeli samolotów,chociaż są lekkie, nie mają zwykle możliwości zmiany 'kierunku obrotów silnika.(I...
Sprawy zawodowe oderwały mnie od tego tematu, ale już jestem i działam. Układy elektroniczne nie są dla mnie problemem, ale gdy kończyłem szkołę to komputer zajmował pomieszczenie o sporej kubaturze i był bardziej ciekawostką niż pomocą naukową. "bart-projects" dziękuję bardzo, sprawdziłem, działa. Twoja wiedza programistyczna po prostu mnie powaliła...
Witam, dziękuję za chęć pomocy , ale Koledzy chyba nie do końca zrozumieli mój problem. Chodzi mi o uruchomienie na jednym ATTiny2313 dwóch niezależnych liczników liczących każdy od 0 do 9. Liczniki te mają zliczać impulsu od dwóch przycisków ( do masy ) , każdy na osobny licznik. NIe chodzi mi o licznik liczący do 99 z wyświetlaczmi multipleksowymi.
Co do samego prędkościomierza to sprawa nie jest skomplikowana. Podstawowe założenie zapewne będzie takie: jeden obrót koła = 1impuls. Procek natomiast niech zajmie się pomiarem czasu pomiędzy tymi impulsami (uruchamiasz sobie TIMER na czas pomiędzy kolejnymi imulsami). Mając te dane jesteś w stanie obliczyć prędkość oraz przejechane kilometry. Potrzebujesz...
1 obrót cylindra to 1 arkusz więc jeśli na osi umieścimy "podziałkę" z drukarki atramentowej HP (taki foliowy krążek z naswietloną podziałką) i element odczytujący (takze z tej drukarki) wtedy uzyskamy kilkaset impulsów na 1 obrót - czy wtedy bedzie łatwiej? np. 1 obrót = 500 impulsów 500 impulsów = 1 ark. 250 impulsów/sek = 0,5 ark/s =1800ark/h Zakres...
[quote="lukaskay"] a gdybym czas oczekiwania zwiększył do 15 s wtedy dokładność wzrosła by mi do 4 obr/min mogę użyć komendy: Wait 15 ?? ale wtedy chyba dojdzie do przepełnienia licznika?? quote] Przy twoich parametrach silnika el., oczywiscie ze dojdzie do przepelnienia licznika0. Ponadto uwazam ze stosowanie dyrektywy "Wait" w pomiarach nie jest najlepszym...
Masz chyba błąd w założeniach konfiguracji Timera. Licznik ustawiony jako Counter po prostu liczy impulsy z zewnątrz- prescale nie powinno być- bo to nie jest Timer tylko Counter. Rejestr Capture też w tym wypadku jest użyty bez powodu- nie ma do niego żadnej obsługi przerwania a i zezwolenie na przerwanie nie jest ustawione. Zezwolenie na obsługę przerwania...
Ta.... 1) Help, jest ładnie opisane... 2) Co masz ustawione jako wejście impulsów? (Co zliczają liczniki)? 3) Portb = &B255 co to za twór?
Musisz zliczoną ilość impulsów podzielić przez 100 :> Tak właśnie myślałem :D Z tym że jak narazie w programowaniu jestem "noga" i muszę mieć wyłożone jak kawa na ławę którą linijkę programu zmienić itd.
ATTINY13 + program ma tylko 8 pin.
Drobiazg miszczo997 :D Odnośnie Twojego zapytania - musiał byś zastosować dla każdej z diod sterowanie PWM (modulacja szerokości impulsów). Ten procesor nie posiada aż 8 kanałów PWM, dlatego będziesz musiał zaimplementować to programowo. Ogólnie działa to na tej zasadzie, że masz stałą częstotliwość przebiegu prostokątnego a zmieniasz tylko czas trwania...
Witam! Mam na początku pytanie: Co jest pierwsze przy pojawieniu się impulsu na ICP, przerwanie od niego czy przepisanie zawartości licznika do rejestru ICR1? Planuję zrobić licznik czasu trwania impulsu i wymyśliłem coś takiego (na razie schematycznie): [syntax=c] ISR(przerwanie od przepelnienia licznika) { wartosc = 0; marker = 0; } ISR(przerwanie...
Witam. Chciałbym sobie zrobić elektroniczny licznik (prędkościomierz) do motoru. Zamysł jest taki: Procesor Attiny2313 zlicza impulsy podawane przez czujnik optyczny z myszy komputerowej. Znając czas, obwód koła itd. możemy wyliczyć prędkość. Jest jednak problem. Mianowicie po włączeniu silnika licznik zaczyna wariować... pokazuje jakiś liczby, często...
Config Portb = &B11111100 ' ustawiam pind.7 i 6 jako wejści dla S1 i S2 Tak na pierwszy rzut oka instrukcja konfiguruje pinb.7 i pinb.6 jako wyjścia a pinb.0 i pinb.1 jako wejścia (pozostałe jako wyjścia), a nie jak podano w komentarzu. Debounce Pinb.7 , 0 , Licznik , Sub 'odkłucenie wejścia licznika impulsów Debounce Pinb.6 , 0 , Mikrostyk , Sub 'odkłucenie...
Nie można poprosic uC, żeby w tym czasie zajął się czymś niepotrzebnym (czym?) ale równie obciążającym? Procesor nie wie co jest potrzebne - robi co mu programista nakazał kodem programu (czasem nieświadom co nakazał :-)). Po drodze od programisty do kodu maszynowego (czyli tego co wykonuje procesor) jest jeszcze kompilator i miewa wbudowane opcje...
To trzeba poczytać w opisie konkretnego układu - są takie, że można podłączyć bodajże dwa piny do portu drukarki, (+ zasilanie i masę) i programować przez ten port (np. jakieś ATtiny, ATmega), i takie, że trzeba mieć programator. 6MHz zamiast 12MHz - 2 razy mniej RPM (a właściwie zapłonów / minutę), czyli pewnie to będzie 500 / 1000. Nie pamiętam, ile...
Łopatologicznie: 1. zgłasza się przerwanie ze zbocza opadającego. wywołana jest procedura jego obsługi. jesteśmy teraz w niej. 2. włączasz licznik by zliczał impulsy zegarowe przez prescaler. 3. czekasz tak długo aź stan na INT0 się zmieni na przeciwny - koniec impulsu. 4. zatrzymujesz licznik. odczytujesz zawartosc licznika i zapamiętujesz w zmiennej....
Witam Wpadłem na problem i mam spory problem z rozwiązaniem. Chciałem zbudować włącznik led do autka zdalnie sterowanego, zasilanie idzie z odbiornika (5V) i sygnał PWM w zakresie ok. 700us - 2300us. W programie mam próg ustawiony ok. 1500us. Gdy włącze układ to robi się dyskoteka (diody migają na przemian), a gdy przekrzywie drążek w jedną stronę to...
Hehe, też zmagam się z tym problemem, znaczy chwilowo mam inną robotę to sobie na razie dałem spokój, ale na pewno do tego powrócę. Twój ostatni algorytm wydaje się mieć sens. Ja z kolei myślałem o czymś takim: 2 do 4 (dość krótkie) impulsy o sprecyzowanym czasie trwania i ich przyjęcie dopiero ma zaliczyć jako główny impuls licznika. Mówię o urządzeniu,...
Witam, Próbuję uruchomić zegarek na procku ATtiny2313. Problem w tym że zegarek (stoper) działa za wolno - nie chodzi tu o precyzyjne odmierzanie czasu ale dziesiątki sekund zmieniają sie z prędkością sekund. Program jest z mikroprocesorowej oślej łączki z edw. Tam użyty był at90s2313, ale jeżeli dobrze wyczytałem w nocie katalogowej to timer0 w obu...
Witam. Od niedawna uczę się programować mikrokontrolery i postanowiłem rozpocząć zabawę na układzie attiny2313. Zrobiłem układ, który miał zliczać impulsy (w przyszłości ma to być licznik do motoru) projekt jest zaczerpnięty z tej strony: http://www.portalnaukowy.republika.pl/ob... jednak nie mogę znaleźć nigdzie przełącznika hallotronowego...
Witam. Mam pytanie takie czy ktoś kiedyś składał - robił dzielnik na np attiny2313 który to będzie dzielił impulsy wejściowe przez 8 -8,5 -9 do wybrania. Nie mam pomysłu jak rozwiązać ten problem bo moja wiedza jest w fazie rozwoju Myślałem, o liczniku na jednym z wejść liczącym do 8 bądź 9 i dającym wtedy impuls na jedno z wyjść ale to nie rozwiązuje...
U mnie w firmie przełamywano blokadę "0" w prostacki sposób: w momencie startu tarczy mechanicznej trzeba było odpowiedni "klapnąć" w widełki by zamiast 10ciu impulsów poleciało 11 impulsów. Dyskryminatory - fabryczne w 18E - były tak zrobione, że 11 impulsów było traktowane jako cyfra 1 i kierunek dozwolony. A że linie wychodzące były dołączone do...
Timer0 i timer1 używają tego samego preskalera. Dlatego instrukcja prescale=64 zmienia warunki dla funkcji getrc5. Zajrzyj do noty katalogowej ATtiny2313 i nie pisz głupot więcej. Dodano po 14 Odmierz20ms1: 'funkcja obsługi serwa1 Timer1 = 65286 'przy wartosci 65286 timer1 bedzie generował przerwanie co 2ms Incr Licz2ms1 'zwiększ licznik zliczający...
Można nawet to zrobić na Timerze 8-bitowym. Po prostu poza generowaniem przebiegu PWM trzeba odpalać przerwanie od Timera. Timer z preskalerem 8 zliczał by do 256 w ciągu 2048us, czyli 2,048ms. A więc miał być około 128 wartości od 1 do 2ms. Przerwania od Timera były by co te 2ms, a więc dość rzadko żeby dało się je obsłużyć. W przerwaniach trzeba zliczać...
Benson poległ na pisaniu programu więc wklejam swój. Całkowicie leję na to ze jest Wait 1 w przerwaniu, w takim programie nic złego się nie stanie, a jak mu licznik nie zliczy 15cm drogi to afery też nie będzie. Tym bardziej że jeśli wyłączy zasilanie przed przejechaniem pełnego 1km to go straci. Nie wiadomo czy tablica przejść dla wajchy jest już zanegowana...
Najprościej byłoby za pomocą jakiegoś mikrokontrolera podpiąć się pod tą magistralę. Trzeba znaleźć bit odpowiadający za wejście audio którego chcesz użyć i od niego uzależnić wyjście mikrokontrolera sterujące przekaźnikiem od zasilania. Z instrukcji odczytuję, że przełączanie wejścia odbywa się przez podanie słowa składającego sią z bitów. Załączanie...
Witam. Potrzebuję zrobić komunikację pomiędzy dwoma attiny2313 za pomocą USART. Jeden (slave) ma wyświetlać na lcd dane otrzymane od drugiego. Założenia: Master - ma to być czterokrotny licznik (+/- do 2 bajtów) + czuwanie dla kolejnych impulsów + nadawca slave - konwersja na 5 BCD + wyświetlenie na lcd ramka - 8,0,2 Pracuję w assemblerze I od razu...
Witam, Męczę właśnie kod do sterownika serw. Na chwilę obecną jest to coś takiego: (wartościami zmiennych stan i zegar się nie przejmujcie, ostatecznie będę inne. Procek ATTiny2313, taktowany wewnętrznym zegarem 8MHz) #include <avr/io.h> #include <avr/interrupt.h> #include <avr/signal.h> // definicje SIGNAL, INTERRUPT// Następnie deklarujemy...
"jacekk232" chodzi mi o to aby mozna regulowac predkosc obrotowa za pomoca przyciskow S1 i S2 z rozdzielczoscia od 1obr/min do maksimum. Zmienilem podlaczenie przyciskow S1 i S2 aby mozna bylo wykorzystac licznik/timer procesora Attiny2313. Tylko nie bardzo wiem jak skonfigurowac timer zeby mozna bylo ustawic liczbe krokow?! Kolejny problem to jak przeslac...
Na wstępie przedstawię założenia projektu. Półelektroniczny układ zapłonowy w Galancie V6. Komputer wysyła sygnały o określonej długości do power tranzystora w aparacie zapłonowym z kopułką i cewką. Chcę się pozbyć kopułki. Komputer silnika ustala położenie wału na podstawie sygnałów TDC. Na filmie widać oba sygnały skorelowane ze sobą: https://www.youtube.com/watch?v=YrRjw07-...
Przejrzałem program i kilka rzeczy od razu sie rzuca w oczy 1. brak procedur obsługi przerwań od przepełnienia Timer0 i timer1 Po skonfigurowaniu powinneś określić do jakiej procedury program ma wskoczyć po odliczeniu przez timer np 10ms Powinno być zaraz po konfiguracji timera On Timer0 etykietka A na końcu programu etykietka: ... instrukcjie ........
Nastąpiły niewielkie postępy. Udało się uruchomić wewnętrzny timer, ale wynik bardzo odbiega od rzeczywistego. Najczęściej pokazuje wynik 0 lub jakąś liczbę jedno czy dwu cyfrową. Bardzo rzadko jest to liczba trzycyfrowa. Program teraz wygląda tak: 'Samochodowy obrotomierz 'Marcin Wiązania 'E-mail: mwiazani(at)poczta.fm $regfile = "attiny2313.dat"...
Dziękuję za szybką odpowiedz, oczywiście była to wina if'ów za co serdecznie dziękuję olelek klikam pomógł. Teraz mam jeszcze jedno pytanie a mianowicie jak najlepiej napisać kod, który zliczałby impulsy w czasie np 2 sekund, jeśli po odliczeniu tego czasu licznik wyniesie L = 3 to dioda się uruchamia, i dokładnie w drugą stronę, kolejne 3 sygnały w...
Ok, Rozumiem, ale po pierwsze: polecenie bitwait musi być aby zmierzyć szerokość impulsu. Po drugie: działało bezproblemowo gdy był tylko jeden licznik (jedno przerwanie). Program wpadał w jeden z dwóch stanów, gdy X2>1,5ms lub gdy X2<1,5ms. Co jest nie tak, co źle napisałem ?
Witam, Buduję układ do badania luminoforów, Zasada działania polega na oświetlaniu luminoforu przez określony czas, a następnie pomiarze czasu luminescencji. Światło emitowane przez luminofor wykrywane jest przez fotodiodę. Zbudowałem prosty układ na attiny2313. Napisałem prosty kod. VTB8441BH Poprawiono tytuł na bardziej streszczający problem i wprowadzono...
Witam! Mam taki oto kod: #include <avr/io.h> #include <avr/interrupt.h> #define F_CPU 10000000UL #include <util/delay.h> char znaki[10]={48, 49, 50, 51, 52, 53, 54, 55, 56, 57}; //znaki ASCII: 0 12 3 4 5 6 7 8 9 volatile uint16_t m_sekundy_wtrysk=0, m_sekundy_obr=0, licznik_z, wynik_z; //dokładność od 0.1ms do...
attiny licznik impuls licznik attiny attiny licznik
władimirec podnośnik ekran folii agregat lodówka polar podłączyć
Poduszki silnika Fiat Ducato 2012 - opis i specyfikacja Prostownik grzeje się i buczy - przyczyny i diagnostyka