przerwa usart

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

    Domyślnie są wyłączone, a co robi z nimi SPL - to już tajemnica jej twórców. Rozsądni ludzie nie korzystają z bibliotek typu SPL, a jeśli korzystają - to nie używają nadmiarowych wywołań, które mają za zadanie wpisać do rejestru to samo, co już tam jest. Poprawne zainicjowanie UART bez SPL - to jakieś 4..5 linijek kodu. ClearITpendingBit jest bez sensu...

    Mikrokontrolery ARM   05 Sie 2013 20:51 Odpowiedzi: 8    Wyświetleń: 1989
  • 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
  • REKLAMA
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • Atmega8: ISR(USART_RXC_vect) - LED gaśnie po przerwaniu, jak to naprawić?

    Np usunąć włączanie przerwania od nadawania albo dodać taką obsługę w programie. Inaczej program leci w krzaki. Swoją drogą, jak daje radę wysłać cały tytuł to i tak jest niezły. Ja na podstawie analizy dałbym mu jedną literkę.

    Mikrokontrolery AVR   28 Gru 2010 00:09 Odpowiedzi: 4    Wyświetleń: 3631
  • 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ń: 1152
  • REKLAMA
  • [Atmega16] [Atmega16][C] Odbiór ramki NMEA z GPS - problem z kodem USART_RXC_vect

    Problem leży tu: SIGNAL(USART_RXC_vect) { if(UDR=='$') zapis=1; if((i<14)&&(z... { buf[i]=UDR; i++; } if(i>=14) { k=1; zapis=0; i=0; } } Otóż odczyt z rejestru UDR powoduje jego wyzerowanie a następnie załadowanie następnego odebranego znaku (jeżeli...

    Mikrokontrolery AVR   24 Paź 2009 14:55 Odpowiedzi: 2    Wyświetleń: 2012
  • [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ń: 1527
  • ATmega8: Reset po wyjściu z przerwania USART_RXC_vect - co sprawdzić?

    Zgadzam się z uwagami. Ale takie są poczatki.

    Mikrokontrolery AVR   24 Lut 2015 00:23 Odpowiedzi: 3    Wyświetleń: 1388
  • REKLAMA
  • ATmega32 - Przerwanie timer0 nie działa z warunkiem Transmit w USART_RXC_vect

    Nie mogę niczego wywalić. w USART musi być co jest a timer musi zbierać bity z wejścia dosyć dokładnie

    Mikrokontrolery AVR   04 Sty 2013 23:53 Odpowiedzi: 17    Wyświetleń: 2253
  • Xmega A1 - Jak poprawnie zrealizować USART z przerwaniami?

    Prawdę mówiąc nie widzę sensu w realizacji dzielenia przez 40 sprzętowo. Ale jak pisałem, jeśli masz wolny timer, to do rejestru PER timera za pomocą którego realizujesz QDEC wpisujesz 39, wtedy co 40 impulsów wygeneruje ci przepełnienie, które możesz transmitować przez event system jako zegar dla drugiego timera, który w efekcie będzie zliczał co 40...

    Mikrokontrolery AVR   15 Gru 2014 21:18 Odpowiedzi: 9    Wyświetleń: 1917
  • AVR GCC – odbiór znaków z RS232, wyświetlanie ciągu po Enter, ISR USART0_RX

    Zauważyłeś, że masz odzielne zmienne 'i' i 'bit_rx' w funkcji obsługi przerwania, niezależne od globalnych, na których działa main()?

    Mikrokontrolery   18 Kwi 2008 14:32 Odpowiedzi: 2    Wyświetleń: 1277
  • 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ń: 4386
  • [Atmega 32] [C] wywoływanie przerwania USART_RXC_vec przy wysyłaniu

    W przerwaniu USART_RXC musisz odczytać UDR niezależnie od warunków umieszczonych w kodzie, najlepiej, kopiując wartość tego rejestru do lokalnej zmiennej, tuż na początku funkcji. Jeżeli tego nie zrobisz, procesor zakolejkuje kolejne przerwanie. Piszę to na podstawie dokumentacji AVR8. W Twoim przypadku, gdy bufor odbiorczy się zapełni i nadejdzie kolejny...

    Mikrokontrolery AVR   27 Mar 2014 21:02 Odpowiedzi: 4    Wyświetleń: 1392
  • 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ń: 3137
  • STM32 UART odbiera tylko jeden bajt z dwóch przychodzących

    Witam! Fragmenty kodu: USART_InitStructure.USART_BaudRate = 57600; USART_InitStructure.USART_WordLength = USART_WordLength_8b; USART_InitStructure.USART_StopBits = USART_StopBits_1; USART_InitStructure.USART_Parity = USART_Parity_No; USART_InitStructure.USART_HardwareFlowCo... = USART_HardwareFlowControl_None; USART_InitStructure.USART_Mode = USART_Mode_Rx...

    Mikrokontrolery ARM   24 Maj 2011 07:29 Odpowiedzi: 6    Wyświetleń: 2154
  • REKLAMA
  • 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ń: 1682
  • [STM32F3] - USART1 działa, USART2 i USART3 nie działają oraz przerwanie

    Czy pamiętałeś o włączeniu portów w ODPOWIEDNIM rejestrze APBENR? volatile nie ma nic wspólnego z AVR. Tego atrybutu używa się np. wtedy, kiedy zmienna modyfikowana przez obsługę przerwania jest testowana przez inny fragment kodu. Pokaż kod procedury przerwania, bo coś tam narozrabiałeś.

    Mikrokontrolery ARM   15 Sie 2013 22:36 Odpowiedzi: 3    Wyświetleń: 1137
  • Jak skonfigurować UART w Xmega128A3U z użyciem przerwań?

    Spróbowałem z UARTem programowym. Kod wygląda tak: [syntax=c]#include <avr/io.h> #include <util/delay.h> void setUpSerial(); void sendChar(char c); void sendString(char *text); char usart_receiveByte(); int main(void) { /* PC3 (TXD0) as output. */ PORTC.DIRSET = PIN3_bm; /* PC2 (RXD0) as input. */ PORTC.DIRCLR = PIN2_bm; setUpSerial(); while(1)...

    Mikrokontrolery AVR   07 Sie 2016 11:10 Odpowiedzi: 12    Wyświetleń: 1839
  • [stm32] Jak skonfigurować UART z przerwaniami na STM32F103VBT6?

    Cześć, Nie dawno zacząłem przygodę z STM32. I mam duży problem nad którym siedzę już parę dni. Chciałem stworzyć prostą komunikację z komputerem gdzie przez terminal odpowiednimi komendami będzie można gasić i zapalać diody i w drugą stronę przesyłać które diody są zapalone. nie wiem gdzie jest tu błąd więc Ustawienie GIPO void GPIO_Conf(void) { GPIO_InitTypeDef...

    Mikrokontrolery ARM   14 Paź 2024 18:31 Odpowiedzi: 1    Wyświetleń: 1818
  • ATmega16 i USART: ISR(USART_RXC_vect) nie działa poprawnie, co robić?

    Hej, Podłączyłem sobie ATmegę16 do komputera przez RS-232 za pośrednictwem MAX232. Na początek chciałbym zrobić echo - to, co wpiszę w minicomie czy putty ma być przesłane do uC i wysłane z powrotem. Wykorzystane mają być przerwania. Problem jest taki, że procedura obsługi przerwania ISR(USART_RXC_vect) jest wykonywana albo bardzo rzadko, albo wręcz...

    Mikrokontrolery   15 Lip 2007 17:03 Odpowiedzi: 1    Wyświetleń: 1643
  • [c] Jak poprawnie zaimplementować funkcję USART_Receive w C dla AVR?

    Witam. Napisałem sobie taki program, który wyświetla na wyśw 7segmentowym jakąś cyfrę. wygląda to tak: (plik mian.c) działa , a wg. mnie działać nie powinno. Po podłączeniu zasilania, na wyśw. mam cyfrę 0. Jeśli kliknę na klawiaturze komputera cyfrę np. 5 to od razu na wyświetlaczu 7seg pojawia mi się cyfra 5. Sprecyzuje może co wg. mnie działać nie...

    Mikrokontrolery AVR   03 Lip 2011 18:47 Odpowiedzi: 1    Wyświetleń: 849
  • STM32, IRQ, Interrupt, USART - Przerwanie - kilka USARTów STM32

    Witajcie. Piszę krótko. Używam STM32F407. Do trzech różnych USARTów mam podłączone cwa czujniki i jeden datalink Czujnik_1 - USART1 Czujnik_2 - UART5 Datalink - USART3 Z czujników zbierane są dane a datalink wysyła te dane, które zostały odebrane. Wszystko dzieje się na przerwaniach. Kiedy podpinam każdy z czujników oddzielnie i datalink'a, wszystko...

    Mikrokontrolery ARM   30 Sty 2015 11:11 Odpowiedzi: 14    Wyświetleń: 5691
  • Jak działa procedura USART_Transmit w Atmega8 z WinAvr?

    Witam Już wiem co miałem nie tak. Opóźnienia to jest to na co trzeba uważać w dallasie (jak tego nie zrobisz porządnie, to nici z Twojej pracy). Ja wykorzystywałem na początku delay’a który najmniej mógł zliczyć (teoretycznie) 5,7814us (bo #include <avr/io.h> #include <stdlib.h> ///////////////////////// LCD define /////////////////////////////////////...

    Mikrokontrolery   12 Wrz 2007 23:05 Odpowiedzi: 20    Wyświetleń: 9776
  • [ATMega32] ATMega32: Obsługa I2C na przerwaniach w C - kiedy i dlaczego warto?

    Niektóre z funkcji faktycznie zawierają pętlę oczekującą na zwolnienie magistrali: [syntax=c] while ( TWI_Transceiver_Busy() );[/syntax] Autorzy założyli, że można będzie użyć tej funkcji w dowolnym momencie, niestety powoduje to, że kiedy wywołamy funkcję, kiedy magistrala jest zajęta, to będzie ona czekała na zwolnienie magistrali, co wprowadza czasami...

    Mikrokontrolery AVR   27 Sie 2012 19:25 Odpowiedzi: 21    Wyświetleń: 2955
  • ST32F746-Disco - problem z przerwaniami w kodzie, konfiguracja EXTI

    Czy plik wygenerowany przez nowy projekt ale z dołączonymi bibliotekami HAL będzie dobry? W nim znajdują się już te przerwania. Dodaj tylko to co Ci napisałem. Znajdz w dokumentacji procesora gdzie w tablicy przyrwan jest ten EXTI15_10 - i tam zamiast zera wstaw nazwe seojego handlera. I to wszystko. Tu masz zresztą tę tablicę - policz sobie gdzie...

    Mikrokontrolery ARM   06 Kwi 2016 15:22 Odpowiedzi: 22    Wyświetleń: 1554
  • [ATMega8][TWI][24C128][c] I2C na przerwaniach + EEPROM

    5. Czy powinienem włączać linie SCL i SDA jako wyjścia lub wejścia poprzez ustawieniea w DDRC? Przy sprzętowej obsłudze TWI dzieje się podobnie jak przy sprzętowej obsłudze USART. Czyli włączenie mechanizmu sprzętowego powoduje automatycznie zmianę funkcji odpowiednich pinów transmisyjnych i wymusza ich działanie. Tylko przy programowej realizacji...

    Mikrokontrolery AVR   23 Gru 2010 15:03 Odpowiedzi: 43    Wyświetleń: 8886
  • STM32L - USART3 przerwanie zła interpretacja wektora

    Zacznij od sprawdzenia stosu. No właśnie - w skrypcie linkera jest nawet opis, ale widzę że nikt go nie czyta... 4\/3!!

    Mikrokontrolery ARM   19 Lut 2013 14:58 Odpowiedzi: 8    Wyświetleń: 1761
  • USART3 - STM32F4 Złe dane przy odbieraniu w przerwaniu

    To działa: [syntax=c] #define Port_USART3 USART3 #define Port_USART3_CLK RCC_APB1Periph_USART3 #define Port_USART3_TX_PIN GPIO_Pin_10 #define Port_USART3_TX_GPIO_PORT GPIOB #define Port_USART3_TX_GPIO_CLK RCC_AHB1Periph_GPIOB #define Port_USART3_TX_SOURCE GPIO_PinSource10 #define Port_USART3_TX_AF GPIO_AF_USART3 #define Port_USART3_RX_PIN GPIO_Pin_11...

    Mikrokontrolery ARM   08 Sie 2014 11:07 Odpowiedzi: 4    Wyświetleń: 1005
  • STM32F100RB - Jak aktywować przerwania RXNE dla USART1?

    Czytaj Reference Manual dla danego procesora. Czy masz ustawiony bit RXNEIE?

    Mikrokontrolery ARM   02 Wrz 2013 16:49 Odpowiedzi: 10    Wyświetleń: 1500
  • USART1 STM32 - Różnice w danych między RealTerm a buforem char w przerwaniu

    Przecież wyraźnie widać, że STM odbiera 8 bitów, a w Realterm jest ustawione 7 bitów. Stąd różnica i obcięty najstarszy bit. Poza tym, dane się zgadzają. Format danych musi być ten sam. STM to pewnie 8N1, Realterm 7E1.

    Mikrokontrolery ARM   05 Lis 2016 22:06 Odpowiedzi: 9    Wyświetleń: 1329
  • ATmega128 - Jak przekierować dane z USART0 do USART1 na PC?

    1. Jakie prędkości masz po obu stronach? 2. Nie możesz tego zrobić sprzętowo? 3. Programowo robisz odbiór i nadawanie na przerwaniach i przepisujesz z jednego bufora dane do drugiego... 4. Jakie funkcje ma pełnić Atmega? Czy ma to być tylko monitor połączenia czy co?

    Mikrokontrolery AVR   16 Sty 2013 23:24 Odpowiedzi: 5    Wyświetleń: 1365
  • 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ń: 900
  • Jak użyć biblioteki HAL lub LL w STM32 bez CubeMX w Keilu?

    Jak wygląda sprawa z przerwaniami? Tam zamiast przerwań są używane callbacki. To nie tak jest. Callbacki są całkiem do czego innego. W programie HALowym, to użytkownik pisze obsługę przerwań sprzętowych (tak jak w klasycznym podejściu "rejestrowym") a specyfiką HAL jest tylko to że dostarcza pewnych gotowców na obsługę przerwań. Przykładowo weźmy uart....

    Mikrokontrolery ARM   16 Kwi 2019 02:54 Odpowiedzi: 4    Wyświetleń: 1956
  • 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ń: 1536
  • [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ń: 1981
  • 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ń: 3644
  • [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ń: 1773
  • STM32 - Konfiguracja modułu Bluetooth dla wysokiej częstotliwości próbkowania

    Witajcie, dziękuję za wszystkie posty. Większość okazała się bardzo pomocna. Swoją modyfikację chciałam zacząć od najprostszej zmiany, tj. zmiany konfiguracji modułu bluetooth poprzez komendy AT. Najpierw jednak chciałam przetestować odbiór danych z terminala. Znalazłam program i nieco go zmodyfikowałam, którego celem jest odebranie wpisanej danej w...

    Mikrokontrolery ARM   09 Lis 2012 23:07 Odpowiedzi: 24    Wyświetleń: 4020
  • 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ń: 8289
  • [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ń: 1485
  • Poprawki w usart.h dla PIC18: problem z funkcją WriteUSART i opóźnieniami

    Ofkoz ze tak. Blokowanie w funkcji wsadzajacej znak do bufora imho jest paskudne/straszne/przerazajace/odpychaja... Nawet w najwolniejszym procku zawsze warto implementować programowe FIFO o wielkości nawet tylko 16 bajtów, a sam tx realizować tylko i wyłącznie w przerwaniu... Jak ma się wykonywać pseudowielowątkowo...

    Mikrokontrolery PIC   02 Lip 2011 19:59 Odpowiedzi: 3    Wyświetleń: 1335
  • [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ń: 2019
  • [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ń: 4417
  • Nazwa uchwytu w SIGNAL dla przerwania odbioru znaku w USART?

    Jako że SIGNAL już się nie powinno używać, chodzi Ci zapewne o ISR(USART_RXC_vect)

    Mikrokontrolery AVR   25 Lis 2010 12:11 Odpowiedzi: 6    Wyświetleń: 1698
  • [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ń: 1716
  • ATXMega Timer [C] przerwania - Brak przejścia do procedury przerwania

    Odblokowałeś przerwania odbiornika i nadajnika USART, ale nigdzie nie zdefiniowałeś funkcji ich obsługi. W efekcie program wchodzi w funkcję __bad_interrupt i się na niej zapętla.

    Mikrokontrolery AVR   02 Lis 2014 13:43 Odpowiedzi: 4    Wyświetleń: 1257
  • Xmega128 - Jak zacząć pracę z UART i ASF? Praktyczne wskazówki dla początkujących

    Bardzo dziękuję za odpowiedź. Doszedłem do wniosku, że wolę wiedzieć co się dzieje w środku i będę pisał standardowo "jak Bozia nakazała", czyli z wykorzystaniem rejestrów. Wziąłem się więc za ten UART - podłączam do komputera przez konwerter USB-RS232 i MAX3232. Chciałbym sprawdzić poprawność dwóch programów jakie napisałem. Pierwszy z nich ma na celu...

    Mikrokontrolery AVR   09 Lip 2016 23:39 Odpowiedzi: 9    Wyświetleń: 1731
  • 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ń: 936
  • [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ń: 915
  • [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ń: 2906
  • 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ń: 1527
  • 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ń: 1779
  • STM32F103 - Zakłócenia przy równoległej komunikacji USART1 i USART2

    Chciałem w ten sposób poczekać aż skończy nadawać linia TX i żeby zaraz po skończeniu nadawania odebrać z RX W sumie po to się wykorzystuje przerwania aby nie czekać.

    Mikrokontrolery ARM   23 Wrz 2016 08:39 Odpowiedzi: 36    Wyświetleń: 3480
  • STM32F103RB RS485 - Problem z przesunięciem danych i brakiem echa USART

    Dobrze dodałem w przerwaniu oczekiwanie na zakończenie transmisji while(!(USART1->SR & USART_FLAG_TC)); Kod: [syntax=cpp] void USART1_IRQHandler(void) { if(USART_GetITStatus(USART1,USART_IT_RXN... sie gdy bufor odbiorczy nie jest pusty { RxBuf[i++] = USART_ReceiveData(USART1); if(i>7){ //USART1->CR1&=~(1<<2);//.....

    Mikrokontrolery Początkujący   14 Maj 2014 19:14 Odpowiedzi: 38    Wyświetleń: 4740
  • [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ń: 1383
  • STM32 Nucleo F103 - Błąd kompilacji przy odbiorze UART w przerwaniach

    plik .h [syntax=c]/* * uart.h * * Created on: 27.09.2017 * Author: Pawel */ #ifndef UART_UART_H_ #define UART_UART_H_ //void USART1_IRQHandler (void); #define UART_BUFOR 32 // definiujemy bufor o rozmiarze 32 bajtów // definiujemy maskę dla naszego bufora #define UART_MASKA_BUFORA ( UART_BUFOR - 1) #endif /* UART_UART_H_ */ [/syntax]

    Mikrokontrolery ARM   28 Wrz 2017 22:39 Odpowiedzi: 13    Wyświetleń: 1563
  • [AVR] Atmega gubi przerwania USART - jak rozwiązać problem z odbiorem danych?

    Można tak, a dla danych binarnych np. pierwszy odebrany bajt może zawierać długość ramki. Wtedy kończysz odbiór w momencie odebrania określonej przez pierwszy bajt ilości bajtów. Wygodnie jest też jako ostatni bajt umieścić CRC, wtedy CRC całej ramki powinno wynosić 0, jeśli nie to mamy błąd.

    Mikrokontrolery   13 Lip 2011 00:58 Odpowiedzi: 21    Wyświetleń: 5720
  • Konfiguracja USART dla Atmega16 i Atmega8 - brak komunikacji [C]

    PORTB=w; Chodzi o wyjście. A-B to literówka. PORTA=0xff; ?? Problem w tym że zamiast innego kodu dla każdego klawisza wyświetla bez przerwy 0xff.

    Mikrokontrolery AVR   08 Gru 2009 13:10 Odpowiedzi: 8    Wyświetleń: 1647
  • 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ń: 5805
  • ATMega8 USART – ryzyko utraty danych przy odbiorze bez przerwań, jak zapobiec?

    Aby uporządkować dyskusję proponuję abyś odpowiedział sobie na pytania: 1. Jak dokładnie musi pracować serwo? 2. Czy może mieć mikrosekundowe przerwy? Jeżeli nie, to do tematu trzeba podejść zupełnie inaczej.

    Mikrokontrolery AVR   02 Mar 2011 22:38 Odpowiedzi: 33    Wyświetleń: 3706
  • STM32F4 Discovery - Połączenie z Bluetooth BTM341 przy użyciu USART

    Witam! Zacznę od tego, że jestem raczej laikiem z programowania STM-ów. Ale nie jestem też leniem, że znajduję gotowca, kopiuję i liczę na to, że będzie działać. A jak nie działa to lipa. Staram się to zrozumieć i znaleźć problem. ;) Niestety brak wiedzy sprawił, że wymiękłem i pomyślałem, żeby zapytać na forum. Co chcę zrobić: Podłączam bluetootha...

    Mikrokontrolery ARM   24 Gru 2014 00:01 Odpowiedzi: 6    Wyświetleń: 1356
  • STM32f103rb - Brak odpowiedzi na RX przy komunikacji Modbus RTU po RS232

    Dzięki za pomoc. Dodano po 3 To teraz powinien być czas na odbiór danych w przerwaniu od RX z MAX485 ? [syntax=c] void USART1_IRQHandler(void) { if (USART_GetITStatus(USART1, USART_IT_RXNE)) { } } [/syntax] Jeśli maina mam takiego: [syntax=c] int main(void) { /*uruchomienie zegara*/ konf_zegary(); /*Initialize GPIOA PIN8*/ GPIOA_Init(); /*Initialize...

    Mikrokontrolery ARM   20 Maj 2016 08:51 Odpowiedzi: 150    Wyświetleń: 7734
  • 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ń: 3267
  • [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ń: 798
  • [ATMEGA162] ATMEGA162 UART 9600 bps, kwarc 11.0592 MHz, 3.3V – błędna konfiguracja USART?

    Mam problem z UART w ATMEGA162 16PU Procesor z kwarcem 11059200 Hz zasilany 3,3V Potrzebuje prędkość 9600 b/s #include <avr/io.h> #include<inttypes.h> #include<avr/interrupt.h> #include <util/delay.h> #include <avr/wdt.h> //#include"../lib/rs232.h" #define FOSC 11059000// Clock Speed #define BAUD 9600 #define...

    Mikrokontrolery AVR   25 Kwi 2009 16:52 Odpowiedzi: 2    Wyświetleń: 2387
  • 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ń: 543
  • [STM32] STM32F100RB: FreeRTOS i konfiguracja przerwań USART2 - jak to zrobić?

    W tablicy wektorów zupełnie nic nie zmieniasz (jak zwykle) - system masz połączony ze sprzętem poprzez te 3 definicje: #define vPortSVCHandler SVC_Handler #define xPortPendSVHandler PendSV_Handler #define xPortSysTickHandler SysTick_Handler Mam nadzieje że masz je w jakimś pliku dołączonym do port.c, np FreeRTOSConfig.h 4\/3!!

    Mikrokontrolery   12 Lip 2012 01:19 Odpowiedzi: 14    Wyświetleń: 4578
  • [STM32] [STM32][DMA][USART] Jak wywołać przerwanie po nadejściu znaku końca ramki?

    Manual o IDLE mówi: An Idle character is interpreted as an entire frame of “1”s followed by the start bit of the next frame which contains data (The number of “1” ‘s will include the number of stop bits). Czy ktoś może sprawdzał praktycznie kiedy faktycznie pojawia się flaga IDLE? Ja z powyższej informacji wnioskuję, że...

    Mikrokontrolery ARM   03 Mar 2017 12:25 Odpowiedzi: 32    Wyświetleń: 11763
  • 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ń: 2077
  • Jak wywołać programowe przerwanie w ATMEGA644 bez użycia wolnych pinów?

    W urządzeniu było mało USART, został użyty układ SC16IS760IPW. Teraz musze dodać kolejny SC16IS762IPW czyli dwa USART. Procek z USARTEM komunikuje się po SPI. Komunikacja to wysłanie adresu rejestru i zapis/odczyt danej. Teraz wszystko odbywa sie w pętli głównej, muszę jednak odbiór przenieść na przerwania. Jak sie łatwo domyśleć, nie może byc tak,...

    Mikrokontrolery AVR   18 Sty 2018 21:38 Odpowiedzi: 51    Wyświetleń: 2391
  • 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ń: 1497
  • [STM32F4] USART6 - Błędne znaki w przerwaniach Timera i USART

    Jeśli opierałeś się na moim przykładzie, to proponuję zajrzeć do dokładnie 35 linijki skryptu linkera i dobrze zrozumieć to co jest napisane w jej okolicy.

    Mikrokontrolery ARM   18 Sty 2017 17:39 Odpowiedzi: 1    Wyświetleń: 897
  • 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ń: 1089
  • Zarządzanie przerwaniami UART - Arduino Mega i wyświetlacz NEXTION

    Tak, zrobiłeś babola, ale rzeczywiście nie pytałeś jak go naprawić. Wyżej dostałeś sensowne odpowiedzi na pytanie którego bezpośrednio nie zadałeś. Jeszcze raz: nie czekaj na pomiar. Obsługa DS18B20 to od kilku do kilkunastu milisekund. Wracając do Twojego pytania: przerwanie po otrzymaniu danych: [syntax=c] ISR(USART1_RX_vect) { int data = 0; ... }...

    Arduino   27 Gru 2021 10:53 Odpowiedzi: 12    Wyświetleń: 792
  • STM32F10x stm32_blink_led i wejście w złe przerwanie.

    Witam, Ustawienie __main_stack_size = 1024; nic nie pomogło. Mam jeszcze jedno pytanie które mi się nasuwa. Czy deklaracja funkcji obsługującej przerwanie("stm32f10x_it.c") powinna wyglądać tak: void USART1_IRQHandler(void) { Czy wymagane są jakieś dodatkowe atrybuty (__attribute__) ? W pliku out/*.lss jest zawarty kod obsługujący przerwanie:...

    Mikrokontrolery ARM   06 Lip 2012 18:05 Odpowiedzi: 12    Wyświetleń: 1563
  • [xmega32A4U] Przekierowanie outputu z USART do zemulowanego RS232 pod USB

    Witam, postanowiłem przenieść swój układ z atmegi na atXmegę. Do tej pory do komunikacji urządzeń po serialu używałem biblioteki SoftwareSerial (Arduino) bo układ miał tylko 1 fizyczny serial. Teraz w Xmedze mam ich 5 :) Wgrałem [url=ten]http://mikrokontrolery.blogspot... programik i wszystko...

    Mikrokontrolery AVR   16 Lut 2019 14:56 Odpowiedzi: 1    Wyświetleń: 570
  • [STM32F072][C] - wysyłka łańcucha UART - przerwanie nadawcze

    Proponuję Ci zerknąć na ten kod - https://github.com/DISTORTEC/distortos/b... - robi dokładnie to co chcesz osiągnąć i w dokładnie ten sam sposób. Tutaj kod przerwania - https://github.com/DISTORTEC/distortos/b...

    Mikrokontrolery ARM   19 Maj 2018 17:55 Odpowiedzi: 13    Wyświetleń: 675
  • Attiny3226 20MHz – zaniżony odczyt ADC na AIN6, UART,

    A co na to woltomierz? Widzi jakieś zmiany? I skoro ustawiłeś wzmocnienie na tysiąc, czyli zmiana o 1mV da zmianą na wyjściu o 1V. To dlaczego ustawiłeś Vref na 1.024V? I z twoich kodów przetestowałem to: https://obrazki.elektroda.pl/4276604500_...

    Mikrokontrolery AVR   06 Wrz 2025 16:36 Odpowiedzi: 18    Wyświetleń: 474
  • UART - odbiór w przerwaniu zwraca KKKKKKKKKKK, nadawanie działa

    Ja bym zaproponował takie coś : [syntax=c] if ((USART3->SR & USART_SR_TXE) && ( USART3->CR & USART_CR_TXEIE)) . . . [/syntax] I analogicznie dla pozostałych flag przerwań od UARTu.

    Mikrokontrolery ARM   25 Lis 2013 23:58 Odpowiedzi: 24    Wyświetleń: 2973
  • Wybór zestawu do zasilania elektroniki: Inwestor PROTECTOR SINUS 1000 czy Volt Sinus Pro 500E?

    Oba UPSY pracują w trybie przełączanym, czyli odbiornik jest połączony z siecią i jak UPS wykryje że coś jest nie tak, to odpina odbiornik od sieci i uruchamia przetwornicę. Jeśli chcesz się bardzo zabezpieczyć, to są takie w technologii online. Są droższe i żrą więcej prądu. Z agregatem bym uważał, dobrym zwyczajem jest obciążyć agregat żarówką tradycyjną...

    Elektryka Dla Każdego   19 Sty 2025 14:03 Odpowiedzi: 6    Wyświetleń: 210
  • [ATMega8][c] - problem z tablicą uzupełnianą w przerwaniu

    Wystarczy policzyć. 19200 bps = 1920 znaków na sekundę, czyli znak co ~0,5 ms. Przy taktowaniu 4MHz masz +/- 2080 cykli procesora pomiędzy przerwaniami od UARTa, czyli duuużo czasu na wykonywanie instrukcji w pętli głównej. Na Twoim miejscu skupiłbym się na przetwarzaniu tekstu np. linia po linii - przerwanie wypełnia bufor, a po wykryciu sekwencji...

    Mikrokontrolery AVR   03 Paź 2009 19:03 Odpowiedzi: 21    Wyświetleń: 2956
  • [Atmega88] Jak skonfigurować USART w Atmega88 z Realterm przez RS232?

    Pokaż kod. Nie wysyłaj znaków bez przerwy - zrób jakąś przerwę po każdej serii znaków, czyli np. delay() w pętli.

    Mikrokontrolery Początkujący   21 Wrz 2015 20:25 Odpowiedzi: 27    Wyświetleń: 2289
  • STM32F103RB - UART w przerwaniu nie działa, brak wywołania przerwania

    Witam, Próbuje uruchomić komunikacje uart w przerwaniu, no i oczywiście mam problem z tym, że nie działa :o Wygląda na to, że przerwanie wogóle nie jest wołane. Czy ktoś z szanownych forumowiczów mógłby zerknąc w kod i podzielić się informacją dlaczego ten program nie ma szansy działać? USART_SendData(USART1, 'X') do main'a działa ok. Jak również użycie...

    Mikrokontrolery Początkujący   12 Sie 2013 13:05 Odpowiedzi: 3    Wyświetleń: 912
  • [M16] Jak obsłużyć przerwanie UART i string w M16 przy baudrate 57600?

    Prawie że na kolanie napisane: #include <avr/io.h> #include <avr/interrupt.h> #define USART_BAUDRATE 57600 #define BAUD_PRESCALE (((F_CPU / (USART_BAUDRATE * 16UL))) - 1) // maksymalna liczba znaków polecenia #define UART_MAXBUFF 16 // bufor znaków polecenia (UART_MAXBUFF znaków + jeden pod znak zero)...

    Mikrokontrolery AVR   03 Lip 2008 19:30 Odpowiedzi: 10    Wyświetleń: 4927
  • Dziwne zachowanie UART przy znaku nowej linii [m128][C] - jak to naprawić?

    tak wygląda: :) USART0_Transmit() - prosto z datasheeta ////////////////////////////////////////... void USART0_Transmit( unsigned char data ) { /* Wait for empty transmit buffer */ while ( !( UCSR0A & (1<<UDRE0)) ) ; /* Put data into buffer, sends the data */ UDR0 = data; } ////////////////////////////////////////...

    Mikrokontrolery AVR   16 Lut 2010 22:21 Odpowiedzi: 12    Wyświetleń: 1556
  • [C] procedura obsługi przerwania - podstawy podstaw.

    Nie wiem jaki to uP ale np. dla ATmega16 wygląda to tak: Włączasz przerwanie: UCSRB|=(1<<TXCIE); sei(); //dostępne globalne przerwania A tu jest podprogram obsługi przerwania: ISR(USART_TXC_vect) { cbi(PORTB, PB2); //0 na pinie PB2 } aha i jeszcze musisz włączyć bibliotekę: #include <avr/interrupt.h>...

    Mikrokontrolery AVR   08 Sie 2008 20:12 Odpowiedzi: 4    Wyświetleń: 1915
  • [STM32] [STM32][C/KEIL] Podwójny odbiór znaku przez USART w przerwaniu - jak naprawić?

    Witam, Mam problem, mianowicie gdy nadaję z PC do procka np. znak "1" to otrzymuję "11" dodam, że odbieram w przerwaniu. Konfiguruję USART w stm w następujący sposób: [syntax=c]void USART_Configuration(void) { GPIO_InitTypeDef GPIO_InitStructure; USART_InitTypeDef USART_InitStructure; USART_ClockInitTypeDef USART_ClockInitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GP...

    Mikrokontrolery ARM   25 Gru 2011 10:59 Odpowiedzi: 3    Wyświetleń: 2043
  • 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ń: 2490
  • Modbus RTU Slave - Ekstremalnie uproszczony modbus.

    Main: Dodano po 2 (at)stracho Jakie opóźnienie proponujesz ? Poniższe nie pomaga: [syntax=c] void Delay(uint32_t delay) { while (delay--); } [/syntax]

    Mikrokontrolery   14 Wrz 2016 10:14 Odpowiedzi: 13    Wyświetleń: 3261
  • STM3210E-EVAL: USART nie generuje przerwań dla wszystkich znaków ATR

    Witam ponownie Troche czasu minelo i zdazylem bardziej doglebnie poznac ten zestaw ref. jak i sam procesor STM32. Niestety wraz z rozrastaniem sie projektu powracaja stare bledy i tak: W trybie SC USART nie generuje mi przerwan dla kazdego znaku, tzn.: Przy wysylaniu przez karte ATR w stanie RSTIN LOW moj soft dostaje tylko jeden bajt (pierwszy z ATR)...

    Mikrokontrolery ARM   25 Cze 2010 11:23 Odpowiedzi: 1    Wyświetleń: 1539
  • Jak skonfigurować UART w ATmega8 do komunikacji RS232 w avr-gcc?

    To jest program pod ATmega32 ale powinien dzialac #include <avr/io.h> #include <stdlib.h> #define F_CPU 8000000 // 8MHz zegar procesora #define CYCLES_PER_US ((F_CPU+500000)/1000000) // cpu cycles per microsecond // #define UART_BAUD 19200ul //prędkość transmisji w bodach (tu 19200 bodów) #define UART_CONST (F_CPU/(16ul*UART_BAUD)-1...

    Mikrokontrolery   06 Kwi 2005 20:16 Odpowiedzi: 1    Wyświetleń: 2504
  • 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ń: 1992
  • STM32F4 - UART: Przerwanie trafia do Default Handler zamiast obsługiwać UART

    Startupu Freddiego nie znam, ale ta obsługa buforów nie wygląda na działającą. Zwykle tail wskazywał pierwszy bajt zajęty, a nie ostatni wolny. No i powinno być void USART1_IRQHandler(void) Mam nadzieję, że kod jest pisany w C, a nie w C++.

    Mikrokontrolery   08 Sty 2013 23:05 Odpowiedzi: 18    Wyświetleń: 2472
  • Arduino - Czy jest obsługa przerwania z UART bufor nadawania pusty

    Jeżeli używasz klasy Serial, to tam to już jest zaimplementowane. Jeżeli nie, tu uważaj na możliwe problemy linkera (duplicate reference, symbol already defined), bo domyślna funkcja main, ta, która w pętli odwołuje się do funkcji loop, ma referencję do klasy Serial i przez to, może nie być możliwe instalowanie własnej obsługi przerwania UDRE_vect,...

    Arduino   14 Paź 2014 22:23 Odpowiedzi: 2    Wyświetleń: 2562
  • atmega8 - UART przerwania - dioda nie gaśnie po odebraniu danych UART

    oraz jeszcze: 1. stosujesz stare funkcje obsługi przerwań a nowe wektory - stosuj nowe funkcje ISR(): http://nongnu.org/avr-libc/user-manual/g... i wywal nagłówek #include <avr/signal.h> 2. returny w funkcjach ISR() i main() są zbędne. 3. Ostatnia uwaga kol Zaquadnik jest baaaardzo istotna. Nie dość, że czekasz w funkcji...

    Mikrokontrolery AVR   21 Lip 2015 21:56 Odpowiedzi: 9    Wyświetleń: 1668
  • [STM32F107VBT6][C/Keil] Obsługa I2C slave przez przerwania

    Sporo się namęczyłem, zanim ruszył mi slave transmitter w STM32F103. W 107 będzie tak samo. Po pierwsze zobacz do errat - tam między innymi napisali, że przerwanie i2c musi mieć najwyższy priorytet, bo inaczej się wiesza. Poza tym przykłady nie zadziałały mi od razu, a problemy mają też inni, o czym możesz poczytać na main.c // main.c main()...

    Mikrokontrolery ARM   09 Lis 2011 08:30 Odpowiedzi: 9    Wyświetleń: 6454
  • [STM32][STM32F407] - [DMA][USART]złączenie dwóch kanałów USART, wysłanie trzecim

    Na 99% nie. Można kombinować z auto-reload i transmisją jednego bajtu, o ile uda się przekonać DMA, że docelowy UART jest pamięcią, a nie peryferialem i o ile będziesz miał pewność, że nigdy dane nie będą równocześnie nadchodziły w takim tempie, żeby zapchać nadajnik. Czyli: nawet gdyby się udało, to jest to rozwiązanie wysoce niepewne i zawodne. Co...

    Mikrokontrolery ARM   19 Cze 2013 20:58 Odpowiedzi: 4    Wyświetleń: 2502
  • [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ń: 3121
  • AtTiny2313 - USART nie działa z przerwaniami, co sprawdzić w kodzie?

    Witam. Staram się aby AtTiny2313 było odbiornikiem. Napisałem program z użyciem przerwań i problem jest taki, że nie działa. Nie mam bladego pojęcia co jest grane, ogarniałem notę producenta i jestem w totalnej kropce. Oto kod. Czy możecie spojrzeć swoim okiem i powiedzieć co może być nie tak? [syntax=c]void USART_Init(void) { UBRRL=(uint8_t)UBRRVAL;...

    Mikrokontrolery AVR   28 Lis 2013 17:21 Odpowiedzi: 1    Wyświetleń: 1104
  • atmega162 - RS232 na przerwaniu pomiędzy BTM a Atmega162

    Witam, mam taki problem. Otóż mam połączoną Atmegę162 z modułem Bluetooth BTM112. Połączone jest wszystko dobrze, gdyż komunikacja mi działa na programiku z użyciem SIGNAL(SIG_USART0_RECV) . Próbuję to przerobić na ISR(USART0_RXC_vect) jednak nie chce mi to zadziałać. Mam zamiar odebrać to co BTM wysyła od razu po nawiązaniu połączenia tzn "CONNECT...

    Mikrokontrolery AVR   31 Paź 2012 18:57 Odpowiedzi: 1    Wyświetleń: 1365
  • Xmega128A3 - uart na przerwaniach, biblioteka Atmela, echo na terminal.

    I bufor kołowy właśnie jest wykorzystywany w bibliotece Atmela :) (at)Piotrus_999 - uważasz, że powinienem napisać tutaj własne funkcje do obsługi uarta? Panie Tomku - rozumiem zamysł, poprawię kod :) Powiem może dokładniej co mam do zrobienia i dlaczego uparłem się na tę bibliotekę Atmela. Trochę mi nie wychodziło stąd wróciłem do początku żeby sobie...

    Mikrokontrolery AVR   09 Kwi 2017 14:24 Odpowiedzi: 6    Wyświetleń: 1011