Dziękuję za odpowiedz. Co do uwag - tak mam podpięte rezystory, a rozkaz _VB(INT0|INT1); rzeczywiście nie będzie działać poprawnie. Jeśli chodzi o drgania styków - zwykle je eliminowałem, ale w tym wypadku widziałem testując układ, że ich nie ma - chociaż w rzeczywistości były eliminowane...
Witam Piszę program, który ma mierzyć długość impulsu podawanego z zew. źródła jakim jest odbiornik RC, częstotliwość impulsów to 50Hz, a ich długość mieści sie w przedziale 1ms-2ms. To mój pierwszy program na AVR w którym obsługuje przerwania zew. i mam pewien problem, program już...
Witam Czy moze mi ktoś powiedzieć jak w poniższym programie do pamieci eeprom wew do komórki o adresie 1 jest wpisywana długość (adres ostatniej danej data)? Ściślej skąd pod adresem 1 bieże sie ilość danych data? Readeeprom Dlugosc , 1 'odczytuje adres końca napisu Pozdrawiam Pawli 'C019...
Co ile masz przerwanie od timera bo jak się domyślam stan klawiatury odczytujesz kilkadziesiąt razy na sekundę?? Napisze to po raz kolejny: Wywal odczyt po IIC klawiatury z obsługi przerwania!!! I rób to tak samo jak odczyt czasu w programie głównym na podstawie flagi. Po drugie po co odczytujesz...
Drodzy koledzy, Programując uC ATTINY13 natknąłem się na pewien problem związany z obsługą przerwania od czasomierza. Poniżej krótko co program mniej więcej ma robić. Do jednego z wejść mikrokontrolera doprowadzony jest sygnał. Pojawiają się tam impulsy o różnej długości i na...
Witam Chciałem oprócz standardowego pakietu dla wszystkich slave'ów wysyłać od czasu do czasu krótszy pakiet W masterze wysyłam tak: tylko dwa razy na dobę Przerwanie pętli For..Next - bajt 7 i 22 ( warunkowo, gdy pakiet krótszy ) zawierają wartość 255, która pełni role informacji...
Witaj Twoje obliczenia wyglądają na poprawne jednak wydaje mi się, że to cli() jest w złym miejscu. Z ustawień timera widze, że mierzysz "powolne" sygnały. Zatem twój program może nie zdążyć złapać przerwania od INT lub złapie tylko zbocze opadające, ale narastającego już nie, bo...
Generalnie, W Bascomie obsługa RC5 pozostawia wiele do życzenia dlatego też Mark w najnowszej wersji ma wprowadzić obsługę RC5 na przerwaniu ICP ("prawdziwie" w tle) według poniższego kodu, który udostępniam i polecam: [syntax=basic4gl] $regfile = "m8def.dat" $crystal = 8000000 Config...
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...
Kod aktualnie jest taki: [syntax=c] #include <avr/io.h> #include <avr/interrupt.h> int on_time=0; int potA=0; int freq=0; int potB=1023; void timer_on(){ TCCR1A |= (1<<CO...
Moj blad, po kazdym Sleep'ie jest taka funkcje Read_Comm(hCommDev, &Buffer_I Możesz w pętli testować długość odbieranego pakietu albo sprawdzać ilość znaków w buforze odbiornika, a jeśli nie znasz jego długości, przed następnym połączeniem opróżniać bufor odbiornika. Jeśli chcesz,...
Witam. Tworzę mały projekcik i natrafiłem na pewną zagwózdkę. Na początku wprowadzenie co układ ma robić i jak działać. Układ składa się z części analogowej, tzn. dwóch detektorów tonu (LM567) odpowiedzialnych za detekcję "bitów" łącza fizycznego. Chodzi o to, że rozpoznają...
Bytematch nie używa żadnego specjalnego przerwania że boisz się iż ci ich zabraknie ;) .... jakby było takie uzyte to zostałbyś poinformowany o tym w Helpie. Za to przykład, który wyczytałeś z forów internetowych rzeczywiście mógłby działać kiepsko i doszedłbyś szybko do wniosku,...
Witajcie moi drodzy Zapraszam na kolejną część mojego tutoriala PIC18F2550 i kompilatora SDCC . W tej części zademonstruję jak używać wyświetlacza 7-segmentowego z PIC18F2550 . Kod obsługi wyświetlacza będzie oczywiście napisany w oparciu o przerwania i timery . Cały...
Każda aplikacja osadzona na ogół zawiera w sobie zestaw funkcji. I nawet najprostsza, na przykład do regulowania temperatury, obejmuje szereg zadań, takich jak odczytywanie danych wejściowych od użytkownika lub z czujnika temperatury/wejścia ADC, wyświetlanie zasobów na wyświetlaczu LCD i...
Witam męczę się już od dawna z przerwaniem od timera 0. Wymyśliłem sobie że po przepełnieniu licznika 0 ma nastąpić przerwanie. Licznik 0 liczy od 0-255 chciałem miec kontrolę na częstotliwością wywoływania przerwania więc gdy przerwanie jest wykonywane wpisuję od razu do licznika konkretną...
Tak właśnie myślałem że używanie przerwań i poleceń wait nie jest dobrym rozwiązaniem. Dzięki za odpowiedź. To nie ma nic wspólnego. Po to są przerwania żeby w ten sposób z nich korzystać. Natomiast twój problem bierze się z całkowicie czegoś innego. Po prostu tak napisałeś...
Witam Szukam Osoby która przygotuje mi do przerywania zasilania. napiecie 3v maksymalna moc 3W. z możliwością zmiany długości czasu otwarcia od 15ms do 50s długość całej fazy stała 6s, urządzenie będzie pracować w 10m cyklach raz na dobę, Przeskok może być skokowy Całe...
:arrow: robię mały projekt: jeden słupek potrójnej sygnalizacji świetlnej, z przyciskiem, który będzie służył do zmiany długości cyklu świateł (jeden z pięciu predefiniowanych). :arrow: na chwilę obecną mam działające światełka, dodałem przerwanie przycisku (będąc świadomym...
W poprzednich odcinkach wiel;e osób zwracało ci uwagę, że tłumaczysz starocie, w dodatku starocie, w któych jest masa błędów i merytorycznych i implementacyjnych. Proszę nie brać tych uwag do siebie - krytyka dotyczy autora artykułu, co wynika zapewne z faktu, że od jego napisania upłynęły...
Dlaczego w przerwaniach zewnętrznych zezwalasz/blokujesz obsługę przerwania od Timer0- bo nie od timerów ale tylko od TIMER0. Zezwolenie ma obsługę przerwania od przepełnienia TIMER0 powinno być w main. Podobnie ustawienie bitów CS00- CS02. Ustawienie ich na 0,0,0 powoduje zatrzymanie licznika. To...
Witam!! Chce zbadać długość przerwy pomiędzy bitami na INT0. Napisałem coś takiego, ale nie wiem czy ma prawo działać?? Jak to zmodyfikować? Kod: ISR(INT0_vect) { int start_DCF=0; int licznik_50ms=0; int czas_przerwy; while(start_DCF==0&... { ...
Cześć. To mój pierwszy post na forum dlatego witam wszystkich. Post można podzielić na dwie części: to działa i to co nie działa. Zacznę od tego co działa. Do pinu PD0 przypisałem przerwanie. W procedurze obsługi tego przerwania zwiększam zmienną o 1 i wyświetlam na LCD. Kabelkiem...
IMO implementacje SPI na przerwaniach w przypadku SPI mają zerowy sens (jedynie jeżeli mamy problem z ilością RAM i liczymy każdy bajt ale wtedy można - a raczej trzeba się pogodzić z dużymi dziurami między paczkami). DMA w przypadku SPI jest dość łatwe do implementacji bo ilość danych...
Witam wszystkich. Parę razy już mi pomogliście, to może i tym razem pomożecie. Do nauki programowania uC w C wykorzystuję płytkę AVT3505, i o ile umiem pisać proste programy na niej, to z przerwaniami nie miałem do czynienia. A od pewnego czasu chodzi mi po głowie pomysł zbudowania komputerka...
Witam. Potrzebuję pomocy odnośnie tego podprogramu obsługi przerwania. Kod pochodzi z przykładowego pliku programu dołączonego do książki: //podprogram przerwania ----------------------------------------... T0_int(void) interrupt 1 using 1 { static BYTE count=0;...
Witam 1.Czy używając semaforów lub kolejek w przerwaniach, minimalny czas odebrania takiego semafora, lub kolejki wynosi Tick, czyli 1 ms? Czyli w teorii max 1000 razy na sekundę..? 2. Jakie niebezpieczeństwo niesie za sobą obsługa całego przerwania w przerwaniu np od USB, nie używając semaforów...
na początku programu ustawiam bity: GICR |= 1 << INT0; MCUCR |= (1 << ISC00) | (1 << ISC01); //przerwanie zboczem narastającym aby zezwolić na obsługę przerwań (INT0 w rejestrze GICR) oraz by przerwanie wyzwoliło zbocze narastające sygnału który...
Podczas obsługi przerwań podczas zliczania impulsów nie dzieje się nic innego poza inkrementowaniem tych dwóch zmiennych. Wkleiłem je tu w całości tak jak są. Poniżej zamieszczam przebiegi czasowe zarejestrowane oscyloskopem. Na potrzeby sprawdzenia długości trwania obsługi przerwań dodałem...
Dorzucam wersję z porządnym debouncingiem. Ten z BASCOMa jest zbyt uproszczony i nie nadaje się do profesjonalnych zastosowań. Po wciśnięciu jednego przycisku naciśnięcia innych przycisków są ignorowane do czasu puszczenia tego pierwszego. Zauważ autorze, że nie ma już nigdzie w kodzie...
Czy proces 1 może byc przerwany przez kolejną transmisję i co wtedy ma się dziać z niezakończonym procesem 1 ?? proces-1 - jest automatem satnów zależnym od zmiennej stanu "IOSTATE", odpowiedzialnym za odpowiednie zachowanie się układu na odbierane pakiety, inicjuje pakiety do wysłania,...
Czy twoja konfiguracja jest prawidłowa? [syntax=C] void rfStartup2(void) { GPIOA->BRR=0x800... delay(DELAY); spi(0x7|WR); spi(3); //xton=1,pllon=1 spi(0x03); //rxmpk=0 <-- TU ZMIANA, bylo 0x10(rxmpk=1) delay(DELAY); RFCS1; delay(DELAY); //RESET FIFUW RFCS0;...
Ja bym to zrobił tak. Jeśli czasy będą w sekundach. Ustawić CTC na 1 sekundę. W pętli głównej, lub przerwaniu ADC w zależności od wartości ADC ustawiamy zmienną x. Jeśli x > 0 to led świeci. A w przerwaniu od CTC deinkrementujemy x, x--;
Masz rację. Mam właśnie taką i działa w odległości 6km od miast. Może w weekend rzeczywiście przyjrzę się tej oryginalnej antenie i jej okablowaniu. 6km od miasta to mam na 5 cm żyły wewnętrznej wystającej z ekranu kabla antenowego (kabel i wtyczka z dawnych czasów, więc bez lipy)...
Tak. Po pierwszym przerwaniu. Chodzi o to, że odczytując MB20 dwukrotnie w kodzie OB1 możesz otrzymać dwie różne wartości. To samo w sobie nie jest nic złego, ale łatwo popełnić błąd w programie zapominając o tym fakcie. Teraz zrozumiałem po co używać przerwań gdy pętla programu...
Witam, Zwracam się z prośba o pomoc w rozwiązaniu problemu. Mianowicie mam dwa przewody o długości 50m każdy. Przekrój 0.5mm^2. Zależy mi na tym aby wykrywać zwarcie tych dwóch przewodów (nie zależnie na jakiej odległości) oraz przerwanie jednego lub drugiego. Do tej pory stosowałem...
Zrób sobie detektor kodów. Użyj dobrej biblioteki: Implementacja jest bardzo prosta. Od czasu gdy zacząłem stosować to już się nie bawię wpisanie tego od podstaw. Brzmi fajnie, tylko boję się czy nie spuchnie mi kod. Aktualnie mam 75% zapełnienia pamięci flash (wiadomości tekstowe...
Nie przerwiesz pętli for, while, do while jeśli nie będziesz w każdym obiegu pętli sprawdzał stanu, który ma to przerwać. Ta część: if (irrecv.decode(&results)){ long int decCode = results.value; się nie wykona w żadnej takiej pętli. Musiałbyś obsługę tego przenieść w przerwanie,...
Witam, Mam problem z przerwaniem. Chcę zrobić coś takiego, że po naciśnięciu przycisku zeruje się odliczanie. On Int0 Przerwanie Enable Int0 Config Int0 = Falling Enable Interrupts Dim I As Integer I = 0 Do Cls Lcd I Waitms 500 Incr I Loop Przerwanie: ...
erfro : no i w czym problem? Przeniesienie wektorów przerwań do sekcji bootloadera masz w trzecim poście aktualnego tematu, załączenie przerwań przez sei(). Robisz jeden bufor FIFO o długości 1KB (można mniej) w oparciu o tablicę i dwa kursory, w przerwaniu od usartu zapisujesz bajt do buforu...
No, coś mi się wydaje, że jednak może nie do końca rozumiesz właśnie to wszystko i stąd takie podajęcie. Co to w ogóle dla ciebie znaczy, że: Bo niby po czym innym program ma poznać czy odczytane dane pasują w tym określonym miejscu ? .... toż twoja próba obsługi tego przerwania...
Niezbyt to mądre pytanie. Bo co to ma niby znaczyć "w programie głównym będziemy używać przerwań"? Ale odpowiedz sama się nasuwa. Może nastąpić przepełnienie stosu. PIC-e nie mają normalnego stosu tylko specjalny stos sprzętowy umieszczony nie w głównym RAMie lecz w osobnych rejestrach....
Tylko dodam, że w pewnych okolicznościach nawet dla zmiennych długości 1 bajta operację trzeba zamknąć w atomic_block, np: if(x) x--; nawet dla x będącego zmienną bajtową, jeśli to samo x będzie modyfikowane w przerwaniu to całość musi zostać wykonana atomowo, inaczej będzie problem....
Dziękuję za podpowiedzi:) Wstawiłem konda 100nF, próbowałem wyzwalać przerwanie na niski stan jak i na zbocze opadające i dalej to samo.. Czy jeśli napiszę taki kod: ISR(INT1_vect) { _delay_ms(100); wh...
Witam, Napisałem program dobierający dane poprzez UART4 z wykorzystaniem DMA, komunikacja ma docelowo odbywać się z giroskopem. Pierwsza ramka danych ma jednak inną długość niż pozostałe. Czy można zmienić długość bufora DMA po odebraniu pierwszej ramki? Próbuję to zrobić w ten sposób,...
Witam! Chciałbym napisać program na PLC firmy Siemens 1200 obsługujący niżej przedstawioną myjnią samochodową. Zasada działania myjni w pigułce: 1. Kierowca podjeżdża samochodem pod panel i wybiera jeden z trzech możliwych programów mycia. 2. Samochód wjeżdża pod taśmę...
1. Podrzucę Ci pomysł, pomocny lub nie. Zrobiłem PWN Atmega8 (czyli straszny dziad) generator miłego dla ucha sinusoidalnego dźwięku (w oparciu o przerwanie timera). Czystość uzyskałem, gdy na samym początku przerwania ustawiałem wartość ze zmiennej do PWM, a potem mogłem ją sobie opracowywać...
1. setjmp / longjmp na pierwszy rzut oka by było miłym zestawem. Ale jak pomyśleć głębiej longjmp by musiał być wołany z przerwania, wywołaniu by pasowało zrobić to dla bezpieczeństwa jak każdą ambitniejszą funkcję przy odłączonych przerwaniach, i kto flagę wycofa? W moim umyśle...
Kabel usb wychodzący z klawiatury został przerwany. Po rozkręceniu wyciągnąłem jego resztki i jest to kabel 5-cio żyłowy a kolory to po kolei: czarny (gruby), czarny (cienki), zielony, biały, czerwony. Kabelek był zakończony 5-cio pinową wtyczką więc pewnie znajdzie się jakiś zamiennik. Zależy...
Wydaje mi sie , że ... Twój projekt ma chyba coś wspólnego z samochodem hmmm...:?: Do rzeczy: Czy możesz zdradzić w jaki sposób można to zrobić? Czy mam sprawdzać przy każdym przerwaniu timera, czy na którymś z wejść nie pojawił się impuls? Gdybyś zliczał impulsy kierując...
chciałeś przerwanie a wcale go nie używasz (prawie wcale). to Samo można zrobić w programie głównym poprostu sprawdzając stan scon.0 a tak zajmie mniej miejsca. Radze zmienić koncepcje. Rozumiem że chcesz żeby ci wypisywało jakieś cyfry czy znaki na lcd. No to zrób zmienna zliczajacą...
Witam Pod koniec wakacji kupiłem sobie zestaw radio plus antena do samochodu osobowego. Poszukałem opinii na temat radii i anten i wybrałem Presidenta Walkera i Lemma AT1200. Zestaw zakupiłem na allegro. Okazało się, że muszę przedłużyć kabel, więc pojechałem do sklepu aby go zakupić....
Dobrze, że jakikolwiek printf działa w tym kodzie... Te printf'y to w kodzie przykładowym były więc to nie ja dopisywałem. A z tymi fragmentami kodów będę próbował. Co do długości kodu w przerwaniu - wiem o tym i poprawię to, jak będę miał pewność, że przerwanie się wykonuje. Dodano: Witam...
Czy przez to, że tak wyładowałem to przerwanie może być problem z odbieraniem danych na czas? No nie masz tutaj strasznie czasochłonnych działań więc raczej nie w długości kodu obsługi przerwania problem leży. Co najwyżej możesz pominąć oryginalne biblioteki i dostać się do rejestrów...
Tak robiłem w poprzednim przypadku, kiedy impulsy były powyżej 1us, przerwania nie były potrzebne. Tylko że traciłem kilkadziesiąt porcji danych, kiedy musiałem przeliczyć z danych wynik. Teraz chciałbym system polepszyć, tzn zbierać długość impulsów poprzez przerwanie. Ponieważ urządzenie...
A tak mamy: Dwa przewody oddalone od siebie ok.2mm, długość przewodów ok. 60mm. W jednym z nich popłynął prąd rozładowania kondensatora 100nF przez mikroprzełącznik. A to jest napięcie w drugim. Mało- tylko 0.6V. Ale warunki mało optymalne- płytka stykowa więc trzeba dodać...
W jaki sposób można ustawić priorytetowość przerwań? Mam taki problem: Za pomocą przerwań zewnętrznych mierzę długość impulsów na 2 wejściach.Wszystko gra do póki nie podłącze do atmegi USART który wypytuje co jakiś czas o te dane. Kiedy leci pytanie i Atmega ma przerwanie od...
Witam:) Od kilku dni próbuję uporać się z CAN. Po początkowych próbach z inicjalizacją funkcjami bibliotecznymi odpuściłem je sobie na rzecz inicjalizacji za pomocą rejestrami. Nie podobało mi się, gdy odkryłem, że funkcje ustawiały bit 16 w rejestrze CAN_MCR Odpowiednie zegary, GPIO...
Jakiś czas temu stanąłem przed problemem znalezienia miejsca przerwania jednej z żył w przewodzie wielożyłowym (przewód o długości ok 2 m). Rozwiązanie jest proste - miernik pojemności na zakresie pojedynczych pF (np multimetr) i wystarczy zbadać pojemność między dwoma żyłami nieuszkodzonymi...
Mierzysz jeden kanał, czy więcej? Jeśli jeden, to nie używaj DMA, wyzwalaj konwersję w przerwaniu timera kilka razy na sekundę, wcześniej odczytując i przetwarzając wynik poprzedniego pomiaru. Zamiast średniej użyj filtra dolnoprzepustowego - było parę razy o tym - jedna linijka kodu. Jeśli...
Witam, pisze program w którym wykorzystuję 16 bitowy Timer1 z Atmegi 328. Najpierw konfiguruję go tak: [syntax=vbnet]Config Timer1 = Timer , Prescale = 64 'Kwarc 18.43MHz, 1/18430000 * 64 = 3.473us Enable Timer1 On Timer1 Impulsuj ...
Witam, posiadam elektronicznego pastucha- pracującego na zasilaczu 12V 1000mA. Do centrali podłączony jest przewód głośnikowy o długości około 150m zakopany w ziemi na głębokości około 7cm. Pytanie - jak zlokalizować miejsce przerwania powyższego przewodu? Dodam, że centrala wykrywa...
Myślę, że pierwsze podejście jest jak najbardziej poprawne. Chodzi o to by po pierwszym przerwaniu wystąpił jakiś czas nieczułości na kolejne przerwanie zewnętrzne. Może on być nawet znacznie dłuższy- nie sądzę by ktoś chciał klikać przycisk do wyświetlania kilka razy na sekundę....
Tiny12 ma stos sprzetowy 3-poziomowy czyli w jednym momencie możesz mieć wpisane tylko 3 adresy powrotu. Jezeli masz jeden użyty bo jesteś w przerwaniu to innych odwołań np. przy rcall może być co najwyżej 2 poziomy. Jak jest więcej to musisz przerobić program, czasem kosztem długości kodu. Popatrz...
Jeśli piszesz w ASM to wszystkie zależności czasowe sa przejrzyste. Kod o długości 2tys linii nie jest mocno uwikłany w zależności czasowe i ta metoda się sprawdza dobrze, ale chyle czoła przed Twoją, postaram sie następnym razem ją zaimplementować, mimo, że staram się unikać przerwań....
Witam, pewnego razu podczas oglądania filmu przesyłanego w czasie rzeczywistym za pomocą NFS(Network File System) komputer zawiesił mi się, zrestartowałem i puściłem film dalej. Jednak po kilku minutach komputer znów się zawiesił. Postanowiłem więc go zrestartować i wejść via ssh, wszystko...
Radyjko Rondo przestało mi grać na falach długich a na średnich gra. Dopatrzyłem się że uzwojenie na pewnej cewce jest przerwane czy to będzie ta przyczyna ? Cewka na zdjęciu. Wymiary : długość rdzenia 33mm średnica rdzenia 7mm średnica cewki po uzwojeniach 14mm Cewka...
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...
Witam, nie do końca wiem jak sobie poradzić z takim problemem. Mam dość długą magistralę z podłączonymi do niej urządzeniami, każde z tych urządzeń może na wspólnym przewodzie zgłosić do ATmegi32 przerwanie INTx. I teraz jak się za to zabrać myślałem nad układem poniżej ale nie...
Wiec po przeczytaniu i przejrzeniu sporej ilości stron w internecie i na elektrodzie, posiłkując się kilkoma podobnymi tematami stworzyłem taki kod [syntax=c]#include<avr/io.h> ... UART_MAXBUFF 8 void UartInit(void); // bufor znaków polecenia (UART_MAXBUFF...
Witaj, Za co jest odpowiedzialny Timer0? Za określenie częstotliwości granicznej? Czy masz wolny Timer 1? Jeżeli tak, to moim zdaniem strasznie sobie to komplikujesz. W końcu Twoim zadaniem jest zmierzenie okresu przebiegu o częstotliwości, którą podajesz z generatora, a od tego jest...
Witam Posiadam kabel ziemny LAN T-2 3x2x0,75 (linka). Jest on przerwany w połowie docelowej długości, używany jest do transmisji MODBUS RTU. Jak taki kabel najlepiej połączyć? Znacie może jakieś sposoby, które nadają się do wykorzystania w ziemi jak i takie które nie sprawią jakiś odbić...
Okrojona itoa daje rade, krru twoja rada poprawiła nieco działanie - zamiast 125 pomiarów zapisuje aż 112, wcześniej różnica była większa i randomowo się zmieniała. Zastanawia mnie fakt taki: winą obarczałem prędkość zapisu na kartę ale jak zamiast 6 wysyłam 4 znaki to błąd jest...
Brakuje mi tylko jedenej rzeczy. W jaki sposób mam wykrywać, że nadeszły jakieś dane z I2C i ile ich nadeszło? Próbowałem tak, że po prostu w przerwaniu I2C przypisuję jakiejś zmiennej wartość TWI_bufPtr. I w przerwaniu timera sprawdzam, gdy ta zmienna (w moim przypadku received_len) jest...
Witam, Mam taką funkcję w C++ z jakiejś biblioteki do odbierania danych z RS232: [syntax=cpp] int ReadUart(unsigned char *buf, int len) { BOOL ret; unsigned long retlen; ret = ReadFile(hPort, buf, len, &retlen, NULL); if (retlen > 0) //If we have data return (int)retlen; //return...
Na razie chciałbym sprobować zrobić bez przerwań. Wysyłam z programu. [syntax=c] #define F_CPU 8000000UL #include <avr/io.h> #include <util/delay.h> #define BAUDRATE 9600 #define BAUD_PRESCALLER (((F_CPU / (BAUDRATE * 16UL))) - 1) //Declaration of our functions ...
Checkdisk działa z automatu i potencjalnie jest niebezpieczny dla dysku i danych. Robi się go na uszkodzonych dyskach tylko jeśli nie ma innego zastępczego a istotne dane zostały zabezpieczone. Jeśli koleżanka ma bardzo ważne dane to proponuję przerwać i rozpocząć od diagnostyki, kopii itp....
W moim projekcie sterownika do kotłowni mam problem z odczytem temperatur. Mam 9 czujników, problemu nie było, gdy były podłączone testowo na krótkich przewodach (3 przewody na czujnik). Czujniki DS18B20 są na przewodach o długościach od 2m do 10 m (najdłuższy 10m). Do momentu, gdy podłączonych...
Właśnie o to mi chodziło aby ktoś napisał jak mam dokładnie to zrealizować. W tym kodzie, który napisałem wyżej to w przerwaniu zrobiłem opóźnienie aby wyeliminować drganie styków. Długość opóźnienia dobierałem metodą prób i błędów. Wszystko działa i nie ma losowego wybierania...
Znaczy problem jest inny.... Przewód leci od pompki około 40 cm, potem jest przerwany na długości ok 16 cm i dalej leci do dachu. Muszę połączyć te dwa kawałki przewodów. Są jakieś gotowe zestawy?
Obróbkę danych GPS jak najbardziej zostaw w przerwaniu, ale dorzuć zabezpieczenia przed przekroczeniem długości. Nie przesadzaj z tymi buforami "kołowymi", o ile masz gwarancję, że zdążysz przed następną porcją danych. Kod, który wkleiłeś, obejrzę nieco później,
Inny problem tzn? Masz na myśli kiepską sztukę procesora? Filtracje zasilania? Prototypuję na ZL2AVR jeśli chodzi o te kwestie. Oscyloskop cyfrowy również będzie wprowadzał do wyniku swój błąd pomiarowy ze względu na to, że jego częstotliwość próbkowania też występuje jeśli się...
A poprawił Kolega :D, A kolega to napisał takiego slave w 3 dni? Nie mam potrzeby pisania slave-a, a w poprzednim wątku atrakcyjnej oferty nie dostałem A jaka byłaby atrakcyjna? No i ofertę to skład się zamawiającemu a nie zamawiający. Zawsze tak było jest i pewnie będzie. Czxy to w...
Samochód to Alfa 147. Podstawa anteny FM zawiera wzmacniacz, zasilany osobnym kablem. Został uszkodzony bat, oplot jest przerwany w kilku miejscach po ugryzieniu kuny i dostaniu się wody pod izolację. Szukam odpowiedniego bata. Długość oryginalnej anteny wynosi 37,5cm. Czy mogę zastosować dłuższy...
w pętli nieskończonej sprawdzana jest flaga. Gdy f==1 wykonywane jest wyświetlenie danych i wykonywane jest czyszczenie flagi f=0; To właśnie miałem na myśli. Tak dopowiem tu tylko, że w tym podejściu warto całe wyświetlanie podzielić na uruchamiane j/w osobnymi flagami części np....
cześć, odpowiadam na swój post ponieważ już rozwiązałem problem, a piszę to ku przestrodze innym, ponieważ studnia o nazwie głupota nie ma dna ;) Otóż wystarczyło spojrzeć na malutką (pare mm) śrubeczkę obok właściwej (zdjęcie) i odkręcić ją- była ona zaciskowa, szczęśiem w...
Witam, Potrzebuję opinii doświadczonych kolegów co do możliwość zespolenie uszkodzonej ścieżki. Kontakt z elektronikiem będę miał dopiero w poniedziałek, ale może doradźcie czy jest w ogóle sens. kiepsko widać na Twoich fotkach, więc sobie powiększyłem: to jest...
Witam, Potrzebuję profesjonalnego lokalizatora przerwanego kabla. Muszę wykryć przerwę w kablu grzewczym w żelbecie. Dobrze by było jeśli to urządzenie miałoby możliwość pomiaru długości kabla, dodam, że urządzenia za 500-800 zł są bardzo mało skuteczne. Pozdrawiam
To kod z pierwszego postu, tylko konfiguracja przerwania jest: No to jeszcze zmień zamiast: [syntax=vbnet] Enable Interrupts Enable Timer2 Stop Timer2[/syntax] na: [syntax=vbnet]En... Interrupts Enable Oc2 albo 'Enable Compare2 'robi to samo co linia wyzej [/syntax] ...
A co będzie, jak takie przerwanie zmieni wartość data w trakcie pętli while? Jest to oczywiście bardzo hipotetyczne rozważanie, ale może mieć miejsce w praktyce. Nic nie będzie, data będzie się różnić od local_data, a więc nastąpi kolejne przypisanie i kolejne sprawdzenie warunku. ...
Warunki przemysłowe stanowią nie lada wyzwanie dla projektantów. Wszelkiego rodzaju zakłócenia przenoszone po zasilaniu, pojemnościami, indykcyjnościami itd. Rada. Ekranowanie, odsprzęganie. Zamiast linii sygnałowych o dużych długościach należy zastosować np. transoptory. Wskazane...
Można by ustawić przerwanie zewnętrzne na zbocze narastające, uruchomić timer i przełączyć przerwanie na zbocze opadające. Gdy pojawi się to opadające to zatrzyma timer i masz czas impulsu. Jeszcze jedynie uwzględnić przepełnienie timera, w razie jak się coś przestawi z czasami.
Witam Rozwiązaniem problemu jest wykorzystanie możliwości bramkowania zliczania timera Tx stanem na wejściu INTx. Bramkowanie włącza się poprzez ustawienie bitu GATE dla odpowiedniego timera w rejestrze TMOD. Bit zezwolenia na pracę timera TRx ustawiony na stałe. Przerwanie zewnętrzne INTx...
da się, jest taki klej przewodzący tylko nie pamiętam jak sie nazywa - rozprowadzasz go na całej długości jak ścieżka biegnie i będzie działać, tylko uważaj żeby nie rozlać na inne ścieżki bo będą się stykać
Ustalasz długość odbieranych danych np. 2 bajty, wstawiasz licznik odliczający do 2 :) i łapiesz jeden bajt, potem drugi, Kasujesz licznik i od nowa :) wysyłasz następne 2 bajty itd. ...
Zawsze można wykonać sobie nowy kabel, ponieważ te montowane seryjnie sa raczej słabej jakości. No chyba, że masz słuchawki powyżej 200zł. Poza tym istnieje wówczas możliwość dopasowania długości. Lecz odnośnie naprawy prawdopodobnie jest jak mówił kolega Przewody zapewne pokryte...
Szkoda że na '51, bo na AVR było by łatwiej. Można to zrobić tak: Procki '51 mają wejścia zewnętrznego przerwania wyzwalanego stanem niskim, lub zboczem opadającym. Ciebie interesuje to drugie (bo zboczemn narastającym się nie da jak w AVR). Nie wiem jak wygląda konfiguracja przerwań...
Witam. Jeszcze raz ponieważ nie mogę tutaj czegoś pojąć... W związku z tym, że do uC mam doprowadzony kwarc 11.0592MHZ, Timer jest 16-sto bitowy, najdłuższy możliwy do odmierzenia czas to jest: 12*65536/11.0592MHz co nam daje około 0,071 sekudny. Teraz wyliczam częstotliwość: 11.0592MHz/12...
Mam jeszcze jedno pytanko :D Mam zmienną np. x=23,25482365 (nie wiadomo jaka długość) i chcę wyświetlić na wyświetlaczu z dwoma miejscami po przecinku. Nie mam pojęcia jak to zrobić w C.
Napewno GICR? Służy on tylko do włączenia konkretnego przerwania. W rejestrze GIFR znajdują się flagi zgłoszenia przerwania.
Podejrzyj w asseblerze ile rozkazów wykonuje BASCOM pomiędzy wejściem do procedury obsługi przerwania a wykonaniem polecenia zatrzymania Timera. Tam może być cała wiązanka zrzucania rejestrów na stos przed rozpoczęciem właściwej obsługi przerwania i to daje te 8µs opóźnienia, które...
Witam, jestem w trakcie wykonywania projektu własnej frezarki CNC(efekty będą ukazane na elektrodzie jak ukończę ;) ). Już myślę nad tym w jaki sposób rozwiązać problem z ustalaniem parametrów względem długości narzędzia zamontowanego do wrzeciona. Ponieważ będzie to drobny sprzęt...
Mam Attiny2313 i zamierzam ją wykorzystać. Zdaje się, że Attiny2313 może przyjmować przerwania z 8 wejść. Owszem. Jest taka możliwość. Z tym, że zawsze jest to jedno przerwanie PCINT i do Ciebie zależy sprawdzenie jaka zmiana stanu wywołała to przerwanie. Ponadto znajduje się ono niżej...
Problem w tym, że w uC UART już mam zajęty. Do LCD jak najbardziej mogę dołożyć uC, np. AT89C4051, który mi go w pełni obsłuży, tylko jak te uC ze sobą skomunikować nie używając UART oraz przerwań zewnętrznych (również zajęte). Dla mnie, jeśli nie uda się to rozwiązać programowo...
Co do przerwanego obwodu to też nie jestem do końca przekonany, choć nie mogę tego wykluczyć ponieważ przewody były wcześniej tzw. "dzwonione" i ciągłość musiała być. Jednak przy dalszych pracach to kto wie czy nie został uszkodzony. Polaryzację też sprawdzałem. Tzn podpinałem w jedną...
Obwód koła to można policzyć znając jego średnicę a tę można dość dokładnie pomierzyć ;) ilość otworów jest stała, więc i przyrost długości można policzyć. dl=\frac{\Pi*D}{N} dl = przyrost długości D - średnica koła pomiarowego. N - ilość otworów impulsatora Przyrosty...
"and the master at SCLK rates up to 10MHz (internal clock mode, mode 2)" To chyba dotyczy szybkości magistrali SPI. "(SCLK Period: MIN 100µs, MAX 83µs)". Trzeba przyjąć bardziej pesymistyczną wersję. Czyli max. szybkość magistrali 10Mhz. Co by się zgadzało "Przy kwarcu 12MHz...dla...
Ten błąd z 1 ms miałem w programie. Poprawiłem go z nadzieją że rozwiąże to problem, zastosowałem też polecenia CLI i SEI przy każdym poleceniu na 1W i nic Z początku myślałem, że się udało, bo przez około 5 minut, układ wskazywał mi poprawne dane następnie po tych...
Nie będą, bo każde miejsce zasilane będzie się różniło długościami/średnicą kabli, wpływ będą miały wszystkie połączenia, itd., itp... Co do twojego układu - bocznik + prosty układ elektroniczny/miernik/regulator z wyjściem przekaźnikowym który kontroluje płynący prąd i odpowiednio...
Problem nie koniecznie musi być związany z tą tablicą. Jak deklarujesz większą tablicę to część zmiennych przesuwana jest na dalsze pozycje i to po nich coś może mazać, może coś ze stosem się dzieje. Może opisz dokładniej na czym polegają te przeróżne rzeczy. Kolejna sprawa to...
Nie wiem jak to w bascomie nie wnikałem w kod, ale można to zrobić tak że deklarujesz aktywację przerwania jednym zboczem, a po jego wywołaniu zmieniasz tą konfigurację na drugie zbocze (zmiana w rejestrze MCUCR). Albo wywołanie przerwania ustawiasz na dowolną zmianę sygnału i w jakiejś...
Przejrzałem właśnie te wątki, ale ja mam na myśli znacznie prostszy system. Na elektronice prawie wogóle się nie znam, dodam tak na marginesie. Jedyne na co dzięki temu zwróciłem uwagę to głębokość na jakiej wilgotność będzie mierzona. Bo faktycznie przecie ziemia wysycha od góry,...
Witam No niestety od dawna wiem że mam problem, co do taśmy to: 1- ma 40 pinów (rozumiem że chodzi o ścieżki? Tyle ścieżek i tyle samo "końcówek" na obu wtyczkach) 2- po zliczeniu trzech długości składowych (jako że taśma ma kształt litery C ), długość całkowita...
Świetnie, link rekurencyjny :))) , to było naprawdę zabawne. No, teraz odpowiedziałeś i faktycznie brak dostępnych zasobów ma sens. Dziękuję. Ale, jak Cię nie zainteresowało, to po co się tak intensywnie udzielałeś ;) ? Jeśłi ćwiczenie według Ciebie głupie to na przyszłość nie...
Wyjście A dajesz pod przerwanie, Wyjscie B pod dowolny port. W przerwaniu sprawdzasz czy na porcie jest 0 czy 1, w zależnosci od tego zwiększasz lub zmniejszasz mierzony odcinek. Jeśli przerwania będą reagowac na zbocze, to nie martw sie o enkoder w bezruchu. zacznij coś pisać to będzie...
Kolego śmiało łącz zgodnie z kolorami po to one są :D. Co? A który biały z którym? Jeśli para została włączona poprawnie, czyli pomarańcza biały pierwsza para, niebieski biały druga (a nie NIEPOPRAWNIE jednak para kolory, druga białe), to musisz wiedzieć który buiały należy...
zakłócenie nie jest powtarzalne, może to być rozruch/ zatrzymanie silnika, jakiś układ od grzałek, napinacze foli, jakiś przekaźnik. Dodano po 6 Filtr jest od drgania styków przekaźnika. Długość przewodu to ok 2m jest to odcinek od 5V przez styk przekaźnika i poród ze styku na...
Witam, mam taki nietypowy problem z plikiem 3gp. Otóż nagrałem kilka dni temu film na telefonie komórkowym, film ma długość okolo 7 minut i zajmuje niecałe 50 MB, lecz jak nacisnąłem przycisk zakończenia nagrywania to wyskoczył mi na telefonie komunikat "Błąd kamery", po czym aplikacja...
czy istnieje możliwość przerwanie pętli bezpośrednio na płytce drukowanej sterownika? po rozebraniu sterownika tez nie zauważyłem pętelek opcyjnych. Jest wyprowadzony tylko przewód anteny. na obudowie sterownika napisane jest Skorpion 2000A Z1M 21957 jest on z 13 października 1999r. Układ...
Trzeci parametr funkcji itoa() to nie długość bufora (o to żeby go nie przepełnić musisz zadbać sam alokując odpowiednio duży bufor, zakładając, że zmienna 'distance' jest typu uint8 to potrzebujesz 4 bajtów bufora, bo największa wartość to 255 więc 3 znaki + \0), tylko podstawa systemu...
Witam Mama "swoją" płytkę z Atmega8 ( kwarc 4MHz, EEPROM, MAX485 ), która jest połączona z drugą na której jest wyświetlacz oraz klawiatura 5 przycisków na PCF8574. Wszystkie sygnały - do LCD, GND i VCC oraz I2C idą jedną taśmą łączącą płytki. Jednak nie byłem przewidujący i zapomniałem...
Czy to pęknięcie/przecięcie nie idzie wzdłuż nitek tkaniny? Tak, to jest dokładnie wzdłuż nitek. Wszystko jedno zresztą - jeśli jest to już klejone - znaczy, że ktoś "narozrabiał" wcześniej. Nie wiem po co ten ktoś to zrobił, ale na jednym przecięciu nie skończył - zauważyłem...
Chwilowo do tego nie mogę wrócić - zajmę się tym w przyszłym tygodniu a o wynikach tutaj napiszę. Rozbiję to na 2 funkcje. Jedna będzie uruchamiała konwersje we wszystkich czujnikach a druga będzie cyklicznie co 750ms odczytywała temperaturę. Swoją drogą ta pierwsza też powinna być cyklicznie...
Witam, mam pewien problem z wykonywanym kodem, mianowicie używam procesora Atmega8, do którego podłączony jest wyświetlacz LCD(w trybie 4 bit) i układ odbierający fale dcf77 firmy conrad, którego wyjście podłączone jest do przerwania int1. Część kodu odpowiadająca za wykrycie bitu synchronizacji...
Dziękuję bardzo za odpowiedzi. Niestety nie mogę sobie pozwolić na zajęcie wszystkich timerów, dlatego spróbuję sposobu z przerwaniami z GPIO. Mam jeden wolny timer, którym będę mierzył czas i trochę wolnych portów 0 i 2. Jeśli uda mi się wszystko zrobić, podzielę się rezultatem...
Sposobem Freddiego + tablica długości miesięcy można to załatwić w 3 linijkach - łacznie z deklaracją tablicy. Albert
Co rozumiesz pod pojęciem impuls, bo może to przybliżyłoby nam, co chcesz osiągnąć ? Najprawdopodobniej będziesz potrzebował obsługiwać przerwania OnCompare1A , w których raz włączysz pin, drugi raz go wyłączysz i ustawisz inne odmierzanie czasu.
Sprawdzałem tą opcję, znalazł tylko, ok 310GB danych, wszystkiego było ok 1.2TB. Teraz mam zapuszczone skanowanie PhotoRec, więc musze zaczekać aby puścić ponownie DMDE. Czy jak zaczęło formatować na FAT32, to czy puścić również SCAN FAT? Skanowałem dysk również programem O&O...
Dziękuję za wszystkie głosy. Sztywnym początkiem i końcem sugerowałem się bo widziałem kilka takich rozwiązań. Zresztą sporo ramek w różnych protokołach jest tak konstruowanych. Jakoś nie przekonuje mnie kompletny brak końca ramki. Znamy niby długość, ale wydaje mi się, że to...
Albo najlepiej zastosować zupełnie inną metodykę - piny podpiąć pod przerwania zewnętrzne (PCINT, INT + diody 1n4148 itp.) i skorzystać z jednego timera generującego podstawę czasu.
Dzięki Panowie. Po przemyśleniach Zrobię jednak tak, że pociągnę światłowód do najbliższego pokoju i tam też dołączę router (po kablu cat5e) i rozprowadzę internet po WiFi. Dla ciekawości rodzaj przedmiotowego kabla sprawdzę jak będą robić instalację. Ten kabel idzie do mnie...
Cóż, pozostaje zapytać, jaka jest długość kabla od czujnika do procesora, i jaki typ. Napięcie, które "nie skacze" zostało zmierzone czym, bo powinno być oscyloskopem... Czy tak? Może kolega spróbować zewnętrznego rezystora podciągającego, nie sądzę jednak, by to coś zmieniło....
Po prostu nie ogarniam tego, czemu są inne kolory kabelków. Ja też nie ogarniam. Zapewne kabel był sztukowany innym albo chcesz go innym nadsztukować. Nie ma fizycznej możliwości aby "na długości" miał inny kolor :D
Nie znam się na tym aż tak żeby raz dwa czytać schematy jednak dzięki za nakierowanie na moje braki. Przejdźmy do sedna. Rys 1. Jak wnioskuję pierwotnie był wpięty do (podstawy?) czujnika filtru oleju o ile taki w ogóle istniał. Teraz ta (podstawa) ma jeden zaślepiony punkt. Jednak długość...
Open your mind ;) uart_rx_buffer jest buforem odbioru. Wpis w PS jest poza tematem. Dotyczy dziwnego zachowania kompilatora i nie ma nic wspólnego z kodem z tematu. Poza tym uart_rx_buffer występuje w przerwaniu, dlatego volatile.
A na którym zdjęciu koledzy widzą uziemienie, bednarka jest przymocowana do rury lampy na całej jej długości (bednarki) nie ma złącza. Na zdjęciu nr 3 też myślałem że to jest zacisk do śruby w słupie, lecz spojrzałem na zdjęcie 5, tam bardzo dobrze widać tą sytuację.
Miałem identyczny problem i wstawiłem drut miedziany bodajże 10mm^2 o długości całego grota i zakończyłem kostkami ze śrubką wyjętą z popularnych złączek elektrycznych. Do tych złączek przykręcam już zwykły drut miedziany fi 1,5mm jako grot.
Specjalna struktura w pamięci EEPROM (w wewnętrznej pełen rok się raczej nie zmieści) lub FLASH o stałym rozmiarze dla każdego wpisu, wyszukiwanie binarne i zestaw czterech warunków. Jeśli tablica będzie posortowana według klucza z datą to wyszukiwanie binarne będzie szybkie (max. 8 iteracji)....
Jak w najprościej w arduino Najprościej rzadko oznacza najlepiej, ale jeżeli to jedynie zadanie to najprościej podwiesić jakiś pin ustawiony jako wejście do + zasilania przez opornik, kabelkiem zewrzeć do go masy i w pętli sprawdzać jego stan. Gdy zmieni się z H na L wykonać przewidzianą...
Metodą prób i błędów robić dziury w ścianie (mniej więcej wiem gdzie kabel biegnie) i robić testy zaczynając w połowie kabla sprawdzać czy jest przerwana żyła po lewej stronie czy prawej zaczynając od środka długości kabla. Nasza metoda nie jest taka nie musisz przerywać kabla...
można operować na cm - wtedy mamy 100026 cm ( max 32676 cm) co do wyświetlania, to mogą być dwie linijki właśnie metry i cm. w plc metry przeskalować do cm, dodać cm z panela i tak operować, wyświetlanie w drugą stronę. tani PLC niestety wymaga kombinowania. Wracając do wcześniejszego...
Nic nie nadpisze. strlen zwraca długość łańcucha bez znaku NUL. Pętla uzupełnia łańcuch spacjami do maksymalnej długości 5 znaków - bufor jest na 6 znaków, także jest miejsce na NUL.
Chodziło mi o to aby struktura była taka jak jest stosowana w układach resetu, czyli rezystor do zasilania, kondensator do masy obwodu. W ten sposób zmniejszasz podatność pinu na przypadkowe zmiany stanu (obniżasz impedancję wejściową). Rozumiem, oczywiście dodam ten kondensator. ...
Co prawda czasem może być 3 dyski i tak mogłoby być tu, gdyby stan dysku był gorszy, ale następowałoby to nieco inaczej. Mianowicie: Dysk oryginalny uszkodzony --->Kopia posektorowa na sprawny dysk--->Odzysk danych na 3 dysk, lub Dysk oryginalnie uszkodzony--->Kopia posektorowa na sprawny dysk...
Ja tylko chciałbym dodać, że zamiennikiem bramki aby dostosować napięcie do WSów są dwa rezystory Z USART-a? A jak te rezystory negują sygnał? Dodano po 2 No a sterowanie mam na 800khz o ile pamiętam, w pełni sprzętowe. A ja mam w pełni programowe? Dodano po 1 Dla 512...
Witam. potrzebowałbym dowiedzieć się za co odpowiadają kabelki wchodzące przy światłach mijania - niestety mam wychodzące trzy z kostki i jeden z nich na długości okło 30 cm pękł. Dlaczego do kostki wchodzą trzy kabelki tak jak na obrazku ?
Już działa, dałem stycznik i udało mi się to "zgrać" w system Exta Free na potrzeby zakładu. Prąd jednofazowy, pobór niewielki 1.5A max, przewód 4mm2 był ułożony tylko ze względu na długość (prawie 1km - spadek poniżej 5%).
Szczelina (pusta) na ułamek mikrona daje duże odbicie światła - zwłaszcza, jak ma nieparzystą wielokrotność 1/4 długości fali (jak ma wielokrotność połówki długości fali, to nie ma odbicia). Nie mówimy tu o światłowodzie szklanym, telekomunikacyjnym np o średnicy 125 μm....
Możesz po prostu próbować ;) Z tego co widzę są to lampki na 24v więc krzywdy sobie nie zrobisz. No właśnie niestety 230V. To są te lampki: allegro.pl/oferta/lampki-choink... trochę się "cykam" ;) LAMPKI CHOINKOWE 1000 LED ZEWNĘTRZNE...
Witam, chciałbym wykonać układ realizujący przełączenie pomiędzy dwoma modułami A oraz B bez żadnej (lub bez znacznej) przerwy w momencie przełączenia. Otóż układ w dużym uproszczeniu prezentuje się jak poniżej: Przełącznik jest oczywiście bistabilny w tym przypadku i...