zmiana portu timera

Znaleziono około 389 wyników dla: zmiana portu timera
  • [M32] [M32][bascom] TIMER = COUNTER - niestabilna zmiana stanu portu po zliczeniu impulsów

    Uruchom przerwanie od Countera (najlepiej od porównania wartości zliczonej z ustawioną) i zmień stan portu w podprogramie obsługi przerwania lub prościej, ale mało elegancko zmień [syntax=basic4gl]If Counter1 = 100 Then ...[/syntax] na [syntax=basic4gl]If Counter1 >= 100 Then ...[/syntax] Nie tak jest to, że w chwili zliczenia setki nasz if może się...

    Mikrokontrolery AVR   02 Lis 2014 18:10 Odpowiedzi: 2    Wyświetleń: 954
  • Jak przełożyć program BASCOM z attiny2313 na AT89C2051? Timer na LED

    Poza zmianą nazwy portów będziesz musiał odpowiednio skonfigurować obsługę timera bo z pewnością on jest wykorzystany do liczenia czasu i obsługi wyświetlacza led .

    Mikrokontrolery   15 Maj 2011 19:08 Odpowiedzi: 6    Wyświetleń: 1455
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • Zliczanie impulsów z czujników w PIC16F84A - jak to zrobić w C?

    W PICach rozne przerwania wywoluja jedna funkcje w ktorej musisz sprawdzic zrodlo wywolania przerwania czyli sprawdzic np flage czy timer sie przekrecil lub czy nastapila zmiana na porcie B. Powinno to wygladac tak: void interrupt() { if ( T0IF == 1 ) // czy timer sie przekrecil ? { if( T0IE == 1 ) // czy jest wlaczone...

    Mikrokontrolery   06 Cze 2007 21:18 Odpowiedzi: 19    Wyświetleń: 3243
  • REKLAMA
  • DS18B20 na delay_ms, wyświetlacz na timerze nie działa

    Wiem że zaraz mi się oberwie od innych ale na szybko to pokombinuj z wartością OCR0 - zwiększ ją np do 150 , po drugie możesz przełączyć na inny preskaler mniejszy niż 256. Lecz nie spodziewał bym się wielkiego efektu. Aby otrzymać pożądany efekt musisz zmienić plik ds18b20.c i zamiast wyłączać i włączać przerwania w funkcji temperatura musisz je włączać...

    Mikrokontrolery AVR   20 Wrz 2011 21:28 Odpowiedzi: 54    Wyświetleń: 5505
  • [C][ATmega8]Zmiana sekwencji programu button switch

    Przerwanie od INT0 powinno aktywować przerwania od timera, które co 50ms będą zmieniać stan portu c: INT0: - blokuj przerwania INT0 - licznik sekwencji na portc = 0 - aktywuj przerwanie timera INT TIMERA: - switch (licznik sekwencji) ..... w ostatnik case czy default: 1) blokuj przerwania timera 2) kasuj flagę INT0 3) włącz przerwania int0

    Mikrokontrolery AVR   01 Paź 2019 17:57 Odpowiedzi: 26    Wyświetleń: 1425
  • REKLAMA
  • Atmega8 Bascom - Jak zliczać impulsy z 6 fotorezystorów?

    Co zrealizować? Programowe zliczanie impulsów? Ustawiasz timer tak, żeby generował przerwanie co 100 us, sprawdzasz stan portu, robisz xor z poprzednim stanem i testujesz, które bity są ustawione - ustawiony, znaczy zaszła zmiana stanu, czyli inkrementujesz odpowiednią zmienną.

    Mikrokontrolery Początkujący   28 Wrz 2013 15:13 Odpowiedzi: 7    Wyświetleń: 2517
  • [STM32] Jak zsynchronizować PWM na pinach tim10 i GPIO z tim1?

    Myrek1: DMA wyzwalasz timerem, nie zmianą stanu portu Tim9 nie ma możliwości wyzwalania, o czym już pisałem 2 razy, więc nic z tego (uprzedzam, że zmiana timera nie wchodzi w grę z różnych przyczyn). A jeśli chodzi o DMA, to tak jak pisałem chyba nie ma dostępu do BB.

    Mikrokontrolery ARM   03 Wrz 2018 20:07 Odpowiedzi: 9    Wyświetleń: 744
  • Interwały czasowe. Pętla główna do loop, zmiana stanu portu.

    Taki spsoob z czasem jest oczywisty jednak nie chodzilo mi o zwolnienie czasu pracy petli glowqnej tylko w trakcje jej pracy aby cos wykonywala co jakis czas i teraz juz to wlasnie zrealizowalem na timerach :]

    Mikrokontrolery   29 Mar 2005 11:26 Odpowiedzi: 3    Wyświetleń: 1292
  • Stroboskop z regulowanymi parametrami błysków na Atmega16

    Nadużywasz |= - tak, jak byś nie wiedział, co jest w rejestrze po resecie i bałbyś się to zmienić. Po prostu zapisz do rejestru to, ca ma tam być, np. TCCR0 = 1 << WGM01 | 1 << CS0; W ten sposób oglądając kod za pół roku będziesz wiedział dokładnie, co jest w rejestrze i nie będziesz szukał po całym programie, w którym miejscu wpisałeś który...

    Mikrokontrolery Początkujący   22 Sty 2013 08:33 Odpowiedzi: 12    Wyświetleń: 2058
  • Attiny2313 BASCOM - Zmiana licznika timer0 na timer1

    A może wyłumaczyć mi ktoś tak jaśniej niż whelpie bascoma ;) co to jest ten prescaler i co on dzieli. Może tak po kolei jak twój program widnieje: 1. Jeżeli PORTB jest przeznaczony do obsługi LCD to nie konfiguruj go w ogóle w stylu jaki podałeś w pierwszym poście. Config Portb = &B11111111 : Portb = &B11111111 ===> źle!!! Może to powodowac zakłócenia...

    Mikrokontrolery AVR   11 Lut 2015 22:00 Odpowiedzi: 8    Wyświetleń: 1422
  • REKLAMA
  • [ATMEGA128] ATMEGA128: Jak opóźnić i zanegować sygnał PWM na innym pinie?

    Opóźnienie - zatrzymanie timera na określoną ilość cyklów zegara. Zanegowanie - zmiana wartości w rejestrze porównywania(chyba OCRx). Zamiast 10 dajesz 255-10=245. Wystawić na innym wyjściu - zmienić timer. Pomyliłeś pojęcia myśląc, że układ sprzętowego PWM steruje na rejestrze PORTx. Takie rozwiązanie nie pozwalało by użytkownikowi na korzystanie z...

    Mikrokontrolery AVR   16 Lut 2009 08:26 Odpowiedzi: 2    Wyświetleń: 1440
  • Atm16,Bascom. Jak zrealizować kilkakrotną zmianę stanu portu

    Więc pozostało zamiast waitów uruchomić następny timer.

    Mikrokontrolery   20 Lis 2009 12:18 Odpowiedzi: 76    Wyświetleń: 6369
  • szukam programó2 do AVR - ster.silnika krokowego, wyl.średniej liczb

    Jaki konkretnie procesor? ATMEL to dość ogólnie napisane :) Wysłanie sekwencji 0 na port B? Co to znaczy? Czy przy starcie wartość wysyłąna na port B to ff i co jakiś czas jest dekrementowana aż do wartości 0? Klawisze podłączone są do jakiego portu? D? Całego programu ci nie napiszę ale coś spróbuje pomóc. Dodano po 7 Treść zadania ;Silnik krokowy...

    Mikrokontrolery   25 Sty 2005 07:44 Odpowiedzi: 2    Wyświetleń: 1536
  • [AVR] - dwa przebiegi kwadratowe o niezależnych częstotliwościach

    Czy może jest jakieś oczywiste rozwiązanie, które zrobi to czego oczekuję na atmedze328, tylko go nie dostrzegam? Tak, zwiekszyc długość timera software'owym licznikiem, przy takich częstotliwościach możesz zmieniać stany na portach programowo, w przerwaniu timera, jeśli nie przeszkadza ci związany z tym jitter. Prawdopodobnie że dało by się użyć hardware'owego...

    Mikrokontrolery AVR   05 Sty 2015 19:51 Odpowiedzi: 10    Wyświetleń: 888
  • RFID - kontrola dostępu - zmiana sposobu otwierania drzwi.

    Nie umiem arduino i zrobiłem na rejestrach dla UNO z megą 328/328p. Powinno działać. Dla mega wystarczy zmienić nazwy rejestrów w funkcjach startujących i zatrzymujących timer. Obsługa opóźnienia zrealizowana na timerze pierwszym. [syntax=c]#include <avr/interrupt.h> volatile int timer_cnt=0; // tutaj definiujesz co po jakim czasie przekaznik...

    Arduino   19 Wrz 2017 00:26 Odpowiedzi: 6    Wyświetleń: 1428
  • [AVR] [bascom] Uzywanie jednego pinu IO do switcha i LED.

    Witam sprawdź ten kod co prawda są inne numery portów i inny procek ale jak zmienisz powinno działać. Problem jest jeden w momencie jak naciskasz przycisk i zmieniasz końcówkę na WYJŚCIE to stan tego pinu Musi być (0) Niski , żeby nie zrobić zwarcia. '$sim $regfile = "attiny2313.dat" $crystal = 11059200 $baud = 9600 enable interrupts 'włącz...

    Mikrokontrolery AVR   03 Gru 2009 22:28 Odpowiedzi: 19    Wyświetleń: 4286
  • [delphi] Jak napisać warunek w Delphi do obsługi przycisku BitBtn1 i Timer1?

    Będzie ciężko to zrobić :( Najprostsza możliwość, to włączanie i wyłączanie timer-a, przyciśnięciem tego samego Buttona. Rozumiem To zadam pytanie inaczej Chcę wysyłać zmienną o wartości od 0 od 255 + $13 "Enter" jako string na COM port i wypisywać wartość odebraną na "Panel1" chcę by jeden Button jak trzymamy , zwiększał wartość zmiennej co 250ms...

    Programowanie Początkujący   11 Kwi 2011 10:23 Odpowiedzi: 19    Wyświetleń: 2813
  • Świąteczna choinka LED by BYRRT :)

    niestety mój programik to jednokanałowy PWM. Generalnie zasada działania jest taka: Wartosc wypelnienia wpisywana jest do rejestru R3. W moim przypadku odbywa się to w konfiguracji wstepnej ukladow mikroprocka. Jenak umieszczajac w petli glownej fragment kodu powodujacy inkrementację lub dekrementację R3 w reakcji na dzialanie uzytkownika (wcisniecie...

    DIY Konstrukcje   12 Gru 2007 18:54 Odpowiedzi: 30    Wyświetleń: 18418
  • Jak zrealizować opóźnienia między instrukcjami w języku C?

    Zacznij od tego: http://www.nongnu.org/avr-libc/user-manu... Oczywiście jeśli ma to być AVR. W main trzeba skonfigurować rejestry timera-w każdym z procesorów są to nieco inne rejestry- ale dość podobne. W tych rejestrach ustawiasz prescaler, tryb pracy timera- jest ich sporo- zacznij od najprostrzego- i zezwolenie na obsługę...

    Mikrokontrolery   31 Lip 2010 10:37 Odpowiedzi: 4    Wyświetleń: 3087
  • Xmega Xplained A1 - Jaka jest częstotliwość pracy zegara?

    Pod ten drugi procek podpięte jest wyjście USART z XMEGA, dzięki czemu masz je widoczne w systemie jako wirtualny port szeregowy. W ten sposób możesz łatwo komunikować się z XMEGA za pomocą USART. Co do zmiany bitów portów IO - w XMEGA masz rejestry SET, CLR i TGL związane z portem, jeden ustawia bity, drugi kasuje, a trzeci zmienia na przeciwne. Dzięki...

    Mikrokontrolery Początkujący   30 Wrz 2014 21:57 Odpowiedzi: 6    Wyświetleń: 1845
  • Jak ustawić Timer T0 w ATtiny13 do odmierzania 1s i generowania przerwania?

    Na początku zrobiłem to co już umiem...póki co do testów ustawiłem przerwanie od zmiany stanu wejsciowego. Działa i z każdą zmiana portu wejsciowego licznik się ikrementuje. Ok. Jednkaże taka kwestia...Timer 0 w ogóle niezlicza...obserwuję w Debugerze rejestr TCNT0 i w nim nic się niedzieje... Ustawiłem tryb CCC, tak jak podpowiedział kolega michalko12...doczytałem...

    Mikrokontrolery   27 Gru 2007 14:59 Odpowiedzi: 30    Wyświetleń: 4286
  • Attiny2313, AVRStudio6 - Zmiana kodu obsługi wyświetlacza LED.

    Rozpisałeś i zmieniłeś obsługę wspólnych elektrod, a co z segmentami, które tworzą obrazy cyfr? Też trzeba wszystko zanegować. Gołym okiem widać, że obsługa wyświetlacza jest napisana fatalnie i z błędami - bardzo długi i nieczytelny kod, odświeżanie na opóźnieniach, zamiast w przerwaniu timera. Jak masz podłączony ten wyświetlacz? Które linie portów...

    Mikrokontrolery AVR   10 Lut 2013 22:34 Odpowiedzi: 4    Wyświetleń: 1737
  • [VB] Jak ustawić timer w milisekundach w Visual Basic?

    Zależy jakie odcinki czasu chcesz odliczać i z jaką dokładnością. Ogólnie system Windows nie nadaje do odmierzania dokładnych odcinków czasu rzędu kilku ms i mniej. Wynika to z występowania w systemie wielu procesów, które są cyklicznie przełączane. Kiedyś pisałem bibliotekę do programowania mikrokontrolerów poprzez port LPT i tam do odmierzania krótkich...

    Programowanie Początkujący   17 Lis 2013 15:04 Odpowiedzi: 6    Wyświetleń: 1497
  • Jak zbudować 8-kanałowy obrotomierz na Atmel 90S2313 w Bascom?

    biezacy= port(we) zmiana= bie & poprzedni //bit w zmiana =1 kiedy na wej było 0 a teraz jest 1 poprzedni=not biezacy for i=1 to 8 ....if zmiana>127 ........okres[i]= timer - timers[i] ........timers[i]= timer ....end ....zmiana= zmiana*2 end timer to odpowiednio długi i szybki metronom timers pomocnicza tablica a w okres[] mamy, no okres ;-)

    Mikrokontrolery   08 Wrz 2004 09:26 Odpowiedzi: 7    Wyświetleń: 2277
  • STM32F334 DISCO - włączenie przerwania generowanego przez timer

    Rejestr TIM->SR nie reaguje na zapis jedynek. Zapis zera kasuje znacznik. Wykonanie operacji logicznej kasuje wybrany znacznik i wszystkie znaczniki, które zostały ustawione przez sprzęt po odczycie rejestru SR i przed jego zapisem, czyli w ogólnym przypadku spowoduje skasowania znacznika przerwania bez zauważenia, że był on ustawiony. Zmiana stanu...

    Mikrokontrolery ARM   11 Lis 2018 00:23 Odpowiedzi: 17    Wyświetleń: 696
  • Jak wygenerować dwa przebiegi odwrócone w fazie na Atmega8?

    Witam! Nie mam takiego doświadczenia jak inni doradzający na tym forum, ale ja bym to rozwiązał tak: W obsłudze przerwania timera if(PORTC==1){PORTC=2;}... Oczywiście nie będzie to na portach OC1x, ale może zmiana tego jest niewielkim problemem. Pozdrawiam

    Mikrokontrolery AVR   23 Sty 2009 00:16 Odpowiedzi: 12    Wyświetleń: 2011
  • [ATmega64] [ATmega64][C] Zawieszanie programu przy odczycie zmiennej w przerwaniu TIMER0

    Witam! Chciałem wykorzystać timer0 do dokładnego odmierzania czasu, jednak coś powoduje zawieszenie całego programu. Dzieje się tak gdy próbuję odczytać wartość zmiennej w obsłudze przerwania lub w pętli głównej programu. Przerwania od timera są na pewno obsługiwane ponieważ działa zmiana stanu portu w obsłudze przerwania. Kod wygląda następująco: //ZMIENNE...

    Mikrokontrolery AVR   26 Gru 2009 02:52 Odpowiedzi: 9    Wyświetleń: 4079
  • Jak obsługiwać przerwania TMR0 w PIC16F84A w asemblerze?

    Witam :) Czy ktos programuje moze w asemblerze i moze podpowiedziec w jaki sposob obslugiwac przerwania od TMR0. Probowalem zrobic prosty timer (po zalaczeniu zasilania liczy sekundy) z wyswietlaczem LCD korzystajac z przerwan od timera. Niestety nigdy nie udalo mi sie osiagnac takiego efektu, ktory sobie zalozylem. Zmiana wartosci poczatkowych dla...

    Mikrokontrolery   14 Cze 2004 13:36 Odpowiedzi: 6    Wyświetleń: 1134
  • Pytania o Atmega8/12: stabilność zegara, rejestry timera, nauka C?

    Co do nazewnictwa to są pewne rozbieżności ,ale warto sie ich nauczyć np zamiast akumulatora masz 32 rejestry od R0 do R31 w tym te od 16-31 z możliwością wpisywania zmiennej jako wartości (ldi r16,0x12 ) Zmiana w portach też niewielka miałeś np P1 tu masz PA doszedł rejestr DDRA który odpowiada za kierunek portu we/wy. Za to rozkazy nasz wykonywane...

    Mikrokontrolery   02 Cze 2008 00:15 Odpowiedzi: 21    Wyświetleń: 2412
  • Jak zaprogramować generator na ATMega16a z joystickiem do zmiany częstotliwości?

    moze pomogłoby połaczenie kilku programowanych równolegle liczników i na tej podstawie (przy odpowiedniej częstotliwości zegara) programować go wartością przy której liczniki zgłaszałyby przerwanie (przeniesienia albo pożyczki w zależności w którą stronę by liczył) wówczas może by można było mówić o nieco płynniejszej regulacji częstotliwości. Tylko...

    Mikrokontrolery AVR   28 Cze 2010 21:58 Odpowiedzi: 22    Wyświetleń: 5061
  • Enkoder z mikrokontrolerem ATtiny - jak przeprogramować

    Co ty opowiadasz... Mamy enkoder, który generuje max kilka impulsów na sekundę i to ma być problem? No właśnie zależy od enkodera. Dlatego zapytałem się w pierwszym moim poście. Ja kiedyś trafiłem na taki enkoder z jakiejś wieży albo wzmacniacza, że miał bardzo dużo impulsów na obrót. To miało chyba symulować 'analogowosc'. Jak zrobiłem odczytując...

    Mikrokontrolery   19 Wrz 2023 20:59 Odpowiedzi: 16    Wyświetleń: 423
  • Zmiana pinu LCD z D.2 na B.2 przy użyciu RC5 na ATmega8 - czy to możliwe?

    Chciałem pobawić się z RC5. W helpie bascoma podane jest że odbiornik musi być podłączony do pinu "Config Rc5 = Pind.2" ... wszystko gitara tylko na porcie d.2 pracuje końcówka "E" od wyświetlacza LCD. Pytanie czy moge zmienić podłączenie tej końcówki LCD na inny port np b.2? Bascom nie pokazuje wtedy błędu ale czy wyświetlacz LCD podczas pracy nie...

    Mikrokontrolery   30 Kwi 2007 12:46 Odpowiedzi: 2    Wyświetleń: 1070
  • Jak odczytywać wszystkie impulsy z enkodera 500 imp/obr przez port LPT?

    LPT jet dośc powolny jeśli chodzi o odczyt impulsów, sprawdza się przy przesyłaniu pakietów bajtowych - prawdopodobnie "przegapia" sporo z tych impulsów. Do tego jeśli aplikacja "nie wyrabia" to będzie kolejna porcja impulsów ominięta, prawdopodobnie korzystasz z API które wprowadza kolejne opóźnienia. Oparcie się na timerze (kontrolce odliczająej czas...

    Automatyka Przemysłowa   17 Sie 2014 18:47 Odpowiedzi: 8    Wyświetleń: 1932
  • [ATTiny 2313V] Jak zasymulować sekundę na ATTiny 2313V bez zewnętrznego kwarcu?

    ok, próbowałem odpalić timer0 i wielkie nico mi z tego wyszło :) Może ktoś znajdzie błąd w kodzie. Sprawdzałem pod symulatorem AVR Simulator i w ogóle zegar nie startuje. #include <avr/io.h> #include <avr/interrupt.h> #define TIMER0_INIT0x00 unsigned char flag; int main(void) { DDRB = 0x04; //PIN 2 portu B na output TCNT0 =...

    Mikrokontrolery   21 Lip 2009 12:04 Odpowiedzi: 5    Wyświetleń: 2320
  • ATtiny15 - zewnętrzne przerwanie na INT0 (PB2) po 6 zmianach stanu

    Witam Napisałem poniższy prosty program który po 6 zmianach stanu na nóżce int0 (PB2) wykonuje przerwanie. include "tn15def.inc" .def acc = r16 ;nadanie rejestrowi r16 nazwy symbolicznej .def licz1 = r20 .def licz2 = r21 .def licz3 = r22 .org 0x00 rjmp pocz .org 0x06 rjmp timer0 .org 0x0B ; -- POCZĄTKOWE USTAWIENIA SPRZĘTOWE -- pocz: ldi...

    Mikrokontrolery   26 Lut 2008 14:00 Odpowiedzi: 4    Wyświetleń: 1293
  • Jak uzyskać precyzyjne przerwanie 1 kHz na ATmega8 przy 16 MHz?

    Albert: dość mocno mijasz się z prawdą. Niektóre uC z rdzeniami Cortex mają sprzętowy mechanizm gwarantujący czas odpowiedzi na przerwanie, który umożliwia redukcję drżenia (jitter) przerwania o najwyższym priotrytecie do zera również wtedy, kiedy mamy w systemie inne przerwania. Jeśli użyjesz tego mechanizmu, to sam decydujesz jawnie o czasie od przerwaia...

    Mikrokontrolery AVR   26 Cze 2016 16:44 Odpowiedzi: 32    Wyświetleń: 2823
  • [Attiny2313] [Attiny2313][C] PWM - Opóźnienie reakcji na zmianę sygnału na pinach 4 i 5 PB

    Oto kod dot. sterowania PWM. Jak łatwo zauwazyc ma on zmieniać wartość timera w zależności o wejścia na pinach 4 i 5 portu B. Programik działa ale mam co do niego pytanie. Dlaczego zmiana obrotów czasami następuje natychmiast po podlaczeniu masy do jednego z pinow a czasem trzeba odczekac dosc znaczny okres czasu (ok.3 sek)? Czy jest to zależne od czestotliwosci...

    Mikrokontrolery AVR   11 Lis 2008 16:31 Odpowiedzi: 4    Wyświetleń: 1413
  • [STM32] - Jak uzyskać 1MHz na pinie przy zegarze 72MHz?

    Tu też nie trzeba nic robić w przerwaniach - wystarczy zaprogramować timer. Jeśli trzeby wygenerować określoną liczbę impulsów - trzeba odliczyć je w przerwaniu timera i po kolejnym przerwaniu wyłączyć timer albo ustawić wypełnienie na 0. Dokladnie nie pamietam jak to bylo w lpc (2148) ale bylo prosciej, moze dlatego ze rdzen 'prostszy'. Na pwm juz...

    Mikrokontrolery ARM   12 Kwi 2014 14:31 Odpowiedzi: 39    Wyświetleń: 5367
  • Jak przerobić kod w j. ASM aby działał tak jak chcę

    Mam wrażenie, że PORTB ^= (255)|(170); i PORTD ^= (255)|(170); działają tak samo, jakbyś użył PORTB ^= 255; PORTD ^= 255; - kompilator i tak zrobi to samo. To powinno dać równo 50%, zmiana sposobu odmierzania 128 sekund może co najwyżej pomóc ustawić równo 128 s, a nie np. coś w stylu 128 000 032 us. Dla 50% istotne jest, że _te same_ instrukcje odmierzają...

    Początkujący Elektronicy   25 Sie 2021 22:38 Odpowiedzi: 48    Wyświetleń: 1836
  • Jak zaprojektować stoper na AT89C51 z wyświetlaniem binarnym?

    a wiec tak zakładamy że przy up pracuje kwarc 12MHz. jeśli nie wymagasz dużej dokładnośći to timer ustawiasz w tryb 1 ( 16 bit ) tak aby generował przerwanie np: co 10ms; przy 12MHz cykl wynośi 1us czyli przerwanie będzie co 10000 cykli ( 10000 us = 10ms ). wartość po której następuje przerwanie to zmiana z 65535 na 0000. czyli do rejestrów licznika...

    Początkujący Elektronicy   23 Maj 2006 18:37 Odpowiedzi: 6    Wyświetleń: 1164
  • [ATMega] ATMega8 – jak sterować wieloma diodami RGB przy ograniczonej liczbie kanałów PWM?

    12-kanałowy PWM realizowany programowo praktycznie nie zabiera czasu. Zrób tablicę o typie uint16_t, każdy bit to jeden kanał PWM - będzie ich więc 16, ale tak prościej. Interesuje cię powiedzmy 6-bitowy PWM (chyba wystarczy?), więc robisz tablicę 64-elementową. W przerwaniu timera inkrementujesz zmienną będącą indeksem do tablicy i na dwa porty wywalasz...

    Mikrokontrolery AVR   29 Paź 2010 08:55 Odpowiedzi: 20    Wyświetleń: 6166
  • AT89C2051 - [ASM] Przeniesienie programu na STC11F04, poprawa timerow, pwm, uart

    Pytanie jak w temacie czy da się przenieść program z at89c2051 na stc11f04. stc11f04 jest no niby chińska podróbka at89c4051. Trochę pisałem w bascomie na atmegi, a asemblera i tych procesorów nie ogarniam. Łatwiej mi przerobić gotowca niż napisać program do obsługi pwm i dmx dla tego procesora(nie umiem napisać dla tego procka obsługi portu pod dmxa)....

    Mikrokontrolery   25 Gru 2013 01:12 Odpowiedzi: 9    Wyświetleń: 3987
  • Atmega 8 - Przekazywanie wartości zmiennych z przerwania do programu

    Pomysł wydaje się być dobry, ale nie do końca. Teraz reakcja na kręcenie potencjometrem jest widoczna na oscyloskopie w postaci zmiany częstotliwości, także podczas przytrzymywania przycisku, ale obecnie nie da się sterować klawiszami. Tzn, teoretycznie się da, ale czas reakcji od naciśnięcia przycisku sw na wykonanie instrukcji wewnątrz pętli trwa...

    Mikrokontrolery AVR   31 Sie 2012 18:22 Odpowiedzi: 4    Wyświetleń: 2181
  • Jak poprawnie wysterować serwo za pomocą AT90S2313 i timerów?

    hej probuję wysterować serwo przy pomocy dwóch timerow, napisałem coś takiego ale dostaję tylko jakieś drgania serwa mogłby ktoś mi rozjaśnić co robię źle dzięki #include <io.h> #include <signal.h> #definetau10x83 //tau1 = 131, 1ms #definetau20x06 //tau2 = 6 , 2ms #definetau2064910 // 20 ms long licznik=0; unsigned int tau15=0x45; //tau15...

    Mikrokontrolery   03 Gru 2005 20:44 Odpowiedzi: 18    Wyświetleń: 1755
  • [ATMEGA8] [ATMEGA8][C] Reakcja na przycisk, zliczanie i zmiana stanu bitu po 1 sek.

    Witam. Staram się zrobić program który będzie reagował na wyzwalanie poprzez przycisk (w przyszłości klaskanie). Wejście, do którego podłączony jest przycisk to Port C na wejściu 0x01. Cały problem jest następujący: - gdy na wejściu podany jest sygnał, zmienna Licznik zwiększa się o jeden. - gdy zmienna jest równa 1, to następuje włączenie timera z...

    Mikrokontrolery AVR   04 Maj 2010 22:30 Odpowiedzi: 14    Wyświetleń: 2875
  • Jak działają przerwania? Problem z kodem.

    Wkradła się pewna nieścisłość. Racja: nie "gdzie" tylko "kiedy" występuje przerwanie. Niestety to nadal nie rozwiązuje mojego problemu, dlatego że rozumiem przerwanie tak jak to opisałeś a mimo wszystko zachowuje się to wszystko nieco inaczej... Jeszcze raz: [syntax=c] //definicja LED1 (do którego pinu podłączony LED1) #define LED1 PC0 //definicja LED2...

    Mikrokontrolery AVR   17 Lis 2016 18:53 Odpowiedzi: 34    Wyświetleń: 2241
  • [attiny13][C++][atmel studio6] - wieszanie sie atmel studio podczas debugowania

    Witam, Piszę program na ATtiny13A, aby działał jak licznik mod 4 (piny PB0 i PB1), zmiana wyzwalana zboczem opadającym na PB3. Rozwiązanie opiera się na przerwaniach. PCINT3 to obsługa "przycisku" -> naciśnięcie powoduje uruchomienie timera (ustawienie adekwatnego przerwania). Obsługa przerwania timera zwiększa licznik przepełnień - po ok2 sek wyłącza...

    Mikrokontrolery Początkujący   29 Sty 2015 19:02 Odpowiedzi: 11    Wyświetleń: 1761
  • Jak zmieniać obrazki co sekundę w pętli w Borland C++Builder 6?

    No to moze tak. Robisz tak jak pisalem wczesniej, ta czesc bedzie odpowiadala za zmiane obrazka. Teraz wstawiasz drugi komponent TTimer i w nim robisz "Wyslij dane port". W OnClick przycisku "GO" uruchamiasz sobie oba Timery (jeden od obrazka drugi od wysylania danych czyli Timer1->Enabled=true; Timer2->Enabled=true; Musisz pamietac tylko aby...

    Programowanie   23 Mar 2006 07:47 Odpowiedzi: 13    Wyświetleń: 3054
  • Przepisanie programu z arduino pro mini na atmega 16A

    Jeżeli to zainstaluję to wystarczy, że zmienię numery pinów czy muszę coś jeszcze zrobić? Dodano po 2 Ok, zainstalowałem to rozszerzenie i po modyfikacjach kod wygląda tak(w komentarzach napisałem zmiany): [syntax=c]int timer = 800; //zwiększenie czasu int U18 = 10; //zmiana pinu int State = 0; int lastState = 0; void setup() { for (int Pin = 26; Pin...

    Arduino   02 Kwi 2016 11:32 Odpowiedzi: 6    Wyświetleń: 1326
  • [C] Sterowanie częstotliwością migania diody przyciskami.

    [syntax=csharp]#include <avr/io.h> #include <avr/interrupt.h> //definicja LED1 (do którego pinu podłączony LED1) #define LED1 PB0 //definicja LED2 (do którego pinu podłączony LED2) #define LED2 PB1 //definicja początkowej wartości timera #define timer_start 6 //zmienna pomocnicza-licznik używana w przerwaniu volatile uint8_t cnt=0; void...

    Mikrokontrolery Początkujący   07 Cze 2015 15:50 Odpowiedzi: 8    Wyświetleń: 2685
  • ATmega tryb CTC (sprzetowe generowanie sygnalu na OC2)

    Twój program - po poprawkach - działa :) #include <avr/io.h> #define F_CPU 16000000UL #define _0_0125ms ( ( 0.0125 * ( F_CPU / 8000UL ) ) - 1 ) //polowa okresu 40kHz int main(void) { DDRB|=(1<<3); // ustawienie portu PB3 (OC2) jako wyjscie TCCR2|=(1<<CS21)|(1<...

    Mikrokontrolery   15 Mar 2012 13:03 Odpowiedzi: 13    Wyświetleń: 5515
  • [C] Atmega32: Przerwania licznika, diody co sekundę, preskaler 256, TIMER1_OVF_vect

    Co tutaj przekombinowałem? Atmega32. Tryb Licznika. Celem było zapalenie i gaszenie diod co sekundę. Preskaler = 256. Przerwanie tak wyliczone aby wykonywało się co sekundę. Timer 16bitowy [syntax=c] #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> ISR (TIMER1_OVF_vect) { PORTC ^= ~0xFF; //zmiana stanu portu C...

    Mikrokontrolery Początkujący   27 Gru 2012 16:24 Odpowiedzi: 17    Wyświetleń: 1740
  • [Atmega32] Jak skonfigurować dwa 8-bitowe timery w Atmega32 do różnych zadań?

    Dzień dobry! Mam taki o to problem, przerzuciłem notę ale nie mogę jakoś ogarnąć jak uruchomić drugi timer 8 bitowy, przykładowo: Proszę pamiętać o używaniu znaczników syntax . Opcja Listing kodu . - arnoldziq

    Mikrokontrolery AVR   06 Lis 2011 00:27 Odpowiedzi: 1    Wyświetleń: 1229
  • [ATMEGA8][avr-gcc] - Różne poziomy jasności diody LED -PWM

    jeśli flaga przepełnienia licznika jest ustawiona wynik należy odpowiednio skorygować nio właśnie ale jak ... bo prawdopodobnie na tym etapie się wyłożyłem :/ gdyż przy maksymalnym wychyleniu potencjometru tuż przed końcem zakresu zapala się led1 gasząc diodę 3 :P ale mimo tego małymi krokami udało się uruchomić timer, przerwanie INT1 wyzwalane zboczem...

    Mikrokontrolery AVR   02 Mar 2018 20:10 Odpowiedzi: 12    Wyświetleń: 4212
  • Atmega8 - Timer1 zmiana współczynnika wypełnienia

    Możecie rzucić okiem na ten kod: [syntax=c] include <stdlib.h> #include <avr/io.h> #include <util/delay.h> # include <math.h> #include <avr/interrupt.h> #include "HD44780.h" int a; ISR(TIMER1_OVF_vect) { PORTB|=(1<<PB1); // podciągnięcie do VCC } int main(void) { TCCR1A |= (1<<COM1A1)|(1<<WGM11)|(1<...

    Mikrokontrolery AVR   24 Lut 2014 18:26 Odpowiedzi: 18    Wyświetleń: 2370
  • Jak przerobić stare pianino na klawiaturę MIDI z piezoelektrykami?

    Po konsultacji z kilkoma znajomymi doszliśmy do wniosku że prościej będzie wykorzystać timery a nie ADC do czytania dynamiki. Pomysł jest taki, żeby w momencie oderwania młoteczka (czyli wciśnięcia klawisza) załączać timer, a w momencie uderzenia w piezo podłączonego do portu (uderzenie wymusi krótką zmianę stanu na porcie - już przetestowane) wyłączać...

    Projektowanie Układów   09 Kwi 2010 15:22 Odpowiedzi: 27    Wyświetleń: 8093
  • ATXMega32d4 - Zmiana zegara taktującego - co jest źle w kodzie?

    1. Uruchomiłem timer z przerwaniem i liczę nim do przepełnienia, czy włączam zmianę czy nie częstotliwość generowana na pinie portu jest ta sama - pomiar oscyloskopem. 2. No tak, to sprawdzę. 3. Czyli jeśli sygnał zegarowy pobieram z zegara RC2MHz to mam taktowanie 2MHz z PLL a jeśli taktuję RC32MHz to z PLL mam 8MHz? W każdym razie sygnał przepełnienia...

    Mikrokontrolery Początkujący   12 Wrz 2014 10:03 Odpowiedzi: 8    Wyświetleń: 1086
  • Kod PWM dla serwomechanizmów na ATmega8 - jak działa i jak go zrozumieć?

    Napisałem program do obsługi dwóch serw taki: [syntax=c]#define F_CPU 1000000 //częstotliowość pracy uP #include <avr/io.h> #include <inttypes.h> //biblioteka zmiennych int main (void) { DDRD=0xFF; //port d jako wyjscia DDRB=0x00; //port b jako wejscie TCCR1B=0x01; // bez preskalera (1mhz) int servo[24]={1000,2000,3000,4000,0,0,0,0,0...

    Mikrokontrolery   09 Sty 2012 11:32 Odpowiedzi: 10    Wyświetleń: 1927
  • [AVR-GCC] Jak podzielić impulsy 40kHz na paczki po 5 z odstępami 100Hz?

    Napisałem program który generuje impulsy (40kHz) na porcie za pomocą timera0. Mam pytanie czy i w jaki sposób moża zrobić żeby ciąg impulsów podzielić na "paczki" po 5 impulsów z odstępami ok. 100Hz. Jezeli bym zaprzągł do tego licznik 16bitowy to by mi sie przepełniał co 122Hz i odpalał timer 0 na jakiś czas i to by mi w sumie wystarczało ale nie mam...

    Mikrokontrolery   27 Gru 2005 10:31 Odpowiedzi: 3    Wyświetleń: 2287
  • Błędy kompilacji w WinAVR: niezadeklarowany TCCR0 w funkcji main

    Atmega88 nie ma takich w ogole rejestrow: TIMSK, TCCR0! Ten kod jest poprawny. #include <avr/io.h> #include <avr/interrupt.h> #define TIMER0_INIT 175 char i; // procedura obsługi przerwania od timera TC0 SIGNAL (SIG_OVERFLOW0) { TCNT0 = TIMER0_INIT; // załadowanie do licznika wartosci poczštkowej PORTB ^= (1<<PB1);...

    Mikrokontrolery   03 Sty 2007 05:58 Odpowiedzi: 3    Wyświetleń: 3339
  • [Atmega32] Program w C - dioda miga co 2s zamiast co 60s, dlaczego?

    A czy mógł bym prosić o fragment kodu abym mógł to jakoś załapać bo nie wiem jak to za bardzo to napisać? Dostałeś przecież ode mnie link, a w nim dokładnie opisany przykład: http://www.elektroda.pl/rtvforum/viewtop... Czytam to co jest tam napisane, analizuje i kombinuje na kodzie ale nie mam pojęcia jak za pomocą Timera zdefiniować...

    Mikrokontrolery AVR   22 Cze 2012 15:04 Odpowiedzi: 32    Wyświetleń: 4129
  • [C dowolny procesor - preferowany ARM]Algorytm przycisku

    masz tutaj moj kod, ktory robi dokladnie to co chcesz... ogolnie sprawa jest prostsza niz sie moze wydawac /* +—————R...

    Mikrokontrolery   07 Wrz 2008 15:10 Odpowiedzi: 2    Wyświetleń: 2302
  • Wybór języka do programowania AVR dla początkującego z TurboPascalem

    Żeby pisać na mikrokontrolery w C++ trzeba znać ten język bardzo dobrze. Niestety mikrokontroler to nie PC i nie "wybacza" nieprzemyślanych konstrukcji, które kończą się alokacją ogromnych ilości pamięci. Tak konkretniej to chodzi mi o nieprzemyślane używanie klas. C na mikrokontrolery jest znacznie łatwiejszy. A mógłby ktoś napisać w C++ i w C program...

    Programowanie   24 Kwi 2008 17:03 Odpowiedzi: 24    Wyświetleń: 2994
  • Brak efektów w trybie debugowania MPLAB ICD2, program działa po odłączeniu

    Hejka. Jest w configuration bits Power Up Timer = Disabled. Zmiana wersji MPLABa 7.50 lub 7.40 (nic nie pomaga). Kurcze strasznie to dziwne :( Może to wina samego kompilatora Hi-Tech, bo nie zapuszczałem projektu pisząc program w asmie (nie jestem na tyle biegły w tym) może koś ma jakieś któtkie źródło w .asm na 18F4520 ?? np. zapalające diody na porcie...

    Mikrokontrolery   05 Kwi 2007 16:18 Odpowiedzi: 5    Wyświetleń: 1326
  • ATMEGA328P - HC-sr04: Timer nie zmienia wartości przy zmianie odległości

    Zrobiłem kod z przerwaniem i również nie działa tak jak powinien [syntax=c]#include <avr/io.h> #include <util/delay.h> #include<stdio.h> #include<hd44780.c> #include<avr/interrupt.h> #define TRIG PC1 #define ECHO PD2 volatile int echo_flag =0; volatile int time =0; char ekran[6]; int main(){ DDRD = 0x00; // ustawienie portu...

    Mikrokontrolery AVR   10 Kwi 2017 04:56 Odpowiedzi: 3    Wyświetleń: 930
  • PWM - Gdzie znaleźć prawdziwe informacje - nie problemy

    hardwarowo nie da się. Możesz natomiast użyć licznika do generowania sygnału PWM: np na przerwaniu od Timera ustawić ustawianie stanu zerowego na porcie, a w pętli głównej programu ustawić warunek porównujący stan licznika z jakąś stałą i jako warunek wyjsciowy dać ustawianie portu w stan wysoki. Jest to jednak dość karkołomne rozwiązanie, w którym...

    Robotyka Modelarstwo i CNC   16 Lis 2008 19:38 Odpowiedzi: 6    Wyświetleń: 2280
  • ST62T65 zamienik procesora na kompatybylny z arduino.

    Były to programy na Windowsa Podn Windę nie odwołujesz się bezpośrednio do układów peryferyjnych. Robisz to za pośrednictwem sterowników. Otwierając COM nie interesuje Cie czy to VCOM na USB, port na PCI itp. Nie konfigurujesz rejestrów układu, np SPI czy I2C. Inaczej było pod DOS. Myślę że dał bym radę zaprogramować zamiennik. Kwestia czasu. Arduino...

    Arduino   23 Maj 2018 11:10 Odpowiedzi: 7    Wyświetleń: 531
  • Jak przyśpieszyć (zmodyfikować) program w na ATMega32

    Witam...Dlaczego przerwania z Timera0 generowane nie sa zgodnie z dokumentacja? chciałbym zrealizować generator sterujący pinami portu PC0-7...w taki sposób aby wartości z tabeli --- unsigned char GenTab DDRC = 0xFF; // port C jako wyjscie 11111111 CLI(); //disable all interrupts TIMSK = 0x01; //timer interrupt sources TCCR0 = 0x00; //stop OCR0...

    Mikrokontrolery AVR   02 Lut 2010 08:00 Odpowiedzi: 6    Wyświetleń: 2006
  • Zegar w Delphi. Zmiana czasu zadziałania operacji.

    Ja bym to zrobił jak wcześniej napisałem, ale można też powiedzmy jak ty chcesz (poniżej program pisany z palca w Builder C++, w Delphi będzie podobnie): Timer1->Interval = 200 ; int zadanie = 0 ; Timer1->Enabled = true ; i w zdarzeniu obsługi Timera: { zadanie++ switch(zadanie){ case 1: //wykonaj polecenie nr1 break; case 2: //wykonaj polecenie nr2...

    Programowanie   04 Gru 2006 13:39 Odpowiedzi: 5    Wyświetleń: 2886
  • Tworzenie timera w VB do sterowania portem LPT (8 linii) - jak to zrobić?

    Witam. 1. Umieść na formie dwie kontrolki TIMER, 1-przycisk, 1-Label 2. Przedstawiam przykladowego proga do obslugi Timerow na zmiane napis na Labelu zmienia sie w zaleznosci od tego ktory timer liczy 3. Duzo inormacji na temat VB znajdziesz na www.vb4all.canpol.pl Option Explicit ' wlaczenie kontroli wystepowania zmiennych Private Sub Command1_Click()...

    Mikrokontrolery   29 Paź 2003 14:25 Odpowiedzi: 2    Wyświetleń: 1958
  • Konfiguracja Timer2 w trybie RTC na ATmega8L z kwarcem zegarkowym

    Tego nie widziałem. Znalazłem za to informację że dotyczy to rezonatora pracującego jako generator wytwarzający główny sygnał zegarowy: http://obrazki.elektroda.net/9_123515576... A po drugie, akurat w ATMega8 jest błąd w krzemie i te wewnętrzne kondensatory nie działają (tzn. FuseBit ich nie włącza). Użycie rezonatora jako źródła sygnału dla...

    Mikrokontrolery AVR   21 Lut 2009 15:29 Odpowiedzi: 11    Wyświetleń: 4083
  • Jak skonfigurować przerwania w ATmega8 w języku C z użyciem GCC?

    pubus, wkleiłem Twój przykład i program się skompilował, a więc sukces. Ale niestety tu nastąpił koniec radości. Jak wspomniałem chcę uruchomić timer, który przy przepełnieniu wywoła obsługę przerwania. Aby było najprościej jak się da niech jedyną instrukcją w tej obsłudze będzie zmiana stanu całego portu C czyli: PORTC != PORTC; Do któregoś tam pinu...

    Mikrokontrolery   13 Lis 2010 16:13 Odpowiedzi: 48    Wyświetleń: 19441
  • [Atmega16] [Atmega16][asm] Konfiguracja INT0 na zbocze opadające - brak wyzwalania

    Nie wiem, jak chciałeś osiągnąć detekcję zmiany kierunku odczytując stan jednego pinu. Żeby to osiągnąć, potrzebujesz co najmniej 2 bity w kodzie Greya, czyli na wejście należy podać sekwencję 00, 01, 11, 10, 00, 01 itd. Wtedy zmiana kodu z 01 na 00, z 11 na 01, z 10 na 11, z 00 na 10 będzie oznaczać np. lewe obroty, a zmiana kodu z 00 na 01, z 01 na...

    Mikrokontrolery AVR   20 Lis 2010 15:05 Odpowiedzi: 15    Wyświetleń: 3388
  • Jak uzyskać precyzyjne opóźnienia w GFA Basic na różnych komputerach?

    A po kilku zamyśleniach urodził się program do pomiaru częstotliwości CPU u PC: (chociaż prawie za każdym razem podaje troszeczkę inne wartości, ale z małym błędem) W tym Basicu też jest zmienna TIMER, zwiększa się co 1ms, ale dopiero teraz zwróciłem uwagę na ten szczegół: PROCEDURE wait(ms) INC ms DO qq = TIMER DO LOOP UNTIL TIMER > qq DEC ms LOOP...

    Software serwis   14 Lip 2003 15:58 Odpowiedzi: 9    Wyświetleń: 2188
  • Bascom AVR - Jak niezależnie odmierzać czasy dla wielu przycisków?

    Mam sprawdzać stan bieżący czy ilość przepełnień? To już zależy od Ciebie i od tego jak szybko chcesz puścić timer (z jakim preskalerem). Ale przy takiej precyzji wystarczy liczyć przepełnienia w procedurze obsługi przerwania. Jak wskazano wcześniej najrozsądniej jest użyć 3 zmiennych inkrementując wartość każdej z nich po przepełnieniu. Wciśnięcie...

    Mikrokontrolery   11 Wrz 2007 15:06 Odpowiedzi: 8    Wyświetleń: 1814
  • W pełni sprzętowa realizacja protokołu WS2812B dla XMEGA

    https://obrazki.elektroda.pl/3227491500_... https://filmy.elektroda.pl/98_1514068986... Właściwie mamy już Święta i świąteczny konkurs w DIY. A w nim sporo konstrukcji opartych na programowalnych diodach WS2812B. Stąd też, aby ułatwić innym realizację świątecznych projektów oświetleniowych, postanowiłem podzielić się rozwiązaniem...

    DIY Konstrukcje   14 Sty 2019 22:40 Odpowiedzi: 56    Wyświetleń: 14655
  • [STM32] Dlaczego PWM na TIM1 nie zmienia się przy modyfikacji CCRx?

    Mój problem jest taki, że PWM na TIM1 nie reaguje na zmianę CCRx w trakcie działania programu. Wszystko pozostałe działa poprawnie (nawet zmiana CCRx w trakcie działania dla TIM3 i TIM4). Kod od inicjalizacji: void timer_pwm_setup() { //struktury konfiguracyjne TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; TIM_OCInitTypeDef TIM_OCInitStructure;...

    Mikrokontrolery ARM   15 Lis 2012 11:44 Odpowiedzi: 2    Wyświetleń: 2613
  • Jak zrealizować programowy PWM na AtTiny2313 dla serwomechanizmów?

    Hmmm. teoretycznie masz racje... ale przy zalozeniu, ze sterujemy jednym serwem.... bo teraz, jak zechcesz aby dlugosc wysokiego impulsu na pinie 1 wynosila 0.7, a na pinie drugim 1 (nie mowiac juz o pozostaluch pinach) to sie sprawa komplikuje... Masz racje, dla jednego serwa, bedzie dzialac, ale niezaleznego sterowania kilkoma serwami raczej na tym...

    Mikrokontrolery   21 Gru 2004 12:45 Odpowiedzi: 10    Wyświetleń: 5520
  • Arduino Uno - brak komunikacji z monitorem portu po konfiguracji rejestru TCCR0B

    Takie proste, a takie skuteczne, problem rozwiązany, podziękowanie poszło. Dodano po 59 Problem rozwiązany przez zmianę timera.

    Mikrokontrolery AVR   08 Paź 2020 09:43 Odpowiedzi: 3    Wyświetleń: 420
  • Dekodowanie sygnału IR RC5 na Atmega8 - różnice względem Atmega32?

    Witam. Na zlecenie piszę pewien projekt, którego częścią jest dekodowanie sygnału z pilota Rc5. Z początku zrobiłem to na mojej eksperymentalnej płytce z układem ATmega32, gdzie dolutowałem czujnik w powietrzu. Ustawiłem procka na wewnętrzny rezonator 4 MHz, gdyż taki udało mi się znaleźć na internecie działający przykład dekodowania Rc5, no i ruszyło,...

    Mikrokontrolery AVR   30 Gru 2011 14:49 Odpowiedzi: 10    Wyświetleń: 5910
  • 8051: Konwersja liczby 14-bitowej z dwóch rejestrów na cyfry dziesiętne w rejestrach

    8051 ma 0kB (zero) pamięci programu :P A poważnie, to ma tyle, ile się do niego podłączy pamięci zewnętrznej, max. 64kB To już archaizm - pierwsze procki z rodziny '51 Wtedy słowo Flash kojarzyło się z niejakim Gordonem Flashem :d Przed 8051 były jeszcze 8031, a przed nimi był chaos :D A chcesz te wyjścia wykorzystać jak wyjścia normalnego licznika?...

    Programowanie   30 Mar 2005 21:52 Odpowiedzi: 19    Wyświetleń: 2771
  • Nowy projekt i problem z zgarkim, zliczaniem impulsów z portu czyli zmiany biegó

    Bardziej się boje zakłóceń na taśmie do wyświetlacza :/ Dodano po 21 Jak dobrze ogarniam temat Pcf8583 to należy go podpiąć pod uC przez I2C, potem go skonfigurować w programie i poprzez wyście INT podłączone do timera w uC zliczać impulsy. Można by też podpiąć INT z Pcf8583 do np. INT0 w uC i też zliczać impulsy. Dodano po 1 Problem ze zliczaniem biegów...

    Mikrokontrolery AVR   13 Sty 2012 20:36 Odpowiedzi: 85    Wyświetleń: 8157
  • Jak ustawić dwa piny jednocześnie w GCC dla AT90S2313?

    Witam. Pisze programi obsługi sonara na AT90S2313 w C. Do generowania sygnalu 40Khz uzywam wstawki assemblerowej by miec pewnosc co do czasow generowanego przebiegu. Na portach PORTB.0 i PORTB.1 w każdym półokresie sygnalu 40KHz pojawiaja sie przeciwne stany, które sterują układem MAX232 pracującym w nietypowej roli wzmacniacza sygnału. ... Chodzi...

    Mikrokontrolery   29 Sty 2006 13:27 Odpowiedzi: 3    Wyświetleń: 936
  • ATMega8 – konfiguracja dwóch kwarców: osobny dla uC i osobny dla Timer2

    Jeśli potrzebujesz krótkich czasów to wystarczy timer 8-mio bitowy do dłuższych czasów 16-to bitowy. No zgadza się - małe wartości można przechowywać na 8-bitach. Taktowanie masz z tego co sobie ustawisz jako źródło zegara w fusebitach. Może to być kwarc podpięty pod uC, zewnętrzny generator podpięty pod uC, wbudowany generator RC. Im mniejsze czasy...

    Mikrokontrolery   27 Paź 2007 10:29 Odpowiedzi: 4    Wyświetleń: 1697
  • Jak przyspieszyć reakcję na zmianę prędkości silnika krokowego Atmega8?

    Witam, proszę o pomoc, mam sprawę z którą walczę już długo i nie mogę zrozumieć czemu tak jest. Steruję silnikiem krokowym - zmianę stanów taktuję timerem - cewki silnika podpięte są pod porty C0-3. Podłączyłem 2 przyciski pod port PB0-1 - chcę mini zmieniać prędkość silniczka wpisując do rejestru OCR1A wymaganą wartość do przerwania. Problem jest w...

    Mikrokontrolery AVR   21 Gru 2010 16:46 Odpowiedzi: 3    Wyświetleń: 1173
  • Atmega8 zegarek – implementacja funkcji wait i odliczanie sekund na LCD

    mam jeszce jeden problem, według kodu z linku dondu #include <avr/io.h> #include <avr/interrupt.h> //definicja LED1 (do którego pinu podłączony LED1) #define LED1 PB0 //definicja LED2 (do którego pinu podłączony LED2) #define LED2 PB1 //definicja KLAWISZ (do którego pinu podłączony KLAWISZ) #define KLAWISZ PC0 //definicja...

    Mikrokontrolery AVR   23 Mar 2012 12:56 Odpowiedzi: 7    Wyświetleń: 3359
  • Jak napisać program na mikrokontroler 8051 do sterowania światłami na przejściu?

    Wykorzystując mikrokontroler 8051 napisz program sterujący światłami na przejściu dla pieszych w stanie spoczynku świeci światło zielone dla samochodu czyli czerwone dla pieszych, po przeciśnięciu przycisku przez pieszego po 3 sec następuje zmiana świateł: zapala sie zielone dla pieszego a czerwone dla samochodu. Stan ten trwa przez 15 sec. po tym czasie...

    Mikrokontrolery   01 Mar 2008 14:37 Odpowiedzi: 10    Wyświetleń: 1499
  • Jak zrozumieć kod dekodujący sygnał RC5 w AVR? Analiza i wyjaśnienia

    Założyłem ten temat, bo chciałbym (i prawdę mówiąc muszę) zrozumieć program znaleziony, nawet chyba u Was na forum, dekodujący sygnał rc5. Historia jest typowa: "projekt, którego nie chcę, a który muszę." Dzięki z góry za pomoc. Nie besztajcie mnie zbyt mocno. Wspomniany kod: #include <avr/io.h> #include <avr/interrupt.h> #include <avr/signal.h>...

    Mikrokontrolery AVR   10 Sty 2011 14:33 Odpowiedzi: 1    Wyświetleń: 1556
  • [ATTiny13] [ATTiny13][C] Konfiguracja Timera0 - brak reakcji na przerwanie

    a zapis rej = (rej & NegMaska) | BityUstawiane zabezpiecza przed problemami i dziwnym zachowaniem. A mister mirekk36 niech dokładniej zerknie co robi ta mała poprawka którą klepnąłem zanim zacznie cokolwiek udowadniać. Ja wiem dokładnie co robi ta maska, tyle, że jeszcze raz powiem, że w przypadku ustawiania rejestru konfiguracyjnego to jest takie...

    Mikrokontrolery AVR   23 Wrz 2010 07:05 Odpowiedzi: 30    Wyświetleń: 12153
  • [avr] Jak wygenerować sygnał prostokątny 1-1000Hz na ATmega32A 8MHz w trybie CTC?

    Myslalem, ze to kwestia konfiguracji: [syntax=c] #include <avr/io.h> #include <util/delay.h> #include "LCD/lcd44780.h" #include <stdlib.h> // konwersja z int na char, funkcja itoa #include <avr/interrupt.h> #define CLK (1<<PD5)//wyjscie PWM //########### I/O ########### DDRD |= (1<<CLK_LED) ; PORTD |= (1<<CLK_LED);...

    Mikrokontrolery AVR   08 Sty 2014 12:28 Odpowiedzi: 15    Wyświetleń: 1683
  • AVRStudio, PonyProg, ATmega32 - problem z Timerem T0 i T1, zmiana czasu nie działa

    Faktycznie zapomniałem dodać kilku rzeczy. Pomyłka z rejestrem - wipsałem rejestr z 2313. Chciałem zobaczyć czy dobrze wpisuje wartości do rejestrów (TCNT1H i TCNT1L dla T1 i TCNT0 dla T0) - czy odmierzany czas zgadza się z czasem który zadałem. Napisałem prosty program który jeśli nadejdzie przerwanie od przepełnienia timera zmienia stan na wyjściu...

    Mikrokontrolery   19 Paź 2006 07:48 Odpowiedzi: 5    Wyświetleń: 1498
  • Zabezpieczenie pompy przed zbyt długą pracą (np. z braku wody)

    https://obrazki.elektroda.pl/6848039300_... Ogranicznik czasu pracy to dość banalne urządzenie włączane pomiędzy mechanicznym włącznikiem ciśnieniowym a pompą, mające ochronić ją przed przegrzaniem (skutkiem suchobiegu). Zasada działania: 1. Po włączeniu zasilania przekaźnik jest włączony i zaczyna się odliczanie 100 sekund (w normalnej...

    DIY Konstrukcje   28 Lip 2024 09:11 Odpowiedzi: 25    Wyświetleń: 2400
  • Atmega8 - Jak zredukować opóźnienia przy obsłudze przycisków i czujników DS18B20?

    Na podstawie informacji zawartych tutaj: http://diycenter.acid19.linuxpl.com/read... oraz zgodnie z sugestiami w poprzednich wypowiedziach zrobiłem sobie w celu przetestowania taki oto program: [syntax=c] #include <avr/io.h> #include <avr/interrupt.h> int time=0, flaga=0; int main (void) { DDRB |= (1 << 0); //...

    Mikrokontrolery   17 Gru 2013 22:06 Odpowiedzi: 12    Wyświetleń: 1824
  • Arduino + DS1307 nie utrzymuje czasu po odłączeniu zasilania - jakieś sugestie?

    Proszę jeszcze o kilka porad jak można sterować zmianą godziny za pomocą przycisków (rozwiązanie programowe) Najprościej, jak w zegarkach samochodowych. Jeden przycisk zwiększa godziny, drugi minuty. Zmodyfikowany czas zapisywany jest w DS1307. Dodano po 2 Sekcja sterowania wyświetlaczami odpięta od VCC i wszystkie cztery tranzystory podpięte przez...

    Arduino   18 Mar 2018 18:33 Odpowiedzi: 31    Wyświetleń: 2535
  • Atmega32A - Moduł L298 - Sterowanie silnikiem DC - PWM

    utaj poprawiłbym kolegę R-MIK bo wydaje mi się, że nie zrozumieliśmy się w kwestii aktualizacji wartości wypełnienia - aktualizując wartość w przerwaniu od porównania możemy dość do sytuacji, kiedy nowa wpisywana wartość będzie większa od aktualnej a to spowoduje kilkukrotne negowanie portu i zaburzy pracę całego przebiegu. Rejestr OCR jest buforowany....

    Mikrokontrolery AVR   02 Sty 2018 23:56 Odpowiedzi: 22    Wyświetleń: 1521
  • Zmiana wartości na porcie P1 co sekundę w asm dla AT89S4051

    Piszę z głowy, więc mogą wystąpić błędy :) Zapalanie diod przy założeniu, pojawieniu się na pinie stanu niskiego. Mruganie diody na P1.2: asembler język maszynowy procesora filetype:pdf Tutaj masz przetestowany program w kompilatorze :) aktualnie nie ma jak sprawdzić na 51-ce: [syntax=asm] sekunda equ 20h org 0h ljmp start org 0Bh przerwanieT0: mov...

    Mikrokontrolery   02 Gru 2013 17:06 Odpowiedzi: 3    Wyświetleń: 849
  • Niestabilne działanie programu obsługującego diody na kole z kontaktronem

    Witajcie Jednak poproszę o radę. Poprawiłem kod dodając na samym początku obsługi przerwania GICR &= ~(1<<INT1); Ale program dalej źle działa. Nie ma już problemu drgania styku, ale układ zachowuje się tak jakby w chwili ponownego załączenia GICR czyli po iluś tam ms : if(LP_timer0 > 50) GICR |= (1<<INT1); // (500 ms) wchodził od...

    Mikrokontrolery AVR   02 Kwi 2012 08:05 Odpowiedzi: 23    Wyświetleń: 3149
  • MSP430 - Jak dobierać sygnały zegarowe i ich źródła?

    Błędy są wszędzie. Pierwszy - to użycie przerwania zmiany portu zamiast sprawdzania stanu przycisków w przerwaniu timera. Drugi - to użycie delay w przerwaniu. Trzeci - to źle napisane if else w przerwaniu timera. Czwarty - użycie własnego bool zamiast standardowego _Bool. To tak na początek.

    Mikrokontrolery Pozostałe   10 Kwi 2013 12:28 Odpowiedzi: 19    Wyświetleń: 4329
  • sterowanie diod 20 led- kod atmega16 przenieś na atmega8

    Witam. Szukam pomocy w napisaniu kodu do wydaje mi się prostego układu, chodzi o sterowanie 20 diodami led. ............ Czy dało by się zmodyfikować całość żeby działało by to na atmega8? Pozdrawiam. W zasadzie to ta modyfikacja sprowadzi sie praktycznie do napisania nowego programu - w całości. Możesz wykorzystac tylko pewne elementy z programu dla...

    Mikrokontrolery AVR   21 Paź 2012 09:26 Odpowiedzi: 36    Wyświetleń: 11099
  • ATmega8 - PWM RGB - dla wartości PWM=0 dioda wciąż świeci język C

    "i" jest typu int. Dzięki za kod, ale nie jestem biegły w assemblerze... [syntax=c] int main () { int i = 0; //wartości RED //TIMER 1 - No prescaling, PWM 8 bit Phase Corrected TCCR1A = 0b10101001; // czerwony (1<<COM1A1)|(0<<COM1A0)|(1&l... TCCR1B...

    Mikrokontrolery AVR   19 Sie 2012 21:29 Odpowiedzi: 26    Wyświetleń: 6582