Witam napisałem prosty kalkulator w c++, obliczający przerwania dla zaokrąglonych czasów, Mi się przydał do zegarka i stopera może i Wam się przyda Program napisany pod Linux, skompilowana wersja na Windowsie nie działa Pozdrawiam Brak zdjęć, proszę to poprawić, regulamin wewnętrzny pkt. 2 (joy_pl)
Cześć wydaje mi się że nie potrzebie komplikujesz sobie życie przerwaniami (przynajmniej do klawiatury) ustal jakieś główne założenie np.: podstawa to odczyt klawiatury a do przerwania daj LED8SEG niżej dodaje kod obsługi klawiatury 4x4 która zwraca 0xFF gdy żaden klawisz nie został wciśnięty korzystałem z tej procedury właśnie między innymi do kalkulatora...
Jeżeli piszesz, że ma być z obsługą myszki, to rozumiem że kalkulator musi się wyświetlić w trybie graficznym. Bardzo dawno temu dla wprawy pisałem taki program (w środowisku graficznym Turbo Pascala). Jest dosyć skomplikowany. Przede wszystkim musisz zapoznać się z obsługą przerwań wTP.
1Hz to raz na sekundę. 8MHz to osiem milionów razy na sekundę. Sekunda jest tu kluczowa. W ciągu sekundy procesor taktowany 8MHz przetworzy około 8mln instrukcji (pomijam te które wymagają dwóch taktow) no a jak podłączysz do procesora taktowanie 16MHz to odwali dwa razy tyle roboty w ciągu sekundy . Zerknąłem na twoje kody i mam kilka rad. W Bascom...
Witam, mimo zdefiniowania zmiennej F_CPU = 16000000UL w Toolchain na Atmedze 328P, po uruchomieniu symulatora zakładka procesor wskazywała prędkość taktowania na 1 MHz. Zmieniłem to ręcznie, ale problem z prędkością dalej pozostał. Ze strony http://www.et06.dk/atmega_timers/ kalkulator wyliczł mi, że dla przerwań występujących co sekundę powinienem...
Możesz zrobić to np. w taki sposób: wyjście odbiornika podłączyć poprzez opornik 1k do wejścia INT0 w procesorze. Nie podaję która to nóżka bo to zależy od procesora. Wystarczy jakiś ośmionóżkowiec. Skonfigurować przerwanie INT0: "Config Int0 = Rising" i wyznaczyć skok do procedury np. o nazwie "Pomiar": "On Int0 Pomiar". Teraz jak pojawi się wysoki...
Witam. Do pracy - raczej C++ (w Delphi sie nie bawie, ale nie neguje) z MOCNYM przygotowaniem z ASM (podstawa kazdego elektronika) A co do starego Pascala, Panowie - uwazam, ze dobry programista powinien go znac (wbrew pozorom czesto sie przydaje, chyba ze ktos nazywa siebie programista a umie w Pascalu tylko kalkulator zrobic :P - pisalem w TP wszystko...
- jak w sklepie pożyczyli ci zasilacz 500W ,to idź do nich niech ci pożyczą 600-700W jakiś lepszy i sprawdź - w googlu wpisz kalkulator mocy zasilacza i sobie oblicz jaką moc potrzebujesz ,wpisując swoje poddzespoły + dodaj zapas na podkręcanie ze 100W co do przerwań to : menedżer urządzeń w menu dajesz widok /zasoby wg. typów i naciskasz + na żądanie...
Witam Piszę procedurę wysyłającą na daną końcówkę portu 1ms impulsy w zadanych odcinkach czasu. Według wyliczeń kalkulatora dla AVR wychodzi iż przy 4HMz kwarcu, preskalerze ustawiony na 64 i początkowej wartości licznika 193 zegar generuje przerwanie w granicach 1ms. I tak mam ustawioną konfigurację: Config Timer2 = Timer , Prescale = 64 Load Timer2...
...Według mojego kalkulatora 0x70 to 0b01110000 czyli według noty st-by Twój kalkulator działa dobrze, ale Bascom-owy(v.1.11.9.3) nie bardzo :( Bascom Basic $regfile = "attiny2313.dat" Idle Powersave Powerdown Stop Efekt w ASM 2: Idle +0000002C: B785 IN R24,0x35 In from I/O location +0000002D: 7F8E ANDI R24,0xFE Logical AND with...
Po co ten rezystor. Nastepnie jak nie chcesz czekac zanim dojdzie do ifa wykorzystaj przerwanie. Jak masz duzo przyciskow, to podlacz do wszystkich switchy diody do ktoregos przerwania
Wejdż na www.elportal.pl >bascom a tam jest znakomity help w naszym rodzimym języku w którym to zagadnienie jest opisane . Polecam również kalkulator do obliczania czasu pomiędzy przerwaniami - do pobrania w/w linku. Pozdrawiam. Waldek.
Robisz prosty błąd w składni. Poczytaj w helpie o Load. Nie tak: [syntax=basic4gl]Load Timer1 = jakas_wartosc[/syntax] tylko tak: [syntax=basic4gl]Load Timer1 , jakas_wartosc[/syntax] Z tego co pamiętam można również tak. przykładowo: [syntax=basic4gl]Timer0 = 249[/syntax] co jest równoważne: [syntax=basic4gl]Load Timer0 , 6[/syntax] Ale to sobie musisz...
Ta konfiguracja poprawiła o wiele jakość odtwarzania, ale teraz tylko jak skonfigurować przerwanie aby normalnie odtwarzało .wav 8000Hz przy 8MHz procek? W tym celu podałem ci link do kalkulatora (jednego z wielu). Zaglądając do datasheet-a będziesz mógł ustawić taką częstotliwość próbkowania (wywoływania przerwania) - jaka ci się podoba. Oczywiście...
Wojtek - wchodzisz tutaj: [url=http://www.frank-zhao.com/cache/avr... z kalkulatorem 16MHZ z preskalerem 1024 oznacza że: - 1 sekunda nastąpi po 15625 cyknięciach timera - przerwanie następuje przy przepełnieniu jeśli wybierzesz OVERFLOW, ale może tez nastąpić przy COMPARE, od tego zależy jaką wartość wpiszesz do timera (czy odejmiesz...
może Timer2.initialize Nie można tak, nie ma klasy Timer2. Poza tym od razu radzę zrezygnować z biblioteki TimerOne przy używaniu więcej niż jednego timera. Zamiast tego samemu można napisać konfiguracje timerów i wektory ich przerwań. Oto kod demonstrujący jak to zrobić. Powinno migać diodą i niezależnie wysyłać napis. Twoim zadaniem jest teraz dobrać...
Próbuje nauczyć się obsługi timerów ale nawet taki prosty programik mi nie działa, co jest nie tak, jakiś błąd w kodzie czy może coś innego. Teoretycznie przerwanie powinno wystąpić co 0,26sek, x 10 (incr I) = 2,6sek powinna dioda zmienić stan na portb.4. Przerwanie liczyłem na kalkulatorze przerwań a program po wgraniu nie działa, dioda ani się nie...
Rozumiem rozumiem, nie wpadłbym na to sam :D Ogólnie to mam do zrobienia kalkulator i myślę czy rozwiązanie bez przerwania będzie wystarczające. Właściwie to mogę przecież zrobić tak, że program główny będzie cały czas sprawdzał czy jest wciśnięty przycisk, jeśli tak to wykonuje odpowiednią operację i wraca do głównego. Poza obsługą przycisków kalkulator...
Load Timer 250 pojawił się 2 razy bo pierwszy jest wykonyawny przed wejściem do pętli a następny w pętli. W tym programie jest dodatkowa zmienna Licz_8ms bo Timer0 nie może odmierzyć całej sekundy w jednym przebiegu. Przy użyciu Timer1 i odpowiedniego kwarcu można osiągnąć przerwania co 1 s. Jest to korzystne bo odmierzanie czasu jest nieco dokładniejsze....
-Można dodać linki do kalkulatorów programowalnych online. -Kalkulator dla timerów. Podajesz częstotliwość taktowania i wymagany czas między przerwaniami, uzyskujesz prescaller oraz wartość przy której timer wywołuje przerwanie (w STM nazywa się to output compare). Trzeba by było zrobić opcje dla wszystkich popularnych MCU, bo np. w AVR timery działają...
Sądzę że to niemożliwe do policzenia podczas kompilacji ponieważ w programie może być pętla, a kompilator nie wie ile razy zostanie wykonana. W moim kodzie akurat w tym miejscu nie ma pętli ale są 3 warunki czyli co najmniej 2 bliskie skoki. Czyli też nei wiadomo ile czasu się bedzie wykonywać, bo skok to 3 cykle, a brak skoku to dwa cykle. Może są...
Nie chcę grać roli lokalnego guru (zwłaszcza korzystającego z cudzych stron WWW), ale widzę następujące błędy: F_CPU nie defniuje się w kodzie -> http://mikrokontrolery.blogspot.com/2011... Twoje zmienne używane w przerwaniu powinny być volatile -> http://mikrokontrolery.blogspot.com/2011... Nie...
Dzięki "kriss68" za trafną podpowiedź. Edytowałem posta, działa poprawnie z dwoma przyciskami. Błędnie mam ustawione przerwania i to chyba "miesza". "tmf" co do przerwania/timera którego kod wcześniej umieściłem to chyba źle obliczyłem. Znalazłem kalkulator na necie AvrCalc do obliczania OCR1A ale coś zrypałem. Mam zewnętrzny kwarc 16. I chciałbym aby...
Witam a to działający sposób na bascom 8051 [syntax=vbnet]Dim R As Byte Dim E As Byte Dim Bitek As Bit Dim Crc As Word 'Dim Crcl As Byte 'Dim Crch As Byte Dim D(2) As Byte 'Dim D2 As Byte Dim Crcp As Byte Crc = &HFFFF D(1) = &H45 'bajt pierwszy do obliczen D(2) = &H64 'bajt drugi do obliczen Do For E = 1 To 2 'licznik bajtów do obliczeń 'Crcl = Low(crc)...
Rezonator kwarcowy 1MHz (fabryczny), preskaler /256. edit: ~65,5ms. Próbowałem policzyć na windowsowym kalkulatorze, zamiast na tym, co zwykle i jakieś cyrki mi wychodziły. Głupio. edit2: Aj, notacji naukowej przez ten szereg cyfr nie zauważyłem. Skąd pytanie o częstotliwość przerwań timera?
Witam. Pacjent Citroen C5 z 6FZ z roku 2003. W wyniku nieudanego procesu wymiany baterii (nie wiem na czym błąd polegał) wyskoczył mu permanentny Economic Mode, nawet w czasie pracy silnika. To już mam opanowane, ale problem tkwi w tym że Sagem S2000P wywala błąd konfiguracji P1613. Gdy wejdę w telekodowanie to wszystkie opcje są puste (kreski zamiast...
Laser widoczny ( w zakresie światła widzialnego) będzie zwracał uwagę. Ale jesli chcesz to zrealizować to polecam takie śmieszne rozwiązanie Kalkulator elektroniczny jako licznik, fotorezystor w miejscu klawisza = "Programujesz" na kalkulatorze 1,+, a = zamykane fotorezystorem będzie sumowało przerwania. Oświetlony fotorezystor będzie zwierał klawisz...
Poprzedni moj post jest juz za duzy by jeszcze cos do niego dolaczac, stad nowy post. Powoli zaczalem dumac nad ulepszeniem jedynego polskiego kalkulatora programowalnego opartego o kostki MC14009, MC14010 i MC14011. O ile MC14009 jeszcze da sie kupic dosc latwo, o tyle dwie pozostale kosci raczej sa raczej nieosiagalne. Postanowilem zatem, ze oprocz...
TCCR0=0x04; TCNT0=0x05; I w przerwaniu na początku musisz mieć: TCNT0=0x05; I zliczać równo 125 przerwań - odliczysz doładnie 1s. Tak przy okazji, nie prościej to zrobić na tajmerze 1, który jest 16 bitowy i nieco inaczej pracuje? Zresztą już w jednym Twoim wątku wstawiłem program kalkulatora do obliczania zawartości rejestrów do tajmerów i UARTa.
Polski help napisany przez Z.B. jest na stronie MCS Electronics. Napisany po polsku. Możesz to ściągnąć. MCS Electronics jest w Holandii, strona jest po angielsku a różne helpy, programy, opisane książki bywają w różnych językach. Help to jest help- nie do nauki programowania ale do pomocy przy wątpliwościach. A i tak warto cały przejrzeć. Kup sobie...
W innych językach na uC nic nie pisałem, więc nie mogę specjalnie porównywać. Sam miałem niedawno dylemat, w jakim języku pisać i ostatecznie, za radą pewnej osoby, zacząłem "uczyć się" asma. Z doświadczenia mogę powiedzieć, że asm nie jest aż taki straszny - przynajmniej jeżeli chodzi o proste aplikacje (w stylu - guzik&dioda, czy nawet sterowanie...
Witam! Jestem osobą początkującą i chciałabym prosic o pomoc przy zmianie fragmetu kodu, ponieważ nie bardzo wiem gdzie tego szukać w datasheet. Obecnie mam coś takiego: [syntax=c] void Init_Timer() // Inicjalizacja przerwania Timera (co pół sekundy dla 8MHz wewnętrznego) { TCCR1B |= (1<<WGM12)|(1<<CS11)|(1<&... // set prescaler...
Początkowo multipleks miałem zbudowany na switch case, ale obecnie jest na if'ach. I wygląda tak: Ta sama historia co z klawiszami, wystarczy mądrze w [syntax=c]SendSpi ( pgm_read_byte (&CYFRY[CYFRA3]) );[/syntax] dodać zmienną licznik np [syntax=c]SendSpi ( pgm_read_byte (&CYFRY[CYFRA3+licznik<<2]) );[/syntax] Kolejna brzydka rzecz,...
Pisałem ostatnio zegar na attiny2313 również popędzany z 8Mhz. Ponieważ musiałem ograniczyć się do 8bitowego licznika wykorzystałem: prescaller 64, zliczanie do 250 w trybie z maksymalną wartością licznik w rejestrze OCRxx i generowanie przerwania przy przepełnieniu. Otrzymałem generowanie przerwania z częstotliwością 500Hz. Teraz tylko programowy podział...
Mam pytanko: jak prawidłowo podłączyć klawiaturę ze stykami węglowymi (jak w kalkulatorach) pod mikrokontroler? Czy ustawić 1 na wejściu i zwierać nim do masy, czy dać zero i łączyć z zasilaniem? Stosować jakiś opornik? Proszę o jakąś poradę bo do tej pory stosowałem tylko przyciski w postaci mikrostyków. Może jakiś schemacik z wyzwalaniem przerwania...
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...
(at)arturheise Dziękuję :) Nie od razu zaskoczyłem, patrząc na te schematy, ale tak, wszystko się zgadza. To było to. Przewód zmienia po drodze kolor, przy akumulatorze jest kremowo-żółty wpadający lekko w brąz, a przy BSI jest zielony wpadający w lekko szary odcień. (Musiałem ogarnąć, że BSI to cała "deska" z kostkami i bezpiecznikami nad pedałami,...
Witam serdecznie forumowiczów. Od dłuższego czasu nie miałem do czynienia z AVR. Ostatnio zaszła potrzeba wykonania pewnego urządzenia. Do tego celu zaprzęgnąłem Timer1 ustawiony w tryb CTC. W efekcie miało być przerwanie generowane co 1s. Niestety generuje się o wiele rzadziej. Co robię nie tak? OCR1A = 0x7A11; TCCR1A |= (1<< WGM12);...
Powiedzmy że dla szukanych czasów 0.9 - 20ms najmniejszym "krokiem" regulacji będzie 0.08ms. Wtedy konfigurujesz Timer0 do pracy z preskalerem 64 i otrzymujesz 8MHz/64 = 125kHz czemu odpowiada czas 8us. Teraz wpisując do timera wartość początkową = 246 otrzymujesz 256-246=10 a zatem przerwanie od Timer0 zgłaszane będzie co 10x0.008=0.08ms. W obsłudze...
A jaki $crystal wewnętrzny ma tiny13? Mozna dać prawie dowolny aby tylko w przerwaniu ustawić odpowiednią wartość licznika aby przerwanie było co ok. 1ms. Ściągnij sobie jakiś kalkulator AVR. I 4800000 wewnętrzny to chyba nie jest. A, i trochę pomyliłem się w opisie działania. Jak wciśniesz przycisk to dopóki nie skończy sekwencji nie reaguje na dalsze...
Zrob tak ustaw timer0 na tryb 16 bitow, w procedurce przerwania tajmera dodaj linie: TL0=x;TH0=y - x i y w zaleznosci od tego jaki masz kwarc tak aby na kalkulatorze wyszlo przerwanie co ok 1ms. dodaj cztery zmienne typu PWM1...PWM4 i cztery pomocnicze np. pomoc1..pomoc4 i robimy tak: w procedurze przerwania tajmera if pomoc1<>0 then incr pomoc1...
Wysłałem wiadomość z adresem ponownie. Nie wiem czemu tak się stało że poprzednia wiadomość nie dotarła. Dzięki za informację bo już myślałem że ktoś uznał że miejsce tego tekturowego grata jest na śmietniku ;-) Co do publikacji softu to sam nie wiem, projekt kalkulatora się cały czas rozwija, obecnie jest w pełni sprawny (spełnia wszystkie wymogi pełnoprawnego...
Za pewne tak będzie, ale wnioskujemy to tylko dzięki temu że było podobnie z pierwszą i drugą turą. No ale fakt faktem jeśli będzie coś innego to może znajdzie się ktoś jak ostatnio i zrobi streama na twichu i na żywo będzie rozwiązywał hahaha :D No a tak poważnie to zróbcie sobie na pendrive mase notatek, nawet i kalkulator w js czy c++, i po cichu...
(at)mpier Kolego, nie pomagasz wcale ani w tamtym ani w tym temacie. Piszesz mi w kółko to samo - jakieś ogólniki jak jest zbudowany kod w protokole NEC - ADDR, ~ADDR, CMD, ~CMD Po pierwsze w tym temacie są 2 szkice, które nie używają biblioteki IRRemote tylko dekodują kod za pomocą przerwania INT0 z pinu D2 Arduino i pomiaru czasu więc nie wiem o jakiej...
(at)kris8888 Nie... Znacznie coś większego... W telegraficznym skrócie: 32-bitowy procesor obsługujący około 150 różnych instrukcji stałoprzecinkowych, posiadający sześć trybów adresowania, dwa oddzielne stosy: użytkownika i nadzorcy, osiem rejestrów uniwersalnych, osiem rejestrów adresowych, cztery rejestry segmentowe. Trzy tryby obsługi pamięci RAM...
Przejrzyj schematy i odpowiedz na pytanie czego brakuje przy diodzie? lub przeczytaj: http://mikrokontrolery.blogspot.com/2011... Na znanym portalu aukcyjnym za ~40zł można kupić analizator stanów logicznych. Może on coś pomoże wyjaśnić co dzieje się z impulsami. ... a z Chin z darmową dostawą za około...
Nie wiem o co pytasz. Chyba wiesz jakich Timerów używasz? :D Jedyne co mi przychodzi na myśl to funkcje które używaja Timerów ale wtedy jest to wyraźnie napisane w Helpie. Na przykład Getrc5() zajmuje Timer0, DCF77 zajmuje Timer1 albo Timer3 i takie tam podobne. Wielu rzeczy po kompilacji możesz się dowiedzieć z pliku raportu (Ctrl + W albo ikonka kalkulatora)....
Witam po dłuższej przerwie. Próbowałem się dostosować do powyższych rad ale niestety nadal nie mogę otrzymać z ADC żadnego innego wyniku oprócz tego które przenoszone jest z Vref z INA333 (~100mV). Załączam schemat jak mam to wykonane oraz wartość z kalkulatora. Mój obecny tensometr podaje 1.588mV/V. Wzmocnienie na INA333 mam ustawione na 1001 (RG =100R)...
Miałem w zbiorach ten kalkulator ale zapomniałem o nim. Chyba już obczaiłem skąd mam 181 a nie 363 według niego ułożyłem sobie wzór Jeden zasadniczy blad ludzie popelniaja uzywajac Timer1 w trybie CTC do generowana fali i jednoczesnie stosuja wzory z "Fast PWM". Fakt, ze mozna w ten sposob rowniez wygenerowac fale o tychsamych paramertach, to jednak...
Nie możesz bazować na jednym tutorialu do SPI, na pewno w innych wspominał o wspólnym GND, typowo każdy sygnał jest względem GND, to podstawa i wiele wyjaśnia skoro go nie było. Nie będę wskazywał filmu bo są za ciężkostrawne, przykład do SPI trwa godzinę lekcyjną, w linku ode mnie masz 7 minut filmu, podczas którego powstaje cały model RC. Twoje filtrowanie...
wykonywanie przerwań wyłączanie przerwań kontroler przerwań
attuator zakres praca filament własny zasilacz szyna dioda
zmywarka whirpool mruga start myjka ciśnieniowa naprawa
Volkswagen Golf Plus 5: Immobilizer aktywny i niedziałające przyciski na kierownicy Wymiana czujnika temperatury paliwa Hyundai i30 1.4 CRDi