przerwanie usart

Znaleziono około 1806 wyników dla: przerwanie usart
  • [STM32F10x][USART][IT] - Zapętlone przerwanie USART1_IRQHandler() na nadawaniu

    Wyłącz przerwanie od TXE skoro nie chcesz wysyłać. 4\/3!!

    Mikrokontrolery ARM   05 Sie 2013 20:51 Odpowiedzi: 8    Wyświetleń: 1980
  • [ATmega128A]Przerwanie od USART przy zasilaniu 3,3V

    Nic dziwnego, zmieniasz taktowanie procesora, zmieniasz także baudrate na UART. Dla zewnętrznego kwarcu CKOPT=1, CKSEL=111X, 1 znaczy niezaprogramowany, X - dowolna wartość.

    Mikrokontrolery AVR   03 Wrz 2010 10:05 Odpowiedzi: 14    Wyświetleń: 1972
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • [ATMEGA32] Jak ustawić priorytety przerwań USART i Timera w ATMEGA32?

    Na jakiej podstawie twierdzisz, że problemem są priorytety przerwań? Przerwania występują na tyle sporadycznie, że nie ma tutaj miejsca na problemy. Jeśli wysyłany jest znak '2', to porównanie (i==2) jest błędne TCCR2 = 1<<CS00 | 1<<CS02 | 0<<CS01 ; proponuję zapisać tak: TCCR2 = (1<<CS00) | (1<<CS02) |...

    Mikrokontrolery AVR   14 Maj 2009 19:15 Odpowiedzi: 4    Wyświetleń: 3118
  • REKLAMA
  • [AVR] Atmega gubi przerwania USART - jak rozwiązać problem z odbiorem danych?

    A może masz gdzieś funkcję obsługi tego przerwania? Dodano po 4 Dodam, że korzystam z programowego bufora cyklicznego, który w przerwaniach odbiera dane od UDR. Jedyne co mi przychodzi na myśl to to, że przerwanie tak szybko się wykona (odebranie danych do bufora i skasowanie flagi RXC), że część programu: while ( !(UCSRA & (1<<RXC)) ); nawet...

    Mikrokontrolery   13 Lip 2011 00:58 Odpowiedzi: 21    Wyświetleń: 5714
  • [STM32] Jak uniknąć natychmiastowego wywołania przerwania USART TXE w STM32?

    kardynalny błąd -> oczekiwanie na co, na TC==1 ? Oczekiwanie na cokolwiek w przerwaniu jest kardynalnym błędem. Przeciez w notce katalogowej zalecają poczekać po zakonczeniu transmisji na TC. Czy aby napewno piszą to w kontexcie przerwań, czy może poczekania przez wyłączeniem danego modułu peryferyjnego? Poza tym nie odpowiedziałeś na moje pytanie,...

    Mikrokontrolery ARM   27 Lis 2011 15:31 Odpowiedzi: 4    Wyświetleń: 2888
  • REKLAMA
  • Atmega8 AVRgcc - problem z przerwaniami USART i TIMERa, LED na PB1

    Ja bym napisał tak, jak w załaczeniu. Zmieniając wartość dla zmiennej Czas_led , można zmieniać czas świecenia ledki.

    Mikrokontrolery   22 Wrz 2005 08:45 Odpowiedzi: 8    Wyświetleń: 3125
  • ATMEGA 2560 czy można zmienić priorytety danych przerwań

    Zacznijmy od pytań: 1. Które bity według Ciebie ustawiłeś w TCCR2B : [syntax=c]TCCR2B = (1CS20) (1CS22); ustawienie prescalera na 1024, jeden impuls licznika to 64us TCCR2B = (1WGM22); wprowadzam timer2 w tryb CTC [/syntax] pomijając już fakt, że ten fragment się nie skompiluje. A może wszystko jest ok, tylko to problem wklejania kodu na forum? 2. Gdzie...

    Mikrokontrolery Początkujący   08 Sie 2017 20:29 Odpowiedzi: 15    Wyświetleń: 2007
  • USART obsługa przerwanie od danych nadchodzących RXC

    Hint : przesuniecia bitowe ( co_posuwamy_w_prawo>>o_ile lub co_posuwamy_w_lewo<<o_ile )... BTW Problem był również w nazwie przerwania (zamiast SIG_USART_RXC powinno być SIG_UART_RECV )

    Mikrokontrolery   26 Kwi 2006 01:46 Odpowiedzi: 11    Wyświetleń: 3632
  • REKLAMA
  • [STM32] - STM32F103 - flaga przerwania od USART RXNE

    Bit RXNEIE włącza przerwanie od dwóch flag: RXNE i ORE (overrun) - patrz tabelka USART interrupt requests . Odczyt z DR kasuje RXNE. ORE jest kasowane przez (cytat z opisu bitu ORE): "an read to the USART_SR register followed by a read to the USART_DR register".

    Mikrokontrolery ARM   18 Paź 2015 20:30 Odpowiedzi: 2    Wyświetleń: 1752
  • [STM32] Jak wyłączyć przerwanie EXTI podczas transmisji USART?

    Pisałem gdzieś jak się je włącza, na co Freddie napisał, że są funkcje w CMSIS, które z resztą na forum też już wklejałem. [syntax=c]/** * (at)brief Enable Interrupt in NVIC Interrupt Controller * * (at)param IRQn The positive number of the external interrupt to enable * * Enable a device specific interupt in the NVIC interrupt controller. * The interrupt...

    Mikrokontrolery ARM   25 Lip 2012 11:40 Odpowiedzi: 8    Wyświetleń: 4408
  • [ATMEGA 8] Jak ustawić priorytety przerwań w ATMEGA 8 z AVR-gcc przy użyciu USART?

    Kiedy leci pytanie i Atmega ma przerwanie od USART... Pokaż lepiej jak to wygląda. Handler obsługi USART. Od zboczy też by się przydał, a najlepiej cały kod.

    Mikrokontrolery Początkujący   17 Lut 2013 15:04 Odpowiedzi: 11    Wyświetleń: 3198
  • ATmega8 USART w C: Jak skonfigurować przerwanie odbioru danych?

    Nie mogę znaleźć uchwytu przerwania od USART, jest jedynie od UART i nie chce działać. O ile mi wiadomo to nie ma żadnego rozróżznienia między przerwaniem od USART a UART. Niewazne czy Uklad transmisji szeregowej pracuje synchronicznie czy asynchronicznie i tak zawsze jest to samo przerwanie generowane. A moze by tak odblokowac przerwania od odbioru...

    Mikrokontrolery   24 Maj 2007 23:22 Odpowiedzi: 2    Wyświetleń: 8280
  • REKLAMA
  • Jak zaprogramować przerwanie USART w Bascomie przy odbiorze bajtu?

    Jak zaprogramować przerwanie od pojawienia się bajtu w buforze usart.

    Mikrokontrolery   13 Wrz 2005 10:15 Odpowiedzi: 1    Wyświetleń: 1015
  • ATXMega Timer [C] przerwania - Brak przejścia do procedury przerwania

    Domyślnie Atmel Studio w czasie debugowania blokuje przerwania podczas śledzenia krok po kroku, co ma za zadanie ułatwić śledzenie funkcji. Dodatkowo przerwanie od USART wystąpi bardzo późno - dopiero po wysłaniu bajta, co może trwać nawet kilka tysięcy cykli CPU.

    Mikrokontrolery AVR   02 Lis 2014 13:43 Odpowiedzi: 4    Wyświetleń: 1251
  • atmega16a - konfiguracja przerwania RX w USART - problem z wektorem przerwań

    Build started 6.4.2014 at 00:25:04 avr-gcc -mmcu=atmega16 -Wall -gdwarf-2 -std=gnu99 -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT Proba_10.o -MF dep/Proba_10.o.d -c ../Proba_10.c avr-gcc -mmcu=atmega16 -Wl,-Map=Proba_10.map Proba_10.o -o Proba_10.elf avr-objcopy -O ihex -R .eeprom -R .fuse -R .lock -R .signature...

    Mikrokontrolery Początkujący   06 Kwi 2014 22:38 Odpowiedzi: 7    Wyświetleń: 1512
  • [STM32] USART - odbieranie danych przez przerwanie, jak wyodrębnić liczbę?

    Zacznij od opisania formatu danych. Po czym odbiorca ma poznać, że zakończono przesyłanie liczby? Tego ne napisałeś powyżej. Odbiór łatwo zrobisz w przerwaniu, pisząc obsługę przerwania w konwencji automatu. Najpierw poczytaj, co oznacza poprzednie zdanie. Potem możesz zacząć pisać automat. Potrzebne tylko dwa stany: - oczekiwanie na 'L' - skanowanie...

    Mikrokontrolery ARM   10 Kwi 2017 11:16 Odpowiedzi: 8    Wyświetleń: 2010
  • ATmega32 - USART_RXC_vect: Jak poprawnie czyścić UDR w C?

    W jednym przerwaniu USART dwa razy czytasz UDR. Za pierwszym razem zwraca ci jego wartość, ale za drugim to raczej śmieci. Kolejne czytanie UDR powinieneś zrobić dopiero przy olejnym przerwaniu - wcześniej nie zawiera on nic sensownego.

    Mikrokontrolery AVR   03 Sty 2013 16:46 Odpowiedzi: 3    Wyświetleń: 1137
  • Xmega A1 - Jak poprawnie zrealizować USART z przerwaniami?

    Po pierwsze enkoder możesz obsługiwać sprzętowo na XMEGA - w tym celu konfigurujesz event system na QDEC, a dowolny timer będzie ci zliczał impulsy i pracował jako enkoder. Co do transmisji USART - można paczki odbierać przez DMA, co jest wygodne, można to zrobić w oparciu o przerwania. W tym celu odblokowujesz przerwanie RXComplete sygnalizujące gotowy...

    Mikrokontrolery AVR   15 Gru 2014 21:18 Odpowiedzi: 9    Wyświetleń: 1848
  • [STM32][SW4STM32] Brak reakcji na przerwania EXTI i USART na STM32F411RE

    Jak widzisz na załaczonym obrazku nie masz ustawionych wektorów. Ale akurat mam coś takiego gotowego i Ci podeślę :) Zainstaluj Cube. Plik z wektorami weź stamtąd. Możesz też zaimportować projekt i wyrzucić HAL - będziesz miał przy okazji najświeższy CMSIS

    Mikrokontrolery ARM   20 Maj 2018 12:36 Odpowiedzi: 19    Wyświetleń: 1473
  • [STM32F103] Jak uruchomić przerwanie PendSV w STM32F103? Szukam przykładu dla obsługi USART

    Zgadza się - tak właśnie się to robi.

    Mikrokontrolery ARM   05 Mar 2016 21:55 Odpowiedzi: 20    Wyświetleń: 1362
  • Nazwa uchwytu w SIGNAL dla przerwania odbioru znaku w USART?

    obsłużyć wydarzenie jakim jest skonczenie odbierania znaku ? Chodzi mi to to aby program w pętli głównej robił co do niego należy, nie wiedząc kiedy ma spodziewac się znaku, jednakże cały czas byłby na to gotowy-aby go odebrać. tak na szybko algorytm: volatile char bufor[50]; volatile int ilosc_znakow; volatile char bufor_2[50]; int...

    Mikrokontrolery AVR   25 Lis 2010 12:11 Odpowiedzi: 6    Wyświetleń: 1695
  • [ATMega88/C] Sprawdzanie portu powoduje chwilowe wpisanie "1"

    Za bardzo nie jestem praktykiem w C (w asm nie muszę się zastanawiać nad winą kompilatora, jak coś nie działa to tylko z mojego powodu... :}), ale widzę, że miksujesz starą nomenklaturę nazewnictwa obsługi przerwań i nową : http://www.nongnu.org/avr-libc/user-manu... Od nieczytelnego makra _BV proponuję też odejść i używać...

    Mikrokontrolery AVR   28 Lip 2011 22:54 Odpowiedzi: 11    Wyświetleń: 2047
  • [STM32F4] STM32F429 - USART2 nie działa na płytce 32F429IDISCOVERY

    A gdzie masz włączanie przerwań od USART? Dodano po 7 Powinno być coś w stylu: NVIC_EnableIRQ(USART2_IRQn);

    Mikrokontrolery ARM   31 Gru 2014 23:33 Odpowiedzi: 7    Wyświetleń: 1803
  • Jak napisać program obsługujący USART w ATMega8 w języku ASM?

    co do odbioru masz 2 mozliwosci albo czekac az cos przyjdzie albo uzyc przerwania ".org 0x00B ;USART, RXC USART, Rx Complete" w momencie odebrania jednego bajta nastapi przerwanie. w obsludze przerwania nalezy odczytac np "in r16, UDR" a nastepnie mozemy sobie zapisac r16 np do ramu i "reti". jak bedziesz mial problem pisz na gg jestem praktycznie caly...

    Mikrokontrolery   02 Sie 2006 22:23 Odpowiedzi: 2    Wyświetleń: 1533
  • STM32, IRQ, Interrupt, USART - Przerwanie - kilka USARTów STM32

    Problem leży zapewne w odbiorze strumieni danych, a nie w ich nadawaniu - tam prawdopodobnie następuje gubienie danych. Twoje przerwanie DMa jest wzorcem, jak nie należy używać przerwań. Zamiast sprawdzać gdzieś indziej znacznik Datalink_DataSent_Flag możesz przecież równie dobrze sprawdzać znacznik sprzętowy zakończenia transmisji DMA - przerwanie...

    Mikrokontrolery ARM   30 Sty 2015 11:11 Odpowiedzi: 14    Wyświetleń: 5679
  • [C, AVR, Atmega48] Wywołanie przerwania TX przy nadawaniu kolejnych znaków z Atmegi48

    Przerwania nadawcze są dwa - TX Complete oraz UDRE empty. Przerwanie "USART_TX_vect" to przerwanie Complete generowane flagą TXCIE lub (w wypadku wyłączonego przerwania) testowane flagą TXC. Natomiast flaga UDRE w powiązaniu z flaga UDRIE generuje przerwanie Empty.

    Mikrokontrolery Początkujący   23 Wrz 2022 18:48 Odpowiedzi: 14    Wyświetleń: 780
  • WS2812 na choince w przerwaniach od USART - AVR Mega

    https://obrazki.elektroda.pl/7496355900_... Niby nic szczególnego, 120 ledów uC Mega324 taktowana 18,4321MHz. Schemat jest bardzo prosty, więc sobie go daruję (procek, kwarc, bramka NOT), nietypowe jak na AVR mega jest sterowanie przez USART na przerwaniach. Poniżej istotny fragment kodu: W sumie to mogą być włączone przerwania SIGNAL...

    DIY Konkurs   09 Sty 2018 14:44 Odpowiedzi: 25    Wyświetleń: 5802
  • USART ATmega64L: Przerwania nadajnika nie działają, różne adresy wektorów?

    W twoim main brak jest na koncu petli i procesor sie resetuje. Po drugie jeli korzystasz z przerwan to musisz zdeklarowac ile bajtow jest do wyslania np. w sposob w jaki pokazalem w swoim kodzie. NAQ tym to polega wskazujesz skad wyslac dane(bufor), w jakiej ilosci i procesor zajmuje sie czyms innym np. kolejnymi obliczeniami nie martwiac sie o obsluge...

    Mikrokontrolery   09 Lut 2006 22:01 Odpowiedzi: 6    Wyświetleń: 1506
  • ATMega8 USART – ryzyko utraty danych przy odbiorze bez przerwań, jak zapobiec?

    Natomiast w sytuacji gdy zarówno cały Timer2 jak i Usart robiony jest na przerwaniach tego problemu nie ma. Po to one są :) Powodzenia w dalszych pracach.

    Mikrokontrolery AVR   02 Mar 2011 22:38 Odpowiedzi: 33    Wyświetleń: 3643
  • Przerwania USART na AtMega8 - problem z obsługą diody LED

    Witam. Temat wątku wziął się stąd, że na forum znalazłem już kilka o podobnej tematyce jednak żaden nie pomógł mi z tym zagadnieniem. Programuję na Linuksie na AtMega8. Napisałem sobie proste biblioteki do obsługi USART oraz TWI jednakże chciałbym teraz spróbować popracować z przerwaniami i tutaj jest problem. Mam taki oto kod: [syntax=c] ISR(USART_RXC_vect)...

    Mikrokontrolery   18 Kwi 2011 16:22 Odpowiedzi: 4    Wyświetleń: 1059
  • Konfiguracja przerwań USART na ATmega 328PB - zmiana wektorów ISR

    Wszędzie gdzie masz wywołanie USART_RX_vect wstawiasz USART0_RX_vect gdy chcesz używać UART0 lub USART1_RX_vect gdy używasz UART1. Analogicznie wszystkie inne przerwania i rejestry, nazwy mogą nie być tylko takie że cośtam0 lub cośtam1 bo czasami jest cośtam0cośtam, więc wrzuciłem Ci tu wszystkie. No nie ma chyba wielkiej filozofii dopisać 0 lub 1?...

    Mikrokontrolery AVR   17 Mar 2020 10:53 Odpowiedzi: 8    Wyświetleń: 1416
  • [Atmega8a][gcc] Inicjalizacja USART - przerwanie od Timera

    Dzieki za dobrą rade. Przerobiłem program tak jak powiedziałeś i w procedurze jest tylko multipleksowanie. W sumie program stał się przejrzystszy i dało się zauważyć błąd, tylko nie do końca wiem na czym on polega... pytanie pewnie banalne więc proszę o wyrozumiałość.. port D domyślnie był ustawiony jako wyjście, gdy USART nie był aktywny było ok, po...

    Mikrokontrolery   23 Sie 2012 14:23 Odpowiedzi: 3    Wyświetleń: 1512
  • Atmega16, enkoder na INT0 i RS232 19200 – błędne dane przy cyklicznym odczycie

    Rozwiązanie było proste! Wystarczyło dopisać sei(); w funkcji obsługującej przerwanie USART Ciekawe jak sprawa będzie wyglądać gdy podłącze drugi enkoder (po potrzebuje dwóch)?

    Mikrokontrolery AVR   15 Lis 2009 22:27 Odpowiedzi: 1    Wyświetleń: 2034
  • [Atmega8] [Atmega8][C] Jak poprawnie obsłużyć przerwania USART?

    Jestem początkujący w programowaniu mikrokontrolerów i mam problem z obsługą przerwań w Atmega8. Mam taki oto, bardzo prosty program znaleziony w sieci: #include <avr/io.h> #include <avr/delay.h> #include <avr/interrupt.h> #define F_CPU 1843200 #define USART_BAUDRATE 19200 #define BAUD_PRESCALE (((F_CPU / (USART_BAUDRATE...

    Mikrokontrolery AVR   10 Cze 2008 16:23 Odpowiedzi: 18    Wyświetleń: 4623
  • [atmeg8] [atmeg8][Bascom] Timer1 i USART - problem z synchronizacją w stacji meteo

    tak za bardzo przywyczaileś się do priorytetów przerwań z '51nki - i dlatego coś ciężko na razie ci załapać jak poruszać się z tym na zwykłych AVRkach. I stąd twoje kombinacje troszkę niepotrzebne albo założenia, że np przerwanie USART trwałoby kilka sekund ! ;)

    Mikrokontrolery AVR   29 Sty 2009 21:52 Odpowiedzi: 12    Wyświetleń: 2604
  • [Atmega32][C] Przerwania USART wysyłają śmieciowe dane?

    Witaj a nie masz czasem "wiszącego" wyprowadzeni rx bez włączonego wewnętrznego podciągania ? To wygląda jak by wyprowadzenie było wiszące i nigdzie nie podłączone bo bez względu na błąd prędkości jeśli zachowa taki sam stan uart nie odbierze ani jednego znaku .

    Mikrokontrolery AVR   12 Wrz 2016 07:20 Odpowiedzi: 4    Wyświetleń: 948
  • [Bascom] Problemy z komunikacją USART - brak stałej odpowiedzi, pętla danych

    Lepiej [syntax=vbnet]Print "dobra ramka " ""[/syntax] umieść poza przerwaniem.

    Mikrokontrolery   19 Mar 2019 00:36 Odpowiedzi: 14    Wyświetleń: 738
  • ATmega32 - Przerwanie timer0 nie działa z warunkiem Transmit w USART_RXC_vect

    Próbowałem ustawiłem tam np wyświetlenie częstotliwości z funkcji przelicz i działa. Z moich obserwacji i testów wynika że przed wysłanie ramki częstotliwości układ przyjmuje wszystkie dane a po odebraniu częstotliwości i wyświetleniu jej na LCD już nie przyjmuje. Dodano po 1 Kolejne spostrzeżenie - po wykonaniu metody ustaw_timer() przerwanie USART_RXC_vect...

    Mikrokontrolery AVR   04 Sty 2013 23:53 Odpowiedzi: 17    Wyświetleń: 2238
  • Odbiór danych z UARTA przez DMA- jak zrobić przerwanie po otrzymaniu znaku Cr?

    Nie wszystkie procki od ST mają to sprzętowo zrobione. Z F0 to mają STM32F0x1/STM32F0x2/STM32F0x8, podobnie jak rodzina F303. W rejestrze USART_CR2 jest pole ADD: "This bit-field gives the address of the USART node or a character code to be recognized". Oczywiście należy włączyć przerwanie od znalezionego znaku: USART_CR1_CMIE// Character match interrupt...

    Mikrokontrolery ARM   26 Lis 2018 08:52 Odpowiedzi: 3    Wyświetleń: 537
  • [mega16][asm AvrStudio] rcall przeszkadza USARTowi ?

    Witam rcall nie przeszkadza USARTowi... i całe szczęście, bo musielibyśmy wyrzucić wszystkie AVRy do kosza ;) Problem jak zwykle tkwi w programie. W procedurze obsługi przerwania USART_TXC założyłeś, że możesz włożyć do UDR kolejny bajt, bez sprawdzania, czy jest on pusty. Poniekąd jest to założenie słuszne, ale nie w Twoim programie. A problem polega...

    Mikrokontrolery AVR   05 Wrz 2008 08:09 Odpowiedzi: 5    Wyświetleń: 1521
  • [STM32F1] Koniec transmisji DMA przez USART SmartCard

    No ale skoro zrobiłeś tak: SET_BIT(USART3->CR1, 1<<7); // TXEIE ENABLE to czemu się dziwić? Przecież TXE się ustawia, bo właśnie ono powoduje wywołanie kolejnej transmisji DMA. Gdybyś w przerwaniu odczytywał flagi, to od razu byłoby to widać. Dodano po 2 Po załdaowaniu ostatniego bajtu z DR do Shift Reg przerwanie USART się wzbudza z nieznanego...

    Mikrokontrolery ARM   03 Lip 2017 08:49 Odpowiedzi: 7    Wyświetleń: 1680
  • [STM32] Konfiguracja USART - transmisja działa tylko w jedną stronę?

    Prawdopodobnie nie włączyłeś przerwania odbioru danych w USART - bit RXNEIE w rejestrze CR1. A poza tym . oczekiwanie w procedurze obsługi przerwania to nie jest dobry pomysł, a właśnie to robisz. Masz poniżej tablicę do zainicjowania USART z przerwaniem odbioru w STM32F0 - adresy rejestrów i ich zawartości - wychodzi to sporo krócej niż przy użyciu...

    Mikrokontrolery ARM   07 Lip 2013 16:42 Odpowiedzi: 18    Wyświetleń: 4083
  • [STM32][USART][DMA] - Nadawanie przez USART z wykorzystaniem DMA STM32DISCOVERY

    Pokaż cały kod związany z DMA i przerwaniami. Włączyłeś to przerwanie?

    Mikrokontrolery ARM   14 Mar 2013 07:47 Odpowiedzi: 125    Wyświetleń: 26373
  • [Atmega32][C/AVRStudio5] Transmisja asynchroniczna USART

    Tak, timer zeruje w przerwaniu RXI, ale po 400us. Jeśli wysyłam 30B, to przerwanie od USART, powinno 30 razy wyłączyć przerwanie od Timer0, bo znaki powinny przychodzić szybciej niż co 400us. W momencie, kiedy nic nie będzie nadawane, powinno zadziałać przerwanie od TIMER0.

    Mikrokontrolery AVR   21 Lis 2011 22:50 Odpowiedzi: 8    Wyświetleń: 1279
  • STM32, USART - Odbiór i wysyłanie ramek na przerwaniach

    No to masz 4-bajtowy znacznik początku ramki, w dodatku niejednoznaczny, tylko po co? Przy automacie masz zmienną - stan automatu, którą elegancko robi się jaku enum, a dalej switch zapewniający obsługę kolejnego bajtu i przejścia pomiędzy stanami. Do obsługi tego początku, jaki masz, potrzebujesz czterech stanów automatu (piąty stan to odbiór danych)...

    Mikrokontrolery ARM   01 Kwi 2013 15:58 Odpowiedzi: 12    Wyświetleń: 4374
  • atmega8 AVR-GCC - USART_UDRE_vect nie wykonuje procedury

    Szanowny kolego eleproject, dziękuję za pomoc. To strzał w 10-kę :) Okazało się, że usart otrzymywał dane, które ustawiały z jakiegoś powodu bity błędów. Ponieważ procedura w przerwaniu odbierającym dane w takim przypadku nie odczytywała danych z bufora UDR to przerwanie w nieskończoność było generowane. Z tego też powodu prawdopodobnie przerwanie nadawcze...

    Mikrokontrolery AVR   18 Paź 2012 23:03 Odpowiedzi: 3    Wyświetleń: 1767
  • [C][ATmega168][USART] jak wysłać tablicę w przerwaniu a nie stosując pooling?

    Moim zdaniem jest prostsza metoda. Tworzy się dwa indeksy i tablice buforującą. Oprogramowanie zapisuje znaki to bufora i zwiększa pierwszy indeks (umownie indeks programowy). Po takim zapisie przed wyjściem zezwala na przerwanie. Przerwanie z kolei jak wykryje, że bufor programowy jest różny od drugiego buforu (umownie bufor sprzętowy) to z aktualnie...

    Mikrokontrolery AVR   19 Kwi 2012 22:28 Odpowiedzi: 8    Wyświetleń: 1707
  • STM32F4 DISCOVERY - Komunikacja PC - USART z DMA (RS232)

    Co może być przyczyną tego, że zamiast wysyłanego "hello" odbieram w termianlu "hhhhheeeeeellllllllllllllllllllloooooo"... Dodam, że przy wyłączonym DMA nic takiego nie ma miejsca. Nie wnikam w konfigurację DMA i USART, ale logika tego fragmentu programu jest dziwna. Mam wrażenie, że funkcja wysyłająca tekst (usart_dma_str) jest wywoływana w przerwaniu...

    Mikrokontrolery ARM   24 Sie 2014 18:11 Odpowiedzi: 22    Wyświetleń: 3807
  • ATmega32 - Program nie wchodzi w obsługę przerwania TIMER0_COMP_vect

    Mnie wychodzi, że to nie jest tryb CTC tylko normalny. Po drugie na przerwanie compare trzeba zezwolić w rejestrze TIMSK - bit OCIE0 - masz < zamiast << stąd problem. Jak masz jakieś wątpliwości co do konfiguracji, to użyj symulatora AVR Studio. Można sobie w nim też ustawić tryb pracy i odczytać wartości rejestrów kontrolnych dla niego i potem...

    Mikrokontrolery AVR   30 Gru 2012 14:29 Odpowiedzi: 17    Wyświetleń: 2439
  • Nie działa przerwanie USART0_RXC_vect na Atmega162 - jak to naprawić?

    A gdzie konfiguracja DDR dla portu B?

    Mikrokontrolery AVR   05 Lut 2011 12:05 Odpowiedzi: 2    Wyświetleń: 834
  • Jak poprawić odbiór SMS z Eryka T68i przez Atmega16? UART, prędkość transmisji

    Wydaje mi się , że funkcja wysyłająca znak na LCD jest zbyt czasochłonna i poprostu gubisz część znaków wysłanych przez telefon.Spróbuj zapisać je do tablicy , a potem wyświetlić na LCD , pamiętając o pominięciu znaków o kodach < niż np. 0x20.Najpewniejszym wyjściem z sytuacji , jest jednak bufor FIFO , zaimplementowany w procedurze obsługi przerwania...

    Mikrokontrolery   06 Sty 2006 11:13 Odpowiedzi: 12    Wyświetleń: 3249
  • STM321 - Priorytety i grupowanie przerwań bez bibliotek

    BlueDraco przycisk to tylko przykład. Może być czujnik. Ok, - Timer ma ustawiony priorytet 0 (domyślnie) - USART ma ustawiony priorytet 1 - EXTI1 ma ustawiony priorytet 1 Teraz jak należy zrobić, aby EXTI1 wywłaszczało przerwanie od USART?

    Mikrokontrolery ARM   12 Gru 2013 23:15 Odpowiedzi: 17    Wyświetleń: 2139
  • [STM32F0][C] - Po odebraniu danych z USART wskakuje do Default_Handler

    Strzał w ciemno: Czy Twój USART2_IRQHandler rzeczywiście obsługuje przerwanie od USART? Sprawdź w tabeli, czy tam nie ma przypadkiem adresu Default_Handler... Pozdrowienia, m.ki

    Mikrokontrolery ARM   27 Lis 2012 21:10 Odpowiedzi: 9    Wyświetleń: 1923
  • [ATmega8][C] USART - rozdzielenie wysyłanych i odbieranych danych

    Zastanówcie się Koledzy, co się będzie działo, kiedy wrzucicie do UDR ostatni bajt do nadania. Kto i kiedy skasuje zgłoszenie przerwania TXD po wysłaniu tego bajtu? W obsłudze przerwania to nie nastąpi, więc przerwanie pozostanie zgłoszone i będzie obsługiwane na okrągło - patrz granica stron 137/138 aktualnej wersji (aa) doc2486.pdf Flaga przerwania...

    Mikrokontrolery AVR   09 Kwi 2013 22:12 Odpowiedzi: 23    Wyświetleń: 3474
  • WS2812- Proszę o podpowiedź w pracy "tablica świetlna".

    Zmienne globalne zajmują...... Pewnie ram dla led jest rezerwowany w chwili uruchomienia biblioteki przez memalloc. Gdybyś sam pisał obsługę led to użyłbyś tablicy o określonym rozmiarze dzięki czemu wiedziałbyś ile ram zajmuje program. Poszukaj jak wyświetlić ilość wolnej pamięci ram w czasie działania programu. Jakiś freemem jest. Trochę oszuka ale...

    Arduino   25 Cze 2018 21:33 Odpowiedzi: 15    Wyświetleń: 1176
  • AT90USB1287, assembler – obsługa przerwań, licznik i zapis czasu transmisji USART

    A może inaczej. Konwersja BIN->BCD jest czasochłonna, więc może od razu liczyć w BCD? Korekta dla BCD przy inkrementacji binarnej jest banalna, a AVR ma flagę przeniesienia z młodszej tetrady, co ułatwia liczenie. Przerwanie odbioru USART przepisuje wartość licznika do tablicy i tyle.

    Mikrokontrolery Początkujący   30 Kwi 2013 19:22 Odpowiedzi: 6    Wyświetleń: 1632
  • atmega2560 - przerwania nie działają po rozbudowie funkcji bufora, I2C, USART

    Jeżeli Twoja funkcja transmisji wygląda podobnie jak ta: ... niektóre przerwania przestają się wykonywać. A konkretnie są tracone, jeżeli były zgłoszone wielokrotnie w czasie, gdy nie zostały obsłużone. Tak na wszelki wypadek: http://mikrokontrolery.blogspot.com/2011... Rozwiąż to także flagami, a wtedy okaże się czy to było...

    Mikrokontrolery AVR   28 Sie 2012 22:04 Odpowiedzi: 14    Wyświetleń: 1743
  • [STM32F103] Odbieranie danych przez UART z wykorzystaniem DMA (na rejestrach)

    Po co masz przewanie od odbioru USART i DMA za jednym zamachem? Masz mieć włączone przerwanie od DMA a nie od USART-a. Włącz przerwanie od DMA - ty tego nie robisz. Całkowity kisz misz - nie te przerwania co trzeba. Nie ma prawa działać.

    Mikrokontrolery ARM   24 Lip 2018 18:20 Odpowiedzi: 20    Wyświetleń: 1569
  • Podłączenie GPS do AtmegaL 3,3V - Max 3232 czy bezpośrednio? 8MHz czy 1MHz?

    Nie pokazałeś całego kodu. W obsłudze przerwania nie stosuje się numerów z LCD i czymkolwiek czasochłonnym. Co do realizacji odczytu USART w przerwaniu to podpowiedź brzmi " bufor kołowy". Dodam też że po około 30min wysypują też się atmego8A, No ja się wcale temu nie dziwię, w ogóle nie dbasz o zapisanie SREG ani używanych rejestrów w obsłudze przerwania.

    Mikrokontrolery Początkujący   17 Lip 2012 21:59 Odpowiedzi: 20    Wyświetleń: 2345
  • Obsługa DS18B20 przez USART w trybie half duplex na STM32 Nucleo-F446RE

    Problemem było chyba to, że nie włączyłem globalnych przerwań.

    Mikrokontrolery   31 Sty 2025 12:59 Odpowiedzi: 4    Wyświetleń: 186
  • [Atmega 32] [C] wywoływanie przerwania USART_RXC_vec przy wysyłaniu

    Inicjalizacja [syntax=cpp] void uart::init(unsigned int myubrr) { /* Ustala pr�dko�� transmisji */ UBRRH = (unsigned char)(myubrr>>8); UBRRL = (unsigned char)myubrr; /* W��cza odbieranie i wysy�anie*/ UCSRB = (1<<RXEN)|(1<<TXEN); UCSRB |= _BV(RXCIE); //włączenie przerwania od odbiornika /*...

    Mikrokontrolery AVR   27 Mar 2014 21:02 Odpowiedzi: 4    Wyświetleń: 1356
  • [STM32F4] USART6 - Błędne znaki w przerwaniach Timera i USART

    Witam od dwóch dni mam problem z USART na stm32f4discovery. Otóż napisałem sobie prosty programik na bazie tego przykładu pod stm32f4discovery ze strony Freddiego Chopina, tyle że sam napisałem sobie konfigurację zegarów itd. Zrobiłem konfigurację USART 6, napisałem funkcję do wysyłania jednego bajtu oraz całego słowa i wrzuciłem sobie wysyłanie bajtu,...

    Mikrokontrolery ARM   18 Sty 2017 17:39 Odpowiedzi: 1    Wyświetleń: 891
  • Transmisja I2C w przerwaniu RX USART - ryzyko zawieszenia układu?

    Witam, W przerwaniu RX USARTa (asynchroniczne 38400, po odebraniu odpowiedniego bajta) chciałbym wysyłać dane (Start, Adres, 2 bajty, Stop) korzystając z TWI (nie wykorzystując przerwania od TWI co oczywiste) przy f magistrali 400kHz. O ile czasowo przerwanie się wyrobi o tyle zastanawia potencjalna możliwość powieszenia układu w przypadku padnięcia...

    Mikrokontrolery AVR   29 Lis 2008 17:17 Odpowiedzi: 2    Wyświetleń: 1176
  • Arduino: Obsługa wielu czujników i diod bez użycia delay i z przerwaniami

    Wejście w przerwanie może trwać przy 16MHz ponad 2us (jak przerwanie jest rozbudowane), więc to nie problem, ale może być użyte przerwanie od USART, którego obsługa zajmie np 15us (podaje dość długie czasy, najczęściej są krótsze). Można śmiało przyjąć, ze jeśli wystarczy rozdzielczość na poziomie 100us nie ma konieczności używania sprzętowego przechwytywania.

    Arduino   04 Sty 2018 00:34 Odpowiedzi: 115    Wyświetleń: 5781
  • [Bascom] - Błąd Array expected przy wysyłaniu tablicy przez UART

    Jak sobie z tym poradzić aby program nie czekał tej minuty na zmienną? Użyj funkcji Ischarwaiting() : nie bardzo działa bo tylko jedna zmienna Ts wygląda jak powinna a reszta jest z jakimiś śmieciami. W Bascomi'e jest możliwość zdefiniowanie bufora pierścieniowego dla przychodzących danych, do odbioru bajtów wykorzystane jest przerwanie USART. [syntax=basic4gl]Config...

    Mikrokontrolery AVR   23 Mar 2015 15:58 Odpowiedzi: 27    Wyświetleń: 3150
  • Wysyłanie komend AT do BTM112 z mikrokontrolera ATmega32 - przykłady kodu

    Prawie dokładnie tak. Dlaczego prawie? Spodziewam się, że po wysłaniu tego co napisałeś otrzymasz '\r' i '\n'. Wynika to z tego, że najczęściej USART_Receive() nie używają przerwań i odbierzesz dwa ostatnie znaki. Aby sensownie korzystać z tych funkcji użyj przerwań odbiorczych z USART. Pozostaje jeszcze problem echa. To zależy od urządzenia i jego...

    Mikrokontrolery AVR   17 Sie 2017 17:10 Odpowiedzi: 6    Wyświetleń: 2067
  • Bascom AVR, Atmega16 - Minimalizowanie liczby instrukcji w przerwaniu

    Co innego gdyby to rozbić na małe fragmenty sekwencyjnie wywoływane, pomiędzy którymi znajdzie się miejsce na realizację innych zadań. Tyle, że to już wywraca do góry nogami całą filozofię programowania sekwencyjnego. To już zahacza o wielowątkowość. Ze swojej strony - np. taki FreeRTOS jest fajną zabawką, ale niestety czasem narzut (zużycia RAM, nie...

    Mikrokontrolery Początkujący   04 Wrz 2012 18:47 Odpowiedzi: 13    Wyświetleń: 1905
  • [STM32] [STM32][DMA][USART] Jak wywołać przerwanie po nadejściu znaku końca ramki?

    Odpowiedź A

    Mikrokontrolery ARM   03 Mar 2017 12:25 Odpowiedzi: 32    Wyświetleń: 11706
  • [ATMega88] [ATMega88][C] - Brak komunikacji USART przez FT232R, program echa na przerwaniu

    Wygląda na to, że to problem sprzętowy jeśli Realterm prawidłowo ustawiłeś, a zakładam, że tak jest - pokaż może na wszelki wypadek screen zakładki Port w Realterm. Mam nadzieję że prawidłowo krzyżujesz TxD i RxD.

    Mikrokontrolery AVR   10 Lip 2015 18:30 Odpowiedzi: 6    Wyświetleń: 909
  • [ATMEGA8] Czy przerwania TIMER-a zakłócą transmisję RS232 1200 b/s?

    ...czy na czas wytransmitowania, bądź odbioru znaku program wstrzyma swoje działanie na 10ms, czy po prostu odbędzie się to równolegle... Jeśli budujesz transmisję RS232 na przerwaniach, sprzętowy USART odbiera znak w czasie, gdy procesor wykonuje program główny. Po odebraniu całego znaku generowane jest przerwanie. W obsłudze przerwania musisz tylko...

    Mikrokontrolery AVR   11 Paź 2012 18:32 Odpowiedzi: 14    Wyświetleń: 3494
  • atmega162 usart0 1. problem z przerwaniem 2. BAUD RATE krzak

    jeśli chodzi o przerwania korzystaj z SIGNAL a nie ISR (a dlaczego? to już sobie sam doczytaj) Wycinek z <avr/interrupt.h> z najnowszego AVR-GCC #if defined(__DOXYGEN__) /** \def SIGNAL(vector) \ingroup avr_interrupts \code #include <avr/interrupt.h> \endcode Introduces an interrupt handler function that runs with global...

    Mikrokontrolery AVR   10 Wrz 2009 12:35 Odpowiedzi: 8    Wyświetleń: 1676
  • [Atmega644P][C] - Przerwania + Bufor cykliczny USART

    Witam, próbuję zaprogramować mikrokontroler,aby obsługiwał USART do komunikacji przez RS232. Chcę wykorzystać do tego bufor cykliczny, który zaimplementowałem w następujący sposób: [syntax=c] #include <inttypes.h> #define BUFFER_SIZE 32 #define BUFFER_MASK ( BUFFER_SIZE - 1) typedef struct { uint8_t buffer[BUFFER_SIZE]; uint8_t head; uint8_t tail;...

    Mikrokontrolery AVR   18 Wrz 2012 07:11 Odpowiedzi: 2    Wyświetleń: 2943
  • [ATMega16] C - Odebranie bajtu z PC na mikrokontrolerze

    Tak, jeśli używasz przerwania to nie potrzebujesz tej funkcji. Procesor wcale nie musi się resetować, może wpadać w nieokreśloną martwą pętlę po skoczeniu do przerwania od RX (które jest nieokreślone). Program działa więc tak: wykonuje wszystko aż do napotkania funkcji USART_ReceiveByte, wchodzi do niej i oczekuje na zakończenie odbioru bajtu przez...

    Mikrokontrolery AVR   10 Sie 2012 13:11 Odpowiedzi: 7    Wyświetleń: 1157
  • Dwustronna komunikacja AVR: Jak odwrócić role master-slave?

    No to USART. Dokładnie, USART + przerwanie RXC na każdym procku, którego brak wywoła time out. W sumie parę linii kodu.

    Mikrokontrolery AVR   03 Mar 2013 19:31 Odpowiedzi: 17    Wyświetleń: 2208
  • [STM32] [STM32][C] Jak zapewnić pełną transmisję danych przez USART z DMA i RS485?

    W przerwaniu od DMA oczekujesz na ustawienie flagi oznaczającej zakończenie transmisji (TC). Jeśli chcesz super elegancko, ale niekoniecznie lepiej, to w momencie rozpoczęcia transmisji DMA włącz przerwanie od tej flagi w module UART - nadajnik będziesz wyłączał dopiero w tym przerwaniu. 4\/3!!

    Mikrokontrolery ARM   10 Lut 2012 03:27 Odpowiedzi: 8    Wyświetleń: 3578
  • [C][Atmega32][UART]Odbiór stringa (po raz miliooonowy)

    Przerwanie odbiornika USART w postaci w jakiej je masz kompletnie nie ma sensu - duplikujesz softwarowo to co robi hardware. W tym przerwaniu powinieneś zapisywać kolejne bajty do tablicy i np. ustawiać flagę po napotkaniu końca przesyłanego tekstu - np. znaku NUL lub też określonej ilości bajtów, o ile komunikaty mają stałą długość. I dopiero potem...

    Mikrokontrolery Początkujący   03 Sty 2015 21:49 Odpowiedzi: 7    Wyświetleń: 1242
  • ATMEGA32 - Jak uruchomić równoległe wątki do pomiarów i komunikacji RS232?

    A po co ta "pętla główna"? Nie wystarczą same przerwania? Np. jedno od timera sterujące pomiarami, drugie od UARTa. Oczywiście można to zaimplementować na wiele sposóbów. Akurat tu użycie 2 przerwań (timer + USART), które mogą sie potencjalnie "przeplatać" wymaga zadbania o synchronizację tych 2 wątków i atomość operacji zapisu ostatecznej wartośći...

    Mikrokontrolery AVR   31 Paź 2015 17:39 Odpowiedzi: 35    Wyświetleń: 5475
  • STM NUCLEO - Jak używać sprzętowego bufora danych USART?

    Bo program będzie akurat w tej chwili w innym przerwaniu o wyższym piorytecie Szukasz rozwiązania na około dla problemu który stworzyłeś sam? Złe założenia do algorytmu ot co.... w razie W jest DMA.... Ale nadal ciekawi mnie jakie przerwanie będzie trwało dłużej niż 200us co jest wiecznością dla STMa.

    Mikrokontrolery ARM   01 Mar 2017 21:38 Odpowiedzi: 8    Wyświetleń: 846
  • stm32f302, UART - flaga USART_IT_TXE nie ustawia się po konfiguracji

    Wyłączenie przerwania przed załadowaniem ostatniej danej gwarantuje, że niezależnie od okoliczności nie nastąpi zgłoszenie przerwania TXE. Jeżeli najpierw załadujesz, a potem wyłączysz, to po załadowaniu wskutek działania FIFO lub z powodu innego przerwania nadajnik może zgłosić przerwanie TXE przed jego wyłączeniem i wtedy jeszcze raz wejdziesz w obsługę...

    Mikrokontrolery   01 Paź 2015 15:49 Odpowiedzi: 8    Wyświetleń: 891
  • USART ATMEGA128: Problem z odbiorem danych i zapaleniem diody na porcie E

    A jakby zrobić coś takiego. W przerwaniu timera 1 i poza nim uruchomić przerwanie od Usarta w którym znaki będą zapisywane do tablicy, a w pętli głównej programu sprawdzać tylko zapełnienie tablicy. Po jej zapełnieniu analizować dostarczone dane przy wyłączonym przerwaniu z Usarta. Pytanie czy Usart daje przerwanie przy zakończeniu odbioru znaku (wypełnieniu...

    Mikrokontrolery AVR   31 Gru 2010 14:46 Odpowiedzi: 6    Wyświetleń: 3433
  • [STM32] STM32F100RB: FreeRTOS i konfiguracja przerwań USART2 - jak to zrobić?

    Hej, nie mogę znaleźć na forum podobnego problemu. Otóż pracuję z mikrokontrolerem STM32F100RB (płytka stm32vldiscovery) i chciałbym wykorzystać przerwanie od USART podczas pracy z FreeRTOS. Problem polega na tym, że nie wiem, w którym miejscu zdefiniować przerwanie. Uruchamiam je funkcją USART_ITConfig(USART2, USART_IT_TXE, ENABLE) i niestety program...

    Mikrokontrolery   12 Lip 2012 01:19 Odpowiedzi: 14    Wyświetleń: 4551
  • AVR136: Czas obsługi przerwania na Atmega162 przy 32 kanałach PWM

    Nie da się na to pytanie odpowiedzieć nie widząc kodu. USART obsługujesz w przerwaniach? Pamiętaj, że na czs jego wykonania inne przerwania są blokowane, użycie nieblokujących handlerów przerwań wymaga głębszej analizy. Ale generalnie spójrz na to w ten sposób - procesor przez 40% czasu się nudzi. Więc dla 16MHz masz sytuację taką, jakbyś miał cały...

    Mikrokontrolery AVR   15 Lut 2012 13:49 Odpowiedzi: 11    Wyświetleń: 2002
  • USART: Problem z odbiorem i wysyłką łańcucha znaków po naciśnięciu Enter

    Przy kompilacji tego programu nie masz żadnych ostrzeżeń? Dziwne. W każdym razie jeśli odebrane_dane są typu tablicowego, a funkcja USART_Transmit (char data) przyjmuje jako argument typ char, który w żaden sposób z tablicą jest niekompatybilny to masz problem. Najpewniej kompilator generuje co najmniej ostrzeżenie w tym momencie, bo to co robisz to...

    Mikrokontrolery Początkujący   03 Gru 2012 18:38 Odpowiedzi: 12    Wyświetleń: 1551
  • PIC16F628A, 7-segmentowy wyświetlacz - Jakie MOSFETy do poprawy jasności?

    Schematu nie widzę. Napisałem Ci już jakie tranzystory możesz tam zapakować. Kosztują <0,50PLN/sztukę w TME, więc tanio. W dokumentacji do wyświetlaczy sprawdź maksymalny prąd i na początek ogranicz prąd maksymalny do tej wartości (prawdopodobnie 20-60mA). Program do napisania od nowa. 1. Po co zewnętrzny prescaler, jeżeli licznik TIM0 ma wbudowany...

    Mikrokontrolery PIC   30 Paź 2013 23:23 Odpowiedzi: 32    Wyświetleń: 6987
  • Jak efektywnie zarządzać przerwaniami i zadaniami w dużych projektach na uC?

    Ok. Ostatnio badałem dla STM32L czas wyjscia ze STOP mode. Mierzyłem oscylskopem i sekwencja: - wyjscie ze STOP mode - przełaczenie zegara procka z MSI na HSI zajmuje 150us. Jak masz system w którym możesz sobie na to pozwolić to nie ma problemu ze "zgubionymi" zdarzeniami. Nie wiem tak naprawde o co Ci chodzi. Naprawdę zdaje sobie sprawe że przerwanie...

    Mikrokontrolery   01 Lip 2013 11:18 Odpowiedzi: 39    Wyświetleń: 6096
  • Nieoczekiwana zmiana rejestru CR1 od USART3 -komunikacja Master - Slave, stm32f1

    Zastanawiam się tylko po co sprawdzać to: [syntax=c]USART3 -> CR1 & USART_CR1_TCIE[/syntax] nie rozumiem powodu. Przecież to jest "This bit is set and cleared by software." Programista nie wie czy ustawił to przerwanie czy nie? Dodatkowo ten zapis: [syntax=c]if(( USART3 -> CR1 & USART_CR1_TCIE) && (USART3 -> SR & USART_SR_TC ))[/syntax] wygląda dość...

    Mikrokontrolery ARM   18 Mar 2019 12:39 Odpowiedzi: 24    Wyświetleń: 990
  • AVR ATmega8/88/328 + UART + ECLIPSE - Błędy kompilacji, sprawdzenie kodu main.c

    Problem polega na tym, że mój kompilator wyrzuca błędy a nie pokazuje mi gdzie one są (i tym samym nie mogę ich skompilować) ... To je pokaż :) Szukałem na internecie poradników do terminala UART ... USART na przerwaniach: http://mikrokontrolery.blogspot.com/2011... oraz stosuj pokazany tam prawidłowy sposób obliczania...

    Mikrokontrolery AVR   15 Gru 2014 16:09 Odpowiedzi: 17    Wyświetleń: 2661
  • AVR - Czy printf zakłóca przerwania i transmisję RS232?

    USART sprzętowo nadaje cały bajt, wraz z bitem startu, stopu i parzystości. PRzerwanie w czasie takiej transmisji nic nie zakłóci. Co najwyżej do nadania kolejnego bajtu minie jakiś czas, ale to nie problem, gdyż każdy bajt ma swój bit startu, w efekcie odbiornik to poprawnie odbierze.

    Mikrokontrolery   28 Lip 2013 06:06 Odpowiedzi: 12    Wyświetleń: 1962
  • Stm32 - Konfiguracja USARTA psuje transfer z bufora dma do timera

    Nie widzę obsługi przerwania USART, które jest aktywne. Zgaduję, że procesor grzęźnie w pętli domyślnej pustej obsługi przerwania. Zamiast bezsensowynch wygibasów z wypełnianiem struktury danych i wołaniem NVIC_Init() ten sam efekt osiągniesz prostym wywołaniem NVIC_EnableIRQ(USART2_IRQn);

    Mikrokontrolery ARM   16 Lut 2018 07:54 Odpowiedzi: 1    Wyświetleń: 552
  • przerwanie po wysłaniu znaku vs przerwanie generowane po opróznieniu

    Oczywiście, że ma. Zarówno bufor odbiornika, jak i bufor nadajnika. Jeśli w UDR jest już bajt danych, to kolejny zapis odbędzie się do bufora (automatycznie załatwia to hardware MCU). Stąd też zazwyczaj zapisując dane do UDR sprawdzasz flagę UDRE, czy masz miejsce w buforze. Flagę zakończenia transmisji sprawdza się rzadko, zazwyczaj jeśli po zakończeniu...

    Mikrokontrolery AVR   30 Lip 2017 12:55 Odpowiedzi: 8    Wyświetleń: 933
  • [Bascom] Atmega64 RS485 - jak wykryć koniec transmisji UART?

    Skorzystaj z przerwania USART TX COMPLETE. 0) włączasz to przerwanie 1) nadajesz 1 bajt 2) czekasz w pętli która sprawdza stan jakiegoś bitu-flagi Bajt sie wysłał i wchodzi przerwanie tx complete. Ustaw w nim jakiś bit-flagę 3) pętla wykryła zmianę bitu-flagi, wyjście z pętli oczekiwania i idziesz do pkt 1, i tak 5 razy 4) wyłączasz przerwanie

    Mikrokontrolery AVR   24 Kwi 2012 09:34 Odpowiedzi: 3    Wyświetleń: 1713
  • Jak napisać szybki protokół transmisji RS232 między BASCOM a DELPHI?

    PC wysyła wszystko co ma w buforze bajt za bajtem bez czekania. Można zwiększyć odstęp między bajtami, z tego co pamiętam to jest do wyboru szerokość przerwy 1, 1 1/2 lub 2 bity. A jak odbierasz dane? AVR'y nie mają buforu (no jest na 1 bajt, ale to nie bufor), najlepiej umieścić w przerwaniu wywoływanym przez USART podprogram który zapisze kolejne...

    Mikrokontrolery AVR   28 Kwi 2009 20:08 Odpowiedzi: 13    Wyświetleń: 3255
  • STM32 USART - Jak przesłać dane z czujnika jako 16-bitowy int?

    Ja ostatnio rozwiązałem to tak do transmisji danych z 3 osiowego akcelerometru: [syntax=c] sprintf((char *)buforTx,"X%03iY%03iZ%03iE%1c%1c",Buffe... USART_ITConfig(USART1, USART_IT_TXE, ENABLE); //Przerwanie-transmisja [/syntax] Potem w programiku napisanym w C# wyłuskuję z ciągu interesujące mnie dane: http://www.youtube.com/watch?v=d-q6DuQH-...

    Mikrokontrolery ARM   22 Wrz 2012 06:47 Odpowiedzi: 5    Wyświetleń: 2802
  • Atmega16, USART - lepszy pooling czy interrupts przy przesyłaniu danych?

    Jeśli wysylasz male porcje danych i rzadko mozesz zastosowac takie roziwazanie. W inym przypadku proponuje wykorzystac przerwania i zrobic jakis buforek nadawczy/odbiorczy.

    Mikrokontrolery   23 Paź 2006 20:01 Odpowiedzi: 3    Wyświetleń: 1202
  • ATMega32 [C] - Odbieranie i nadawanie komend przez UART

    Przede wszystkim porzuć tą buibliotekę, przynajmniej w wersji klasycznej. I teraz od końca - odbiornik USART nasłuchuje cały czas i to nie angażuje procesora. Ba, np. w takiej XMEGA E5 procesor można nawet uśpić, a USART pracuje i jak zajdzie potrzeba to go wybudzi. To na czym powinieneś skupić swją uwagę to przerwania. A konkretnie przerwanie odbiornika...

    Mikrokontrolery Początkujący   11 Lip 2013 15:24 Odpowiedzi: 2    Wyświetleń: 2238
  • [C][Atmega16A][USART] - zliczanie trwania wysłanego sygnału

    gdzie w ogóle main tutaj? Dodano po 49 Do zliczenia czasu powinieneś zastosować przerwanie timera.

    Mikrokontrolery AVR   05 Sty 2013 21:13 Odpowiedzi: 4    Wyświetleń: 1095
  • Stoper na ATMEGA 128 z wyświetlaczem HD44780 i klawiaturą - jak zacząć?

    Z tego co wyczaiłem to mega popędzana jest kwarcem 14,7456 MHz (kwarc do USART)... Timery ustawione są tak, że przerwanie wywoływane jest co 0,05s stąd podstawowa zmienna zliczająca do sekundy zwiększana jest co drugie wywołanie przerwania (odpowiadają za to variable i variable1)... Spróbuj przeanalizować ten kod i skonfrontować go z dokumentacją do...

    Mikrokontrolery   14 Sty 2008 22:26 Odpowiedzi: 8    Wyświetleń: 3620
  • Atmega32 - Jak napisać program do komunikacji UART i sterowania pinem?

    Witam... Sądzę, że to powinno Ci pomóc...

    Mikrokontrolery   26 Kwi 2006 16:09 Odpowiedzi: 17    Wyświetleń: 2322
  • STM32 F100RB: HardFault po przerwaniu USART2, działa w debuggerze

    Temat można potraktować jako zamknięty. Problem polegał na tym, ze flagi od przerwania odbioru USART co prawda były kasowane automatycznie, ale zanim zostały skasowane przychodziło już nowe przerwanie... Dodatkowo CLK na USART2 był uruchamiany dwa razy i jak się okazało ma to duży wpływ na pracę tego ukłądu. Dlaczego? nie wiem ...

    Mikrokontrolery ARM   28 Lip 2012 16:44 Odpowiedzi: 4    Wyświetleń: 2915
  • Stan klawisza w przerwaniu, usuwanie drgań styków

    Jeśli absolutnie nie chcesz stosować delay, ani dać zewnętrznego filtra RC to wykorzystaj przerwania, ale timera lub np. port USART. USART może działać jako rejestr przesuwny, co wykorzystasz do samplowania stanu przycisku. Po czasie określonym przz UBRR będziesz miał przerwanie od odbiornika USART, a z UDR sobie odczytasz stan przycisku (kolejne bity...

    Mikrokontrolery AVR   26 Maj 2012 10:25 Odpowiedzi: 5    Wyświetleń: 4288