Witajcie. Robię malutkie projekty korzystając z Bascoma. Do tej pory wyłącznie na 2313 i jakoś sobie radziłem. W nowym projekcie postanowiłem zastosować Atmega8535 i od razu natrafiłem na problem. Mianowicie po włączeniu przerwań od Timer0 nic nie działa jak powinno. Pomimo tego że procedura obsługi...
Witam, od jakiegoś czasu próbuję stworzyć sobie zegarek z termometrem + napięcie akumulatora do auta. Wszystkie programy osobno działają bez zarzutu. Problem zaczął się z chęcią wprowadzenia przełączalnych ekranów i wprowadzeniu przerwań. Doczytałem że przerwania skutecznie psują komunikację z DS'ami...
Dzieki Jaca to mi dziala,ale zastanawiam sie jak za pomoca jednego przerwania wykonac dwie czynnosci,tzn po wlaczeniu zasilania ukazuje sie menu wzmacniacza,buszujemy sobie po nim za pomoca 3 przyciskow: select,up i down.Teraz jak tylko przycisniemy 4 przycisk(mute) wywolujemy przerwanie i nastepuje...
Witam ponownie, Dziękuję za odpowiedzi, bardzo mi pomogły - zmniejszyłem rozmiar zmiennych, przez co zmniejszyłem czas przerwania (przynajmniej taką mam nadzieję), rozbudowałem trochę program. _delay_ms(40) stosowałem żeby przycisk po zmianie stanu nie "iskrzył" Niestety problem znów się pojawił: Program...
To co piszą Koledzy Twoim kodzie to sensowne konkrety. Podzielam ich zdanie na temat potrzeby zmiany koncepcji obsługi przerwania. Do Twojego przykładu idealnie pasują główne założenia "programowania przerwań" a szczególnie ta, że powinno być możliwie krótkie czasowo. Wg mnie, po obejrzeniu kodu, tkwisz...
Witam, piszę program do układu wykorzystującego żyroskopowy czujnik przyspieszenia (Adis 16355). Mam problem z niestartowaniem programu- mikrokontroler rozpoczyna pracę, jednak po wykonaniu sei(); resetuje się i rozpoczyna pracę od początku. Dzieje się tak jednak tylko wtedy, gdy przed sei();...
Wymyśliłem sobie, że będę obsługiwał klawiaturę matrycową 4x4 na płytce ZL3AVR w przerwaniu generowanym podczas naciśnięcia któregokolwiek klawisza (wyprowadzenie JP13 połączone mam z INT0), siedzę nad tym bardzo długo i nie mogę doszukać się swego myślowego błędu. Pierwszy wiersz (kolumna) działa...
Witam, chciałem podłączyć pod ATmegę 4 enkodery z myszek PC. Znalazłem taki kod w sieci: * * ENCODER - Checks rotary encoder and returns the following: * * 0: no movement * -1: ccw rotation * 1: cw rotation * *---------------------------------------...
Mam program, w którym uruchamiam przerwanie z pinu ICP. I wszystko działa jak należy, program jest przetestowany. Postanowiłem połączyć go z programem do obsługi karty pamięci pobranym z //**************************************... **** MAIN routine FOR Interfacing microSD/SDHC...
Witam Chcę skonstruować urządzenie, które oprócz zegarka mierzyłoby jednocześnie temperaturę i obydwie wielkości wyświetlałoby na wyświetlaczu LCD. Gdy programy napisałem osobno, obydwa działały, lecz gdy połączyłem je w całość, to czas odczytuję bez problemu, natomiast nie wyświetla mi się temperatura....
Witam, Jestem początkujący jeśli chodzi o programowanie ARM wiec proszę o wyrozumiałość. Mam problem z procesorem LPC 1768, konkretnie jest to płytka Mini DK-2. Od pewnego czasu walczę z problemami w przerwaniach i nie mogę sobie poradzić. Przewertowałem setki tematów na forach polskich i zagranicznych,...
Edit: DMA nie działało bowłączałem DMA2 a nie DMA1. Napiszę jak dalej pójdzie :] Cześć, mam pewne problemy z I2C, bazowałem na zmodyfikowanym kodzie od ST (jak mnie pamięć nie myli) najpierw używałem samych przerwań na najwyższym priorytecie jak ST przykazało, niestety od czasu do czasu zdarzało...
Walczę drugi dzień z obsługą ENC28J60 w przerwaniu i poległem. Niech ktoś rzuci okiem i powie co jest nie tak. Objawy mam takie: - pingi latają bez problemu - UDP działa bez problemu - TCP chodzi kulawo. Pierwsze połączenie przez przeglądarkę jest ok,wyświetla się strona, natomiast po wyświetleniu...
Witam, Program ma na celu zmierzyć amplitude impulsu PWM, wypełnienie i częstotliwość. O ile z pomiarem wypełnienia i częstotliwośći nie mam problemu, to pomiar amplitudy nie do końca działa. Szczegóły: PWM 1 kHz. 5 < D < 95 % Na zboczu narastającym sygnału PWM uruchamiany jest TIM3...
Witam, prosiłbym bym o pomoc, żeby ktoś wytłumaczył, albo podał przykład jak skonfigurować przerwania zewnętrzne w tym mikrokontrolerze bo walczę z tym i nic mi nie wychodzi i zaczynam podejrzewać, że to procek jest zepsuty, albo tej sztuki jeszcze nie opanowałem :D na początku pisałem własne kody,...
Fakt, ze jest milion różnych sposobów na zrobienie tego. Ok spróbuję tym sposobem co mi podsunąłeś. W sumie nawet lepiej tak. Dzięki. Dodano po 5 Ok, coś tam skleciłem, jest to niepełny program, bo nie ma w nim np. ustawień dla Mute i trybu, oraz nie pokazuje na LCD wartości, ale to później....
Witam Znów mam pytanie dotyczące kodu który pozwala na współbieżną obsługe lcd z main i przerwania przedstawiam tylko plik .c [syntax=c] #include "LCD_trans.h" #include <avr/interrupt.h> #include <string.h> #include <util/atomic.h> #include "defines.h" #include "hd44780.h" #include...
...A może ktoś z forum już bawił się na 168 tymi przerwaniami w praktyce i podzieli się wiadomościami czy działają?. Wprawdzie help milczy w temacie PCIEx , to wystarczy popatrzeć na sekcję w pliku *.dat interesującego na procka i już wiadomo co i jak ;) m88def.dat [INTLIST] count=25 INTname1=...
Witam, Zacząłem niedawno zabawę z STM32 i mam problem z przerwaniami oraz timerami. Chciałem uruchomić przerwanie zewnętrzne, a dalej przerwanie od timera co np 1sek. Jednak nie działa ani jedno ani drugie, czy ktoś mógłby nakierować mnie na dobrą drogę i powiedzieć co robię źle? Przeglądałem...
Napisałem sobie takie oto funkcje do obsługi DS18S20: #include <DS89C4xx.H> // biblioteka uC DS89C430 typedef unsigned char BYTE; // definicja typow danych typedef unsigned int WORD; sfr led_10 = 0x80; // port P0 wyswietla cyfre dziesiatek sfr led_01 = 0xA0; // port P2 wyswietla cyfre...
Witam. Od dłuższego czasu "walczę" z przerwaniem, które nie chce się za nic wykonać. Zrobiłem już wszystko co potrafiłem, ale niestety brak reakcji. Chodzi tu o układ z obsługą dysku twardego, który połączony jest z komputerem za pomocą MAX232 (RS-232). Procesor to Atmega32 z wewnętrznym oscylatorem...
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...
Witam, W chwili obecnej pracuje nad termometrem, sterowanym na pilota. Pilot wysyła dane w kodzie RC5. Wysłane dane trafiają na odbiornik podczerwieni TSOP31236 (36kHz). W momencie gdy dane nie docierają na wyjściu odbiornika jest stan wysoki, gdy odbierze jakiś sygnał na wyjściu jest poziom niski....
Witam Tak wygląda mój kod; [syntax=vb] '############# Petla_glowna ############# Do Gosub Sprawdzenie_klawiszy If Flaga_ok = 1 Then Flaga_ok = 0 Gosub Menu End If Loop End[/syntax] [syntax=vb] '... Przerwanie ############# Przerwanie: Incr Licznik_p If...
Witam Próbuję odebrać na komputerze (w programie bray terminal) dane, tzn. konkretnie temperaturę z termometru LM35. Niestety mam problem z odbiorem danych w przerwaniu od UART-u. Poniżej przedstawiam kod programu: [syntax=c] /* Wysyłanie do komputera wartości temperatury interfejsem USART mikrokontrolera...
Witam! Wykorzystując interfejs I2C chce komunikować się z akcelerometrem BMA180. Interfejs I2C zrealizowany sprzętowo za pomocą kontrolera I2C0 z wykorzystaniem przerwania.Samą komunikację już zrealizowałem, ale mam problem z jej rozwinięciem. Poniżej przedstawiam kod który działa "poprawnie". Główny...
Mam problem z przerwaniem od timera TMR16B1, tak jakby nigdy nie występowało przerwanie od niego albo mikrokontroler do niego nie wchodził. Napisałem analogiczny kod dla TMR32B1 i powiązana z nim dioda w kodzie LED2_PIN mruga, natomiast dioda LED1_PIN która w obsłudze przerwania TIMER32_1_IRQHandler...
Witam! Zrobiłem prosty projekt wysokościomierza ciśnieniowego. Wszystko działa w jak najlepszym porządku. Teraz muszę go przekonwertować aby działał na mniejszej płytce zasilanej z baterii. Z tego powodu postanowiłem użyć funkcji sleep i przerwań. Program ma działać tak: - w funkcji setup następuje...
Zastanawiam się, jak się odbywa zapis zmiennej 16 bitowej w procesorze 8 bitowym. Najpewniej najpierw przepisywana jest pierwsza połowa, następnie druga. A czy możliwe jest, żeby jeśli przerwanie wystąpi równo w tym momencie i będzie chciało odczytać wartość tej zmiennej to odczyta pierwszą połowę nową,...
Witam Wątpie, że mi ktoś pomoże ale cóż zależy spróbować. Nie mogę włączyć obslugi przerwań w moim procesorze. wiem że kod jest napisany prawidłowo gdyż testowalem na innym kompilatorze. Chodzi o plik startup, którego w sumie nie rozumiem. A może ktoś zna jakieś źródła wyjaśniające jak pisać takie...
Witam. Mam problem z przerwaniami w atmega8. Wcześniej nie potrzebowałem przerwań więc to zagadnienie mnie nie interesowało. Potrzebuję wywołać przerwanie zewnętrzne int0 które uruchomi timer1, a ten zacznie odmierzać czas. Napisałem coś takiego (oczywiście to część z większego projektu) '$sim $regfile...
Chyba zaczyna się ujawniać wyższość procesorów o możliwie długim słowie danych - nawet operacje 32 bitowe będą atomowe. Nie będą niestety o ile operacja RMW będzie realizowana przez kilka rozkazów, które mogą być przerwane. Będzie natomiast w systemie, który będzie modyfikować pamięć jednym rozkazem,...
hmm, przerwania co 20 instrukcji procesora ;-) Wydaje mi się, że nie uwzględniasz czasu pomiędzy wywołaniem przerwania a ustawieniem timera. Dla przykładu ; INTERRUPT ORG 0x004 ; interrupt vector location btfsc INTCON,T0IF ; TMR0 overflow goto serv_t0 retfie ; return from interrupt serv_t0 bsf PORTC,0 m...
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...
Witam! Nie mogę dojść do tego co się dzieje. W zamierzeniu program powinien czekać na ustalone znaki z USARTa i odpowiedzieć kilkunastoma znakami tekstu. Objaw jest taki, że po otrzymaniu 1 znaku odpowiada trzema prawidłowymi znakami a potem siedzi w przerwaniu z którego nie może się wykaraskać (tzn....
Witam, stworzyłem na płytce stykowej układ, gdzie podłączyłem przyciski, LCD hd47780, rtc ds1307 i buzzer. Korzystam z bibliotek do wyświetlacza od "radzia", TWI od p. Mirka oraz ze znalezionej na tym forum biblioteki do RTC. Napisałem szybki program, który wyświetla godzinę w formie hh:mm:ss na ostatnich...
A tu jest przerwanie [syntax=c] uint16_t licznik = 0x1000; ISR (INT0_vect) //obsługa przerwania INT0 { // Linia 1 - obrót w prawo if ((((PIND & 4)==4) & ((EICRA & 1) == 1 )) & ((PIND & 2)==0)) { EICRA &= ~(1 << ISC00); ++licznik; return;} //...
Witajcie moi drodzy W tym temacie poznamy podstawy przerwań i timerów w PIC18F2550 . Na początek będzie krótki wstęp teoretyczny, a potem wszystko przerobimy dokładnie na praktycznych przykładach. Do lektury tematu przyda się ogólna wiedza na temat przerwań i programowania w C, choćby taka...
Czesc ! Mam taki maly problem . Napisalem program w ktorym urzywam przerwanie . Wydaje mi sie cos zle robie .W przerwaniu mianowicie mam do wyboru dwa wyjscia , i tu wlasnie jest problem . Gdy urzywam drugiego wyjscia Call sub , przerwanie tak jakby juz nie reagoowalo . $large Config Lcd = 16...
Niestety nie podziałało. Sformuję pytanie inaczej: Jak wyjść z pętli do loop, w której znajduje się encoder(). ? dodam że pętla while wend w tym przypadku nie działa. Dodano po 26 Oto fragment mojego kodu: Program znajduje się w funkcji "ustawzwoje" naciskając włącznik (pinc.3) program przechodzi...
Nie jest możliwe, ale możesz wprowadzić zmienną pomocniczą i w zależności od niej w podprogramie obsługi przerwania zrobić warunek i skakać do innych podprogramów, np. ... dim temp as bit on int0 qwerty temp=0 ... 'tam gdzie chcesz zmienic temp=1 ... qwerty: if temp=1 then gosub q else ...
Nic to nie zmieniło. HandleEncoder jedynie sprawdza czy zmienna została zmieniona, nic tam nie wpływa na samo działanie interrupt'a. ponadto w Encoder.h obie funkcje są używane wielokrotnie więc to kiedy ja ich użyje i tak raczej zostanie nadpisane. Oto zawartość Encoder.h: [syntax=c]/* Encoder Library,...
Od razu mówię że kasowanie bitu nr 6 w rejestrze GICR nic nie daje, bo jedynie ukrywa przerwanie przed procesorem do czasu włączenia przerwania. Bit ten jedynie ukrywa przed procesorem ustawienie flagi. Flaga jednak i tak zostanie ustawiona przy zmianie stanu pinu PortD.2, nawet jeżeli wyłączy się przerwanie....
Witam, Próbuję korzystać z biblioteki Peter Fleury do obsługi usart-u, której listing znajduje się poniżej: PLIK uart.c /***************************************... Interrupt UART library with receive/transmit circular buffers Author: Peter...
Witam Od niedawna bawię się uC STM32 i krok po kroku próbuję nauczyć się ich obsługi. Słowem wstępu: Mam płytkę ZL31ARM, pewne doświadczenie z programowaniem w C/C++ i zupełny brak doświadczenia z mikrokontrolerami. Mam już za sobą mruganie diodami i proste pętle opóźniające; obecnie chcę nauczyć...
Witam, Mam pewien problem z Rc5 w bascomie, chodzi mi o to, że instrukcje odpowiedzialne za rc5 są wykonywane tylko kilka razy a później, kaplica coś się zapycha:) i pilot nie działa. Cała sytuacja ma charakter nieliniowy tzn. że raz wykryje 3 naciśnięcia przycisku na pilocie a raz np. 5. Po zresetowaniu...
Coś się w tym algorytmie nie trzyma kupy. Wciśnięcie przycisku zajmuje człowiekowi czas rzędu 1-10 sekundy (ok, przy trzymaniu palca na guziku daje się zejść do 1/40). Przez 1/40 sekundy przy 8 MHz próbkowaniu można zarejestrować 200 tysięcy próbek, a bufor mamy na kilka tysięcy. No to co my tu udajemy?...
Witam. Chciałbym zrobić odbiór danych z rs232 w przerwaniu. Programuje w C w WinAVR. Nie mogę znaleźć uchwytu przerwania od USART, jest jedynie od UART i nie chce działać. Nie wiem co robie źle. Dziękuję za wszelką pomoc. #include <avr/io.h> #include "delay.h" #include <avr/interrupt.h> #include...
Witam. Kłopot mam następujacy... walczylem dziś z modelarskim servo. Znalazłem program "gotowca" na AVRFreaks. kod poniżej: #include <stdio.h> #include <avr/io.h> #include <avr/interrupt.h> /******... Globale variable **************/ static enum {av1,paa1}...
Witam, walczę z tym cały dzień i nie potrafię zrozumieć dlaczego program nie działa. Próbuje poprostu "uruchomić" przerwanie podczas przepełnienia timera0. Jak widać niżej jest bardzo prosty kod który powinien zapalać i gasić diodę. Preskaler ustawiony na 1024, ustawiona odpowiednia flaga w rejestrze...
Sorry, Wiesz ja to sie z tym bawie tylko i program pisze w bascomie metoda prob i bledow. Za bardzo sie na tym nie znam tylko sobie przerabiam inne projekty na moje potrzeby. Chodzi mi tylko o to czy dobrze rozumiem te taktowanie procesora. no ale jak co to tu masz caly kod: $regfile...
tablica wektorow przerwań jest ustawiona na bootloader. chyba ze to źle robie... boottest2.elf: file format elf32-avr Sections: Idx Name Size VMA LMA File off Algn 0 .text 00000158 00001800 00001800 00000094 2**1 CONTENTS,...
Witam ,przeszukuje internet w poszukiwaniu rozwiązania na przerwania GPIO w gcc dla raspberry pi b+ , biblioteka wiringPi po mimo prawidłowo skompilowania kodu i ustawienia pinu , nie wykazuje w testach aby przerwanie od zbocza opadającego prawidłowo działało :( Dodano po 1 [syntax=csharp] #include...
Skąd wiesz, że przerwanie się nie wykonuje? Wnioskuję po tym, że wrzucając do przerwania instrukcję RTC_Read_Time() wyświetla się godzina 00:00, a jeżeli wrzucę ustawianie flagi to nic się nie wyświetla. Dalej - włącz podciąganie na linii przerwania. Znalazłem jedno miejsce w kodzie gdzie ten...
Witam, Próbuję zrealizować nadawanie i odbiór po magistrali I2C - STM32F01RET6 z okładem BNO055. Program zawiesza się na pętlach sprawdzających stan zajętości magistrali lub wygenerowanie START. Jak nie zawiesi się na pętlach to odczytuje jakieś dane ale tylko dla odczytów po 1 bajcie. W przypadku...
Wcześniej sprawdzałem czy wchodzi do przerwania z pustą główną pętlą w pragramie - włączałem buzzerka w przerwaniu tylko. Teraz, powinno być tak, że po wejściu do przerwania (w moim przypadku przy wciśniętym klawiszu) buzzerek powinien dzialac, ale i po wyjściu nadal brzęczeć - a tu nic. Po wyjściu z...
O ile pamiętam, właśnie wejście w procedurę obsługi przerwania spowoduje odłożenie na stos PC oraz PSW. Instrukcja reti zdejmie je ze stosu. Natomiast instrukcja ret zdejmuje tylko PC. O ACC musisz w każdym wypadku zatroszczyć się sam. Pozdrawiam :) Wejście w procedurę obsługi przerwania nie powoduje...
Witam, mam napisany spory program, w którym są min przerwanie FIQ i wszystko działa pięknie. Niestety pojawiła się konieczność obsługi odmierzania czasu co 0,125 ms. Początkowo miałem obsługę przerwania wrzucona do FIQ razem z przerwaniami zewnętrznymi. Ale żeby FIQ wykonywało się możliwie najszybciej...
Witam. Piszę sobie sterownik temperatury w Bascom '51 i mam problem z przerwaniem. Otóż serce układu to AT89C52 do niego jest podłączony RTC DS1678. Ustawiłem RTC, aby na wyjściu INT generował co sekundę impuls. Podaję ten impuls na wejście INT0 procesora. W obsłudze przerwań dałem ustawienie zmiennej...
Wkleję cały program: = 0x33" naprawiło problem, więc gdzieś tu tkwi szkopuł. Bo jeśli dobrze rozumuję , to: bajt XX10 XX11 & ~0x33 1100 1100 ( czyli ~(0011 0011)) bajt XX00 XX00 PD7 jest niepodłączone. PD6 to wyjście na tranzystor (przez rezystor). Nie mam...
Witam. Mam taki dziwny problem - odpalam sobie przerwanie co 10ms, w nim chciałem zrobić coś w stylu bufora dla danych wejściowych, ponieważ mam przerwanie z innego timera, które trwa dość długo (odczyt temp, ustawienie na podstawie tej wartości stanu wyjść, wypisanie temp. na lcd). Na to przerwanie...
Użytkuję płytkę STM32F429-Discovery, środowisko budowałem w oparciu o poradnik od Freddiego, makefile oraz skrypt linkera także od Freddiego, tak słowem wstępu. Problem który napotykam jest związany z powrotem z przerwania EXTI0. Jeżeli przerwanie zostanie wyzwolone, w tym przypadku pojawi się zbocze...
Tak, masz racje, wewnatrz przerwania robisz normalne call (czy lcall) i wracasz RET (czy return). RETFIE tylko na zakonczenie procedury przerwania. Tak jak piszesz, RETFIE rozni sie od zwyklego RETURN odblokowaniem przerwan (dlatego nie uzywa sie go wewnatrz, zeby nastepne przerwanie nie zostalo wywolane...
Witam! Mam następujący problem: Kiedy włączam obsługę przerwania z portu szeregowego, procesor strasznie zwalnia, nie wyrabiam się w czasie z programem... Program jest w Bascomie, kontroler to Atmega32. Wszystko zwalnia tragicznie, nawet jeśli w podprogramie przerwania napiszę od razu powrót: Serial_int: Return Sprawd...
nie chcę siać zamętu, ale jeśli dobrze pamiętam to istnieje błąd w Bascomie, który źle kompiluje powrót w subie zawartym w przerwaniu (wstawia RETI zamiast RET) Obecnie takiego błędu kompilator nie wykazuje: ;---- test.bas ----------------------------------------...
Steruje dwoma silnikami, jednak chciałbym aby jeden z nich się zatrzymał i zaczął cofać przez kilka sekund w momencie załączenia krańcówki. Podpięcie pinów opisane w kodzie. Krańcówka pod INT0 i pod INT1 i z drugiej strony do masy. Wąs = krańcówka. $regfile = "m8def.dat" $crystal =...
Witam, Mam problem z realizacją przerwania z USART3 na STM32L152RBxx. W momencie wywołania przerwania debugger zatrzymuje się na funkcji default_handler(). Poniżej umieszczam kod: main: #include "stm32l1xx.h" #include "stm32l1xx_conf.h" #include <string.h> void GPIO_Conf(void); void...
Wykonałem pewien test na moim algorytmie. (at)dondu , zmienna intliczba znacznie odbiega od wartości przechowywanej w licznik . W niektórych przypadkach zwiększa się nawet od 5 do 10 razy przy jednym skoku impulsatora. Z testu wynika że procesor reaguje na każde drgnięcie, uruchamiając kolejne...
Witam Procesor ATmega328 Napisałem krotki programik ukazujący na wyświetlaczu liczbę zmian stanów po naciśnięciu przycisku, w którym nie został zaimplementowany debouncing. [syntax=c] typedef enum {wyzwalanie_zboczem,wyzwalanie_poziomem} TRYB; inline void ustaw_wyzwalanie_zboczem(void) { ...
Podczas obslugi przerwania wykonuje inkrementacje jakiegos tam rejestru GPR, ale czemu podczas obslugi kolejnych przerwan rejestr ten nie zwieksza sie ? Dodam ze jak wpisze konkretna wartosc to podczas przerwania wpisuje sie ona do rejestru, ale jak juz z kazdym przerwaniem chce zwiekszac zawartosc rejestru...
Witam Mam dwa układy: nadajnik (ATMega88, MC145026), odbiornik (ATMega16L, MC145027). Narazie połączyłem MC145026 z MC145027 kablem. Piny przerwań INT0 i INT1 w ATMega16L mam już zajęte. Chcę wykorzystać przerwanie INT2. Napisałem programy i niestety coś jest nie tak. Odbiornik nie wykrywa przerwania....
Witam serdecznie. Piszę program, w którym muszę zliczać przychodzące impulsy z licznika energetycznego do procka. Aby nie zliczać impulsów pochodzących od drgań styków wymyśliłam takie rozwiązanie. Jeśli na INT0 przyjedzie zbocze opadające, włącz licznik T0. Gdy licznik przepełni się- minie 32ms i...
witam mam zrobioną obsługę wyświetlacza led na przerwaniach i problem z odbieraniem znaków przez uart mianowicie uart "gubi" znaki podczas odbioru, jeżeli wyłączę przerwania przerwania problem znika, niestety wyświetlacz muszę mieć zrobiony na przerwaniach i nie wiem jak mam się z tym problemem uporać....
oprócz zmiennej temp reszta czyli aż int0_flag jest volatile większa cześć kodu jest z słynnej ostatnio książki na forum. jeszcze nie zdążyłem za dużo pozmieniać [syntax=cpp] /* * main.c * * Created on: 2012-02-14 * Author: Jacek */ #include <avr/io.h> #include <stdlib.h> #include...
Od kilku dni zabawiam się kamerką OV7670, próbuję pobrać z niej obraz w formacie RGB565 i o mało ambitnej rozdzielczości QCIF(bo taki zmieści się w całości w RAM). Program, który napisałem ma za zadanie w przerwaniu pobrać obraz do pamięci, zatrzymać przerwanie i zapisać zawartość do pliku bmp. Oto mój...
Witam Poniżej załączam kod, który ma sterować wyświetlaniem informacji na LCD oraz zmianą koloru podświetlania. Niestety po upłynięciu czasu ( różnie, czasem kilkanaście minut, czas kilka godzin ) procesor zawiesza się i na LCD wszystko się zatrzymuje. Wstawiam tylko część kodu którą obsługuję RC5,...
hmmm chyba sie nie myle bo co to jest jak nie fragment parsowania linii NMEA: header[0] = header[1]; header[1] = header[2]; header[2] = znak; if ((header[0] == 'G') && (header[1]...
Mam problem z rozumieniem języka ASM. Niby wszystko działa OK ale jest pewien fakt dla mnie niezrozumiały i aż zjadam zęby. Krótki opis działania programu: w podprogramie ustawiany jest 7 bit w zmiennej bajt który następnie jest sprawdzany w głównej pętli i jeśli jest ustawiony to zmienia się na 0 logiczne,...
Witam, po małej przerwie, niestety mój problem jest nadal aktualny, wkleiłem podany kod i to całkowicie wywaliło program. to mój plik startowy, prosze o jakąś rade .global _etext // -> .data initial values in ROM .global _data // ->...
Mam program, tak jak poniżej, nie reaguje na przerwanie z int0 i int1. Program ma sterować silnikami od drzwi garażowych '--------------------Sterownik bramy by Peter507------------------------------' ... Interrupts Enable Int0 Enable Int1 On Int0 Przerwanie On Int1 Przerwanie1 Dim Licznik...
Witam I mam znowu kolejny z UART, a dokładniej chodzi mi o przerwania wyzwalane przez znak przychodzący. Chciałbym odbierać trzy znaki(ramki, bajty) a następnie zapisywać je do zmiennych i sprawdzać czy spełniają warunek znajdujący się w głównym programie. Niestety coś nie działa, wygląda to tak jakby...
Witam ,napisałem sobie następujący program który ma pełnić funkcję prowizorycznego zegarka. W obsłudze przerwania timer inkrementuję sobie sekundy , ale gdy chce wyświetlić je w main ciągle wyświetla zero na led. Natomiast gdy ostatnią linijkę kodu zamieszczę w obsłudze przerwania działa ok . W związku...
Witam. Problem jest nastepujacy. mam dzialajacy kod komunikacji miedzy atmegami po SPI. Odbior danych po stronie slave w przerwaniu ,po stronie master w funkcji : char SPI_MasterReceive(void) { ... = 0xFF; /* Wait for reception complete */ while(!(SPSR & (1<<SPIF))) ; /*...
Nie jestem za biegły w timerach i się ciut pogubiłem. Proszę zatem o podpowiedzi. Próbuję ustalić ile czasu będzie trwał impuls podawany na INT procesora a jednocześnie zmierzyć czas od początku tego impulsu do początku następnego. Jednym uP podaję impulsy na drugi uP. Do Portc.7 = 0 ...
...A procedura obsługi przerwania to odczytanie bitu z portu: if pind.3=1 then set data Okrojona czesc kodu ktora daje efekt o ktorym mowilem: Odczyt_bitu: Reset Portc.3 Set Portc.3 If Pind.4 = 0 Then Reset Typdanych Preamb = &B0101010101010101 ...
Właśnie z tymi pinami jest problem, bo na płytce prototypowej DVK90CAN1 mam głównie PORTF wolny (gniazdo J20 ANA CON), a nie mogę pin headów dolutować do niej :( Szukałem różnych sampli i już na starcie coś nie śmiga, bo dałem prosty warunek, że jeżeli na porcie przyjdzie jakiekolwiek echo, to ma...
Witam. Jestem w fazie pisania programu z zegarem DS3231 i atmegą16. Mam podłączone wejście INT0 atmegi z wyjściem INT/SQW DS-a. Podciągnięte rezystorem 10k do 5V. I nie wiem co robię źle ale procesor nie reaguje na sygnał przerwania z DS-a. Powiem szczerze że nigdy nie korzystałem z przerwań zewnętrznych...
Witam Próbuję zrealizować obsługę rs232 za pomocą przerwań. Najprostsze fragmenty kodu z noty katalogowej służące do sprawdzenia poprawności transmisji działają, zatem wykluczam tutaj jakiekolwiek przyczyny ze sprzętem i przedstawię tylko kod. plik main.c: • Bit 5 – UDRIE: USART Data...
Witam, Mój cel to: Odbieranie danych poprzez usart, Sposób testowania aplikacji to: debugger w atmel studio 6 poprzez wyklikiwanie wartości bitów w IO View Problem, z którym walczę: Dwukrotne wywołanie ISR(USART_RX_vect) Ok, teraz opiszę problem nieco dokładniej. Zacznę od kodu (okrojonego): [syntax=c] #include...
Witam, cały dzień męczę się z obsługą przerwania od odbioru danych w STM32103RB. Korzystam z biblioteki HAL. Po całym dniu dalej nie wiem jak to ma wyglądać, dostępne example robione są w STM32CubeMX, a ja z tego nie korzystam. W dokumentacji chyba nie potrafię się poruszać bo nie wyiskałem z niej...
Witam. Przerwań timerów dawno już nie używałem, ktoś zechciałby przypomnieć, w jaki sposób wyliczono w poniższym programie wartość Timer1, równą 64566? Fragment programu do sterowania fazowego (włączanie triaka na pewien okres czasu), autorstwa Kamila Kozłowskiego: $crystal = 10000000 (...) Inttim1:...
witam mógłyś się wyrazić nieco jaśniej :D "w każdym z nich przerwanie od timer0"... licznik po przepełnieniu wygeneruje przerwanie bezwzględu na to gdzie w danej chwili jest główny program (jeśli jest odpowiednio skonfigurowany) opisz dokładnie co chcesz zrobić :) pozdrawiam Dodano po 1 ...
Napisałem taki program , który steruje pracą licznika za pomocą dwóch przycisków podłączonych do portów z wykorzystaniem przerwania INT0 , 1 . Naciśnięcie przycisku S1 (P3.2) powoduje rozpoczęcie zliczania impulsów , a S2 (P3.3) zatrzymanie i wyświetlenie wyniku.Wszystko działa bezproblemowo , ale jest...
W zamieszczonym poniżej kodzie pokazuje wywołanie funkcji irq_request i jako przykład funkcję obsługi feralnego przerwania. ..cd. #ifdef AT91_CONFIG set_irq_chip(AT91RM9200_... &irq_spartan); // at91_set_gpio_input(pin, use_pullup); at91_set_gpio_input(AT91_... 1); // at91_set_deglitch(pin,...
Witam Właśnie piszę program do sterowania diodami na dyskotekę tzn. wąż świetlny. Projekt jeszcze nie jest skończony ale niby działa i niestety pojawił się problem. Przycisk Sv1 Alias Pind.3 służy jak na razie do wyboru programu (zwiększa o jeden) Na razie jest 6 programów. Owy przycisk działa...
Witam! Uczę się Bascoma i postanowiłem napisać "stoper" sterowany z pilota (pilot nadaje w standardzie rc5). Najpierw napisałem pętlę odpowiadającą za ustawienie stopera za pomocą pilota. Zrobiłem to za pomocą przerwania INT0. Wszystko działało jak należy. Problem się zaczął jak skonfigurowałem timer0...
Pamiętaj jeszcze o tym że jeżeli UART nie nadąży wysyłać próbek to żadne FIFO Ci nie pomoże (w końcu się zapełni). Zauważyłem, że moja kolejka FIFO się zapycha :/. Sprawdzam to tym fragmentem kodu: [syntax=c] if (FIFO_READ - FIFO_WRITE < 2) { LPC_GPIO1->FIOCLR |= (1<<28); }[/syntax] w...
Nie zauwazylem zadnej struktury dla SysTicka poza tymi definicjami. Zajrzyj do core_cm3.h , tam jest gotowa funkcja z CMSIS SysTick_Config(uint32_t ticks) i tam też znajduje się odpowiednia struktura w tym headerze. SysTick jest dostarczany z rdzeniem przez ARM. Dlatego konfigurację NVIC, ITM czy...
Funkcja inicjalizująca wywołuje kilka innych, więc żeby po trochu nie wstawiać kodu, oto cały plik RC5_IR_Emul_Receiver.c : [syntax=c]/** ****************************************... * (at)file STM32F10x_RC5_Receiver_Lib/src/RC5_IR_Em... * (at)author...
przerwanie deklaruje tak Enable Interrupts Enable Int0 Enable Int1 On Int0 Prawo On Int1 Lewo i wszystko działa jak należy ale jak podam stan niski na stałe to cały procek sie blokuje a chciałem żeby w przerwaniu zrobił tylko tyle Prawo: Portb.0 = 0 Portb.2 = 0 If Startt...
Stworzyłem kod który powinien wyświetlać czas trwania stanu niskiego na lcd. Na wyświetlaczu pojawia się 0.0 ms oraz na przemian 1 lub 2 takt(czyli ile zliczył timer). Proszę o naprowadzenie na właściwy kierunek osiągnięcia zamierzonego celu. kod: [syntax=basic4gl]$regfile = "M8def.dat" $crystal...
[syntax=c]#include <avr/io.h> #include <avr/pgmspace.h> #include <avr/eeprom.h> #include <util/delay.h> #include <avr/interrupt.h> #include <string.h> #include <stdlib.h> #include "LCD/lcd.h" //dyrektywy dla preprocesora //dioda #define LED_PIN...
Spróbuj: [syntax=C] static void rxhandler(u32 znak) { //tu zrob cos pozytecznego z odebranym znakiem } //------------------------... void nextTxIsr(void) { u32 znak=txf[txi%TXFSIZE]; //wyjmij znak z fifo txi++;...
Witam, zrobiłem sobie płytkę małą, malutki prosty układzik na ATtiny88. Schematu nie wrzucam, bo jest bajecznie prosty i dobrze polutowany. Na pokładzie jest ATtiny88, dioda i przekaźnik z tranzystorem. Gdy wgram do mikrokontrolera taki kod: Dodano po 45 ok, już doczytałem. Te przerwania trzeba...
Witam Postanowiłem przetestować wszystkie przerwaniaw ATMEGA32. Program ma działać następująco: naciskam klawisz podpięty pod INT0 (podciągnięty rezystorem 1kom do Vcc) i licznik zlicza mi to naciśnięcie. Naciskam drugi klawisz podpięty pod INT1 (podciągnięty rezystorem 1kom do Vcc) i licznik zlicza...
pliki vectors.s i startup.s mam od Ciebie /***************************************... author: Freddie Chopin, http://www.freddiechopin.info/ * file: vectors.S * last change: 2010-04-08 * * chip: LPC2103 * compiler: arm-none-eabi-gcc...
Witam Zauważyłem, że w momencie wyłączania komputera z podpięty zestawem EVB następuje reset pracującego układu. Używam do zasilania i komunikowania wbudowanego na płycie EVB konwertera RS232/USB na FT232RL. Czy jest może wina zastosowania tego układu jako konwertera ? Może braku układu typu MAX232...
Plik Vectors.S załączam. Chętnie przeczytam co o nim sądzisz. [syntax=c]// #=======================================... # // # vectors.S // # // # ARM exception vectors (Olimex LPC-P2138) // # // # // # Copyright HighTec EDV-Systeme GmbH 1982-2007 // # //...
Wrzuciłem do AVR Studio 4.12SP3 kod w C i po skompilowaniu przez WinAVR (release 20060421, z poziomu AVR Studio) uruchomiłem symulację programową. Na ekranie program wykonuje swoją funkcję - czyli zmniejsza rejestr PORTA, lecz przy każdym przerwaniu generowane jest ostrzeżenie: AVR Simulator: Stack...
Witam, mam problem ze współdziałaniem PWM i przerwań z transoptorów. Objawy: Bez uruchamiania PWM'a transoptor szczelinowy ładnie liczy obroty silnika (podłączonego np na stałe do osobnego zasilania) . Z PWM'em działa jak wariat. Zlicza chyba też sygnały PWM. Myślałem, że jest to zakłócenie z silników....
Nigdy nie był mi potrzebny USART a tu wyszło że potrzebny i to jeszcze w przerwaniu. Siedzę już kawałek czasu nad tymi wypocinami i nic mi do głowy nie przychodzi. Proszę o pomoc - co jest nie tak. #include <avr/io.h> #include <avr/interrupt.h> #include <avr/signal.h> void...
A ja tu widzę jeden problem 'odebranie przerwania i przekazanie go dalej 'debounce eliminuje drganie stykow tych 9 przyciskow Przerwanie: Debounce Pind.2 , 0 , Obslugaprzerwania , Sub Return to nie zostanie wykonane Obslugaprzerwania: 'tu sobie robimy to co ma byc w przerwaniu...
Witam. Mam pewien problem z programem. Generalnie układ posiada 3 przyciski. Kontaktron - generuje przerwania (nie sugerować się nazwą, testuję to na zwykłym switchu) P_zeruj - Przycisk od zerowania wyniku P_mierz - Jeśli jest w stanie 1 to przerwania są włączone jeśli nie to wyłączone. I tu pojawia...
Proszę Was o pomoc Ponieżej umieszczam kod programu którego zadaniem jest zgaszenie i mruganie odpowiednimi diodami w zależności od naciśniętego klawisza na kompie.Komunikacja odbywa sie przez RS. Chciałbym ten program zmienić by stan zczytywania klawiszy był w przerwaniu a nie przy pomocy peli "if"...
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...
Witam, teraz pokażę jak tymczasowo uprościłem sprawę (chociaż niekoniecznie dobrze, ale teraz teoretycznie zniknęły problemy z atomizacją itd.). Martwi mnie jednak, że korzystając ze swojej tablicy, jak od przychodzącej nutki zamiast 24 odejmę 27 (trochę inna generowana częstotliwość), wówczas wolnozmienne...
sprawdź w dokumentacji czy aby po zresetowaniu flagi przerwania timera nie trzeba odczekać kilka instrukcji (2-3 NOP'y). Jeżeli tak jest, to w przeciwnym wypadku zaraz po wyjściu przerwanie otworzy się drugi raz i w tej sposób dioda mrugnie tak że tego nie zauważysz. Możesz to sprawdzić tak że diodę...
Witam, walczę z GPS i mam problem z Select Case: [syntax=basic4gl]Przerwanie_uart_... Run <> 0 Then Run = Udr Xor 36 'jeśli w udr jest asc("$"), to run=0 If Run = 0 Then Cntr = 0 Cntr2 = 0 ...
Piszę program, do czasowego wyzwalania migawki: Na pokładzie mam attiny13, tact-switcha, oraz diodę led i transoptor. Układ ma wysyłać impuls ok 300ms co określony czas. Czas ustawia się poprzez wciskanie przycisku - jedno wciśnięcie = 0.5s więcej. Dłuższe przyciśnięcie (pow. 3s) powoduje ustawienie...
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...
Ok ale czy zmiana stanu na IO zabiera aż 20 cykli? poza zmianą stanu nic innego się tam nie dzieje ;] funkcja zmiany stanu na wyprowadzeniu: [syntax=csharp] static __INLINE void GPIOSetValue( uint32_t portNum, uint32_t bitPosi, uint32_t bitVal ) { LPC_GPIO[portNum]->MASKED_ACCE...
Witam Chciałbym na początku zaznaczyć że jestem nowicjuszem w zabawach z programowaniem :) Napisałem program w języku C# na STM32F429I-DISCO pod czujnik HC-SR04. Ogólnie muszę zmierzyć czas od podania na wyjście stanu wysokiego do stanu wysokiego na wejściu. Zrobiłem to jako InterruptPort i obsługę...
Przepisałem praktycznie na nowo kod wzorując się ściśle na bibliotekach HAL. Niestety nic to nie daje. Porównałem nawet rejestry poszczególnych peryferiów: FLASH, RCC, GPIOB (SDA i SCL), I2C1, NVIC. Wszystko jest takie same do momentu wysłania adresu po magistrali. Poniżej zamieszczam screeny po wystąpieniu...
Witajcie!! Mam taki problem: ponizej załączam mój plik źródłowy main.c , programik jest prosty, zawiera dwa przerwania jedno od timera 0 (przerwanie na narastajace zbocze CAP0.0 pin P0.2) drugie przerwanie to przerwanie zewnetrzne od przycisku (przerwanie na narastajace zbocze). Do pinu P0.2 dołączam...
Witam, ostatnio zająłem się pisaniem stosunkowo prostej aplikacji na AVR ATmega8, potrzebnej mi na studia. Na celu miałem też trochę lepsze poznanie AVR. W czym problem : W moim programie chciałem przetestować typowe zachowanie uC, napisałem kilka prostych funkcji, włączyłem przerwania, zrobiłem pętle...
A dynamika jazdy się liczy. Dynamika by była gdyby miał co robić, ale jeżeli procek się nudzi ... Jak pisałem wcześniej autor sam musi zdecydować. Dodano po 3 Jeżeli przerwania by się gubiły yo nie można by zrobic zegaraka na procesorze a takąmożliwośc daje producent. Producent daje,...
Witam. Z definicji liczba instrukcji w obsłudze przerwania powinna być minimalna, by mogło się ono maksymalnie szybko wykonać. Tymczasem w przypadku mojego programu liczba instrukcji w obsłudze przerwania była stosunkowo duża. By wybrnąć z tego problemu zamierzam w przerwaniu ustawić flagę która...
Pin P2.0 generuje zbocza, a P3.3 ma je wychwytywać i generować przerwanie. Oczywiście P3.3 skonfigurowany jako CT16B0_CAP0 oraz ustawiony LPC_IOCON->CT16B0_CAP0_LOC dla P3.3. Pętla główna się kreci bo widzę, że zmienna i jest inkrementowana natomiast zmienne licznik, licznik2, przerwanie zawsze...
Napisalem w bascomie program ktory ma mierzyc czas trwania impulsu. Dokladniej jest to pokazane na rysunku w zalaczniku. Ale niestety program niechce dzialac a dokladniej pokazuje mi na lcd caly czas 101 i niewiem co jest grane bo moim zdaniem jezeli zmienia sie czas trwania impulsu to powinna sie zmienic...
w erracie nic nie ma. przepisalem funkcje do asm i niestety nie dziala, przestwilem fusy bity i nic, zmienilem zasilanie i taktowanie i nadal pudlo procedura testowa: .include "m8def.inc" .equ PAGESIZEB = PAGESIZE*2 ;PAGESIZEB is page size in BYTES, not words .DSEG Buffer: .DB...
rozwiązanie chyba najbardziej elastyczne, eleganckie i szybkie... samo GCC nie posiada tych cech? void __vector_1( void )__attribute__((signal,exter... __vector_2( void )__attribute__((signal,exter...
void IRQ_Handler( void ) __attribute__ ((interrupt("IRQ"&... IRQ_MASK 0x00000080 inline unsigned asm_get_cpsr(void) { volatile unsigned long retval; asm volatile (" mrs %0, cpsr" : "=r" (retval)...
Witam Przy pomocy Timera0 procesora ATmega168 tworzę falę PWM do sterowania silnikiem bezszczotkowym. Przerwanie od przepełnienia licznika załącza odpowiednie (w zależności od stanu czujników halla wirnika silnika) tranzystory mostka 3-fazowego a przerwanie od porównania wyłącza. Zależy mi na jak...
Witam. Próbuje uruchomić program testowy, który polega na tym, że po wysłaniu na RS-a liczby 2 dioda zapala się na okres 1 sekundy i na ten sam czas również gaśnie przez okres 30 s. Wysyłanie na port szeregowy wykonuje za pomocą przerwania z USART. Odmierzanie sekund z przerwania Timera w trybie asynchronicznym(RTC)....
Witam wszystkich, mam problem z obsługą przetwornika MAX1301 przez Atmege 32. Mianowicie przetwornik ten posiada 3 tryby pracy. W dwóch sygnał zegarowy podawany jest z zewnątrz, dokładniej przez linię SCLK interfejsu SPI. W trzecim trybie sygnał zegarowy podawany jest na przetwornik tylko podczas przesyłania...
Udało mi się zoptymalizować program do 107b RAM, wygląda na to, że zaczął działać. Wysyłam dane uartem takim tworem: void USART_Tx(unsigned char data) { while ( !( UCSRA & (1<<UDRE)) );/* Wait for empty transmit buffer */ UDR = data;/* Put dafta...
Witam, Mam taki problem. Próbuje w przerwaniu załadować odebrany znak do zmiennej c a następnie jeśli przerwanie nastąpi żeby wysłało na terminal odebrany znak. Jednak niestety wygląda to tak jakby przerwanie w ogóle nie następowało. Funkcje uart_getc i uart_putc działają ale niestety w przerwaniu nic...
Witam Problem polega na tym po nacisnięciu klawisza (pcf8574), atmega32 czyta kilka razy stan portu. Za pierwszym razem podaje dobra wartość a za ostatnim odczytem zawsze 255. Odczytuje port 2 lub 3 razy, chodź klawisz byl tylko raz naciśnięty. Kombinowałem juz z pętlami, zmiana czasu, nic nie dało...
Witam, Mam malutki problem dot. przerwań. Z tego co wyczytałem, gdy jest uruchomiony jakiś program główny (np. wypisuje liczby od 0 do 100 na wyświetlacz LCD) i przyjdzie przerwania (np. z Timera), to ten program "główny" jest zatrzymywany, następnie jest skok do etykiety, którą ma nasze przerwanie,...
Siemanko. Uczę się programowania mikroprocków w języku C. Aktualnie jestem na lekcji przerwań i pojawił się dziwny błąd, którego nie potrafię rozgryźć, może bardziej zaawansowani koledzy potrafili by powiedzieć co źle robię bo nie mam już pomysłów. Otóż cały program ma działać tak że diodka jest...
tak mam, DDRB |= (1<<0); PORTB &= ~(1<<0); int Odbierz() { ilosc = 0; nadawaj = 1; sei(); //wyslanie sygnalu while(ilosc < 70); ilosc = 0; nadawaj = 0; //wlaczenie odbierania DDRB &= ~(1<<2); //odebranie...
Nie wgrywałem, ale owszem, program taki jak Ty proponujesz będzie działał, ale jeśli pętla w funkcji main będzie miała więcej operacji do wykonania to takie miganie może wystąpić. Swoją drogą, piszę nieco przesadzoną opinię, bo przecież nie tak trudno zaimplementować mój algorytm, a wtedy wogóle zapominamy...
Czyli zrobić tak jak kolega tmf proponuje tak? W tej chwili dokładnie tak robię, że uruchamiam procedurę pomiaru temperatury dla 3/4 czujników po kolei z osobna dla każdego: [syntax=c] // pomiary temperatury void pomiaryTEMP(void) { /* tempWejscia; // Temp1 - tempStabilizacji; // Temp2...
Tak to jest jak się używa bibliotek, które "wszystko ułatwiają"... [syntax=C]/** * (at)brief Initialize and start the SysTick counter and its interrupt. * * (at)param ticks number of ticks between two interrupts * (at)return 1 = failed, 0 = successful * * Initialise the system tick...
Witam, czysto teoretycznie, przygotowując się do pisania programu, do poważniejszego projektu, zastanawiam się nad pewną kwestią, która nie była omawiana. Załóżmy że przepełnienie timera0 wywołuje funkcję funkcja1: *** *** *** return Ale w tej chwili działa funkcja funkcja2: *** *** *** return.....
Zamieszczam cały kod... [syntax=c] #define F_CPU 14745600UL #include <stdio.h> #include <avr/io.h> #include <util/delay.h> #include <avr/wdt.h> #include "../Biblioteki/i2cds1307.c" #include "../RTC_test/OLED.h" #include <avr/interrupt.h> #include <avr/sleep.h> #include...
Witam, Od samego rana próbuje skłonić mojego AVR do współpracy, chcę mianowicie, aby odebrał znak (slowo) w przerwaniu, a nastepnie wyswietlił go na wyświetlaczu LCD i odesłał odpowiedź. I problem jest nastepujący. Jeśli odbieram dane znak(słowo) bez przerwania (po prostu funkcją USART_Receive),...
Mam problem jestem początkujący napisałem program który ma za zadanie regulować włączanie wiatraka i czas z jakim ma pracować, jednocześnie mierzy temperaturę i nie działa tak jak powinno : Temperatura pokazuję co jakiś czas błędny pomiar np 124 , 32 , 98 procek się resetuje chińskie znaki...
Pozwolę sobie odkopać temat... i się nie zgodzić ;) Jeśli dobrze rozumiem wypowiedzi kolegi michalko12 m.in.: Domniemam.... to domniemał On, że: - grupowanie priorytetów odnosi się tylko do przerwań przechodzących przez NVIC - porównując priorytety dwóch przerwań: "zewnętrznego" (priorytet w...
Zacząłem testować ten kod i właściwie działa choć widzę, że zmienna keyhist przyjmuje wartość 0 lub 1 w zależności od tego czy przełącznik jest załączony czy wyłączony (na pinie mam HIGH lub LOW). W związku z tym warunek if działa tylko przy keyhist = 1. [syntax=c]byte keyhist = (keyhist <<...