No to jak ogrodzenie to mamy problem z piorunami - tak długi kabel będzie pięknie wykrywał pioruny i może palić coś co jest po drugiej stronie. Pierwsze pytanie - czy tu trzeba uC/Arduino? Moim zdaniem nie. Po stronie ogrodzenia dałbym osobny zasilacz np. 12V, następnie transoptor. Tę stronę bym zabezpieczył co najmniej warystorem. Za transoptorem zastosować...
Nic nowego ;) Funkcja pomiaru długości przewodu czasami jest nawet zaimplementowana w sprzęt sieciowy - z tego co pamiętam, to moja płyta główna ma coś takiego. Z dokładnością bywa różnie, jeśli chcesz wiedzieć jak to działa albo zrobić coś podobnego samemu to wklep w google "TDR" albo "radar kablowy".
Z tą długością i negacją to nie mój pomysł, ale niezły. Właśnie tak to można traktować. Jeżeli kolejny bajt nie jest negacją poprzedniego, to przyjmujemy, że to nowa długość i czekamy, aż następny będzie negacją. Dodatkowo można narzucić ograniczenia na dozwolony zakres długości.
I dobrze. Aby zmieniać wypełnienie musisz uciec się do pomocy przerwania ( to wada ,ale za to 1 timerem możesz mieć 4 zupełnie niezależne PWM). A działać może to mniej więcej tak (przykładowo): Timer0 ustawiasz na najmniejszy oczekiwany okres (rozdzielczość). Ustawiasz stan początkowy i jego przełączenie w EMR. MR ustawiasz na oczekiwaną długość stanu...
Rezerwujesz pamięć na stercie na strukturę LCD_trans - ponieważ zawiera ona pole o wielkości dynamicznie zmienianej, więc musisz zarezerwować miejsce na samą strukturę oraz długość przechowywanego w niej tekstu.
Rozumiem. Ale czy takim systemem podrozdzelni nie będzie system taki jak opisałem w 1 poście z tym że zamiast pierścienia zrobić "2 nitki" po długości. Taki "przerwany pierścień" Wg mnie będzie to tańsza opcja niż np dzielenie tego na 4 czy 5 podrozdzielni i z nich na gniazda. Ja wiem że taki sposób jak podałeś jest wygodniejszy ale tu wiadomo o co...
Na pierwsze pytanie: Coś nie tak - na podstawie deklarowanej fw musisz obliczyć okres przerwań w zależności od długości obszaru tablicy, a we wzorze to trochę masło maślane. Na drugie pytanie: kolejne wskaźniki pokazują na kolejną 1/3 całego obszaru - dla długości tablicy 240 to będzieodpowiednio 0, 80 i 160. Jeżeli obszar byłby długości 360 to tak...
Myślę, że zdążysz. Wystarczy że wszystkie 4 piny podłączysz pod jeden port. Np. PORTB : PB0, PB1, PB2, PB3. Wtedy wystarczy że w przerwaniu odczytasz tylko stan całego portu B (PINB), zaś w programie głównym zbadasz który z wentylatorów wygenerował przerwanie.
Witam, Magistrala 1-wire posiada dość mocne restrykcje czasowe co do trwania poszczególnych stanów na DQ. Przerwanie Timera, a wiec wykonanie podprogramu związanego z obsługa przerwania, powodowało zmianę długości tych czasów, gdyż są one generowane softwaerowo przez Bascom. Czasem może się zdarzyć że kolizja i tak wystąpi pomimo że teraz wszystko jest...
Wyzwalasz timerem sprzętowo, odbierasz wyniki do bufora przez DMA, po odebraniu bloku o długości, którą sam wymyślisz - przetwarzasz wyniki. Dane możesz pewnie przetwarzać w przerwaniu DMA. Jeśli masz inne, ważniejsze przerwania - obniż priorytet przerwania DMA.
Czego oczekuje NAZE Ci niestety nie powiem. Poszukaj informacji w manualu. Po wyłączeniu nadajnika dioda przy attiny powinna zgasnąć, bo brak PWM to brak PCINT, a tam jest załączana. Możesz dopisać symulację dodatkowych kanałów i sprawdzić, czy coś to pomoże. Dodaj sobie np. drugi output compare do tego licznika, który już masz. Jak zliczysz 6 wyłączeń...
Timer i zmiana stanu wyjścia w przerwaniu. Długość dźwięku określić innym timerem.
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...
Luźna myśl. Przechowywać CRC (wskażnik na nią) i rozmiar aplikacji, gdzieś w okolicach vectora przerwań? dzięki temu łatwo to policzyć i jest niezależna od długości aplikacji. Wskaźnik CRC i długość aplikacji są raczej znane za 1 linkowaniem?
Jak już Kolega nabierze wprawy z przerwaniami i timerami to można osiągnąć zamierzony cel w następujący sposób: Dajemy sygnał (którego długość trwania chcemy mierzyć) na wejście INT0 oraz INT1 jednocześnie, przy czym pierwsze ustawiamy na zbocze rosnące a drugie na spadające, w przerwaniu INT0 startujemy timer1 a w przerwaniu INT1 zatrzymujemy go,...
Mam własną procedurę ale działa na zasadzie mnożenia *10 wpisanej do tej pory wartości i dodawania numeru klawisza (0-9) wraz z kontrolą długości liczby, formatowaniem wyświetlania na LCD, obsługą klawiatury w przerwaniu i innymi bajerami. Jak chcesz mogę podesłać Ci odpowiednie procedury. BTW: jaki masz uC ?
a te przerwania o tej długości powodują zmianę tylko minut lub godzin? Pozdrawiam!
Witam, Schemat układu jest niekompletny, brakuje kwarcu taktującego. Z programu wywnioskowałem, że jest to Xtal 12MHz. Długość trwania procedury obsługi przerwania od Timer0 wraz z preambułą nie musi być dokładnie równa 10 cyklom maszynowym (#3CBA). To wniesie pewien błąd pomiarowy odmierzania czasu, przeciętnie około 10 mikrosekund. I na koniec sprawa...
Witam. Jaki kwarc uC? Jaka prędkość i długość połączenia? Razem ile przerwań w uC?
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 USART co jakiś czas są przekłamania odnoście czasu trwania długości impulsu....
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ę. Wybudzanie mikrokontrolera cyklicznie co 400ms z pewnością nie poprawi...
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 przez długość przerwania. Moją ideą było uśpienie uC, i wybudzenie...
Odliczasz przerwania timera w cyklach po tyle przerwań, jaka jest długość okresu PWM (liczba możliwych stopni wypełnienia). Przez ileś okresów przerwań utrzymujesz na wyjściu poziom wysoki, przez pozostałe - niski. Odnajdź tę notę aplikacyjną u Atmela - tam jest to przyzwoicie zrobione.
Analizator stanów logicznych nie robi Ci psikusa? Zmień częstotliwość próbkowania na mniejszą np.8 [MHz], zmniejsz długość bufora ... Powodzenia
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. ...
Zacznij od określenia protokołu transmisji - w jaki sposób będziesz przesyłał te dane (znakowo/binarnie), jaka jest ich długość, po czym program może je rozpoznać, czy i jak sprawdzać poprawność transmisji. Zastanów się nad strukturą oprogramowania - same przerwania, RTOS, czy (w ostateczności) jakaś pętla zdarzeń? Potem dopiero planuj programową obsługę...
W przerwaniu przerwaniu timera powinieneś kolejno: - wyzerować znacznika przerwania, - pobrać wartość CCR, - obliczyć długość impulsu poprzez odjęcie bieżącego czasu od zapamiętanego poprzedniego - zapisać obecną wartość CCR jako poprzednią dla następnego przerwania
Nic się nie zmieni , może będzie trochę gorsza jakość. Długość kabla nie ma wpływu na jakość obrazu w TV cyfrowej. Jednak zbyt niski sygnał może doprowadzić do jakiś przerwań w wyświetlaniu itp. 25 m to nie jest dużo. Te dekodery maja kiepską opinie.
No ale czegoś nie rozumiem może - tzn coś robisz troszkę na okrętkę jeśli chodzi o ICP. Ja bym na twoim miejscu zamiast podawać ten sygnał na INTx - podałbym go właśnie na wejście ICP. Po co ta kombinacja z INT? Toż chodzi o to, że to właśnie ICP ustawiasz aby reagowało na początku na zbocze opadające i zostanie ładnie wygenerowane przerwanie TIMER1_CAPT_vect....
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 bezpośrednio. Co do wysyłania to po co to jest? while (BufStruct.MultinetOutBufferPtr[...
Znalazłem czas wniknąć w szczegóły...J Jaka ma być rozdzielczość/częstotliwość tego programowego timera? Bo z wartością 108 jest jakaś taka mało okrągła. Rozdzielczość 20ms nie wystarczy? Bo jeżeli musisz go tak skonfigurować do timerów programowych, to czwartego kanału serwa nie da się na nim zrobić. UART nie ma nic do rzeczy, ma swój generator częstotliwości....
Podłączyłem dobrze, sprawdzałem kilka razy. Rozmawiałem z osobą która wynajmuje miernik fluka, wysoki model dsx5000. Podobno, nie ma sprzętu, który załatwi mój problem. Przy skrętce z tazji na jej budowę nie można precyzyjnie z dokładnością wartą uwagi odszukać przerwy. Nawet te nadroższe sprzęty mają margines błędu 4m przy przewodzie o długości 100m
To mam inną propozycję. Zamiast w przerwaniu wyliczać długość impulsu, uruchamiaj dwa przerwania, bez timeout'ów . Jedno na zbocze narastające, które będzie tylko wstawiało znacznik czasu rozpoczęcia (nawet w mikrosekundach) do zmiennej globalnej. Drugie na zbocze opadające, które z kolei wyliczy deltę pomiędzy czasem rozpoczęcia a odczytanym w tym...
Jak chcesz to maksymalnie uprościć to możesz przyjąć długość ramki dla zadanego requesta. Gdy dostajesz bajt w przerwaniu inkrementujesz flage , jak doliczysz do założonej długości to analizujesz ramke. Na początek to wystarczy aby zrozumieć podstawy
No jak masz w buzzerze generator to w programie wystawiasz stan go aktywujący na odpowiedni pin, i ustawiasz jakąś zmienną (zmniejszaną w przerwaniu timera) na wartość odpowiadającą długości piknięcia. I potem w tym przerwaniu od timera jeśli zmienna dojdzie Ci do 0 to wyłączasz nogę aktywującą buzzer i koniec. Program jest zajęty tylko w momencie aktywowania...
Zależy co to za czujnik, producent ustala maksymalną długość przewodów, jego typ, potrzebę ekranowania itd. Co do lutowania i izolacji to jak byś złączyl przerwany przewód? Zlutować i zaizolować zależnie od warunków pracy
Witam, u mnie usterka była na dwóch ścieżkach przerwania o długości około 1-2mm. Co mogę podpowiedzieć w moim przypadku nie zadziałał klej przewodzący "Laird" na bazie miedzi. Zeskrobałem więc starą warstwę kleju i w to miejsce położyłem klej przewodzący z opiłkami srebra "Technicqll" - teraz jest ok, ogrzewanie działa.
Twoje 50 Hz (pomijam, że nie da się tak dokładnej częstotliwości ustawić) daje okres = 20 Chyba źle zrozumiałeś kolegę michalko12 . Te "jego" 50Hz to nie częstotliwość przerwań, tylko sygnału sterującego serwem (tak przynajmniej sterowana jest zdecydowana większość serw modelarskich). Okres tego sygnału powinien mieć 20ms, z czego 0,5÷2,4ms trwa stan...
Proszę niech mi ktoś powie czy dobrze myślę: Gdy ustawiam Timer1 w tryb CTC = 4 (WGM13=0, WGM12=1, WGM11=0, WGM10=0) to zapis do OCR1A nie jest buforowany, czyli powinien zmieniać się natychmiast po wpisaniu do niego wartości. Timer1 wciąż zwiększa swoją wartość o 1 i gdy osiągnie ona wartość taką jak w OCR1A to wystąpi przerwanie a Timer1 zostanie...
Przedstawiony projekt PCB nie zawiera przerwań INT. Rozwiązanie to pojawiło się nieco później, ale pracuję nad nowym projektem. No to byłoby mocno wskazane, żeby przerwanie działało i było podłączane, przez zworkę do źródła 20 ms. Player PT3 korzysta z przerwań, by nutki miały tę samą długość a muzyczka grała w trakcie gry. No i ten problem kresek...
Jak włączam BBcode to właśnie jakieś krzaczki mi się robią - nie mam pojęcia dlaczego. Co do transoptora - miała to być swego rodzaju izolacja, ale chwilowo jak już wcześniej zostało wspomniane wszystko jest na wspólnym VCC i masie, więc równie dobrze mogłoby go nie być. Co do długości obsługi przerwania - czy argument, że krócej się nie dało zrobić...
Rozumiem, że czas programu wzięty z instrukcji obsługi ? Zwykle jest tam zapis, że podany czas jest czasem orientacyjnym. Długość cyklu będzie zmienna zależnie od użytych funkcji, może sie przedłużać lub być przerwany, jeśli pralka wolno spuszcza lub pobiera wodę. Może ulec wydłużeniu lub przerwaniu, jeśli woda nie zostanie podgrzana. Ulegnie tez znacznemu...
Witam. Posiadam dobrej jakości kabel skrętkę o dł.ok.20 metr.i w połowie mi się przerwał przez ostrą blachę na dachu,teraz muszę go połączyć,jak najlepiej to zrobić,lutować i dobrze zaizolować,czy założyć 2 wtyczki i zastosować taka kostkę,łącznik
HAL_UART_Receive_IT nie dość że trzeba wywoływać cyklicznie, to jeszcze potrzebuje argumentu właśnie ilości danych Tym się nie przejmuj. Używaj tylko długości danych=1 a tą funkcję wołasz tylko jeden raz z programu na rozruch. Ale HAL_UART_Receive_IT umieszczasz też w obsłudze przerwania od RX tak by to się kręciło w kółko. A w tym przerwaniu analizujesz...
Jeśli masz stare nie pęknięte, to w każdym sklepie z oring-ami dobiorą Ci bez problemu. Oring niemal nigdy nie zużyje się w taki sposób, żeby nie można było zmierzyć jego grubości i jeśli jest cały (może być nawet pęknięty/przerwany, ale nie może brakować go po długości), to nie ma z tym najmniejszego kłopotu. Wielokrotnie przerabiałem tego typu sprawy...
Kolego amostom napisałem do do Ciebie e-mail na PW z "małą" prośbą i tak jak pisałem walczę ze swoją wersją komputerka, ale słabo mi to idzie. Więc za wszelką pomoc będę wdzięczny. Czy mógłbyś opisać jak dokonujesz pomiaru spalania? Precyzując pytanie to, jak mierzysz długość impulsu z ICP czy przerwaniem INTx?
Proszę o informację w jaki sposób zaprogramować arduino aby zliczało impulsy o długości 30ms Najlepiej na przerwaniach generowanych przez zmianę stanu impulsu na wybranym wejściu procesora.
Spojrzałem w ten kod i niestety jest tam o wiele więcej problemów. Typowy kod początkującego, ale OK - każdy kiedyś zaczynał i pisał takie potworki ;-) Co można naprawić? Już Ci to mówili w innym wątku: przede wszystkim wywalić czasochłonne operacje z przerwania. W ISR ustawiasz tylko flagę, a w pętli głównej sprawdzasz jej stan i, jeśli zachodzi warunek,...
Mierzyłem się z tym zagadnieniem kilka razy; najpierw na ESP8266. Po wgraniu firmware NodeMCU mamy kilka trybów pracy. Poza NORMAL i DEEP_SLEEP są jeszcze np. LIGHT_SLEEP. Do tego wyłączenie radia daje dużą oszczędność. Zastosowanie uC np ATmega168PV. Pracuje od 1,8V (w rzeczywistości od 1,5 albo i niżej) i ma znikomy pobór pracując jak licznik wybudzany...
Skoro jest możliwość generowania przerwania od przechwycenia wartości licznika przy narastającym i opadającym zboczu to po co do tego jeszcze mieszać przerwania od GPIO? Kwestia tylko sprawdzenia w przerwaniu czy w danym momencie jest stan niski na porcie czy wysoki. Jeśli jest stan wysoki to zapamiętujemy wartość licznika do zmiennej A jeśli jest niski...
Heh, siedzę i nie daje mi to spokoju. Kod który napisałeś - nawet nie czytam bo w C piszę od niedawna ale tylko na ARM'y czy też na LPC i nazwy rejestrów itp nic mi nie mówią. Moja koncepcja jest taka: Uruchamiasz 1 timer z przerwaniem co 50ms.(dlaczego co 50?). W przerwaniu 1 timera uruchamiasz 2 timer. Ustawiasz przerwania 2 timera, w każdym przerwaniu...
Może da rade, jeszcze zależy jaką lutownicą, wystarczy wziąć cienki przewód, przyciąć na odpowiednią długość, wykonać pobielanie i przylutować jednym końcem tam gdzie dochodzi przewód a drugim do punktu lutowniczego bezpośrednio połączonego tą przerwaną ścieżką, nic trudnego.
włączniki od przerwań są sterowane przez moduł zdalnego sterowania. Takiego od zamka centralnego. Długość ok 30 cm Sprawdzałem na pinach od uC, to po nadaniu sygnału napięcie bezpośrednio na nóżce uC spada do 0.04 V, takie same napięcie dostaje przy podłączeniu napięcia 230 i bez niego.
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.
Dziękuję za odpowiedź. Czy podstawa magnetyczna anteny jest dostosowana do konkretnej długości promiennika? Pęknięcie jest w izolacji zewnętrznej kabla. Żyła gorąca nie jest przerwana. Ewentualnie jaką podstawę można byłoby dokupić do promiennika o długości 170 cm?
Zainstalowałem w ogrodzie, robota koszącego Cramer RM 2000. Robot wyświetla informacje o utracie sygnału pętli. Nadawanie nowego kodu, nic nie daje. Pętla ma ok 400m długości i nigdzie nie jest przerwana ani łączona. Czy ktoś z Was ma jakiś pomysł? Czy ktoś ma podobny problem z tymi robotami? Dzięki.
Pokaż schemat połączeń, to po pierwsze. Po drugie nie potrzebujesz żadnej funkcji, ani instrukcji switch, tylko zwykłej tablicy : const uint8_t obraz_cyfry[10] = {0x7E, 0x30, 0x6d, itd...}; PORTD = obraz_cyfry[czas]; Na AVR short int ma taką samą długość jak int, a tutaj wyraźne chodzi o bajt - użyj uint8_t z stdint.h. Samo wyświetlanie multipleksowane...
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 będzie rozwinięciem poprzedniego projektu, nie mam możliwości...
Cześć gdybyś w skrzynce z bezpiecznikami nie znalazł problemu, często przewody elektryczne ulegają przerwaniu/ przetarciu na drodze od manetki przez obudowę kierownicy ( na długości kolumny kierownicy ) w dół kabiny - problem mogła wygenerować regulacja kierownicy gora-dół. Pozdro.
Pin ICP nadaje się jeśli chcesz określić np. długość impulsu. Dla enkodera się nie nada - enkoder daje sygnał w kodzie Graya, ponieważ M8 nie ma sprzętowego dekodera tego kodu musisz to zrobić programowo. Aby nie czekać w pętli i ciągle nie sprawdzać czy coś się nie zmieniło wyjścia z enkodera trzeba podpiąć pod wejścia generujące przerwania. W handlerze...
Źródłem zniekształceń podczas odbierania sygnałów AM są wszystkie nowoczesne urządzenia z zasilaniem impulsowym ( komputer, energooszczędne lampy, ładowarka do telefonu komórkowego i tp). Przyczynami problemów słabego odbioru na długich falach mogą być-1) przerwanie cewek obwodów tego zakresu - sprawdzenie za pomocą omomierza . 2) utrata styków w przełączniku...
Pomiar zaczyna pulsować . Troszkę za dużo wrzuciłem programu . Wystarczyło przerwanie od licznika PWM . Jeżeli chodzi o długość przerwania to może błędnie myślałem , że lepiej jedno dłuższe niż kilka krótszych . Spróbuje zastosować przerwanie od przetwornika ac .Ile pomiarów najlepiej zrobić i jak rozwiązać rzutowanie zmiennych int na char ? Na początku...
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 w połowie, wykonaj pomiary pojemności i daj na forum. Po pomiarze pojemności...
Można skorzystać z miernika pojemności mierząc pojemność na obydwu końcach kabla. Wymagana jest znana długość kabla i musi być kabel przerwany i nie zwarty.
sei nie ma nic do priorytetu przerwań - to po prostu instrukcja włączająca przerwania.
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,
Zmieścić obsługę przerwania od transmisji przed obsłużeniem PWMa nie sposób. Jedyne rozwiązanie to szybki uC oraz długi okres PWMa w stosunku do sumarycznego czasu obsługi przerwania od transmisji. Wtedy błąd długości impulsu PWMa spowodowany opóźnieniem wywołanym od obługi przerwania od transmisji będzie pomijalnie mały. Nie jest to zatem niemożliwe...
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?
W tym przypadku, wg. opisanego zadania, nie ma możliwości zrobienia pomiaru między końcówkami przewodu, masz możliwość tylko zrobienia z jednej strony, powiedzmy, że druga strona jest 300metrów dalej i nie masz jak fizycznie tego sprawdzić. Dlatego musisz użyć przewodu numer 2 lub numer 3 i potem podzielić przez 2, pod warunkiem, że przewód numer 2...
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 sposób bardziej profesjonalny. Długość pracy wynika z dwóch...
Napisze dokładniej o co chodzi Wysyłam poprzez RSA plik ~100KB(wartości kolorów pixeli) Potem w funkcji 'wyrzucam' te dane na wyśw i towrzy się obraz. Tylko jeśli moja funkcja będzie się zbyt długo wykonywała, lub prędkość będzie za duża, to zdarzy się, że pominę bajty dbierane z RSA, Dlatego chciałbym wyliczyć jaka może być max prędkość badów jeśli...
Dzięki za podpowiedź. Muszę to przetrawić, ale wstępnie nie widzę tu możliwości modyfikacji nagłówka procedury obsługi przerwania a jego długość jest krytyczna. Gdy na '51 pisałem programy używając kompilatora SDCC (http://sdcc.sourceforge.net) to mogłem do definicji funkcji dopisać modyfikator _naked, który pozwalał na generację kodu funkcji samemu,...
Przerwanie DMA dostaniesz po wielokrotnościach ustawionej długości. Czyli po 8, 16, 24, 32, ... odebranych bajtach. Jeśli wyślesz 15, to przerwanie powinieneś dostać po wysłaniu jeszcze jednego bajtu.
Btw - źle liczysz korelację. Wynik splotu (i korelacji) ma długość sumarycznej długości wejść. Twój wynik ma tylko 200 próbek. Okres próbkowania 10ms. W każdym przerwaniu 10ms zezwalam na Input Capture. W ICP: Zapalam diodę RED i czekam na 2 kolejne zbocza rosnące. Wyznaczam okres dla RED. Zapalam diodę IRED i czekam na 2 kolejne zbocza rosnące. Wyznaczam...
Jeżeli to wiekowy sprzęt to zamieść zdjęcia elektroniki. Jest tam programator zespolony z płytką PCB czy może moduł sterujący pracą silnika jest osobno? Warto sprawdzić stan szczotek węglowych oczywiście bo jeśli jeszcze nigdy ich nie wymieniałeś to mogą być w końcowej fazie zużycia. Nowa szczotka ma od 30-40 mm długości.
Z pada 15 pinowego (w połowie długości kabla) przerwałem go i próbuję poskładać zamiast pada gun. Gun był 9 pinowy ale jak zrobić z tego 15 pinowy gun? Połączenia zrobiłem według kolorów ale gun wtedy nie działał. Jak zobaczyłem zdjęcie w linku to zrozumiałem, że niemal na pewno należy zniszczyć wtyk żeby przełożyć kable do innych pinów ( http://pinouts.ru/visual/gen/nes_light_g...
Ja właśnie robie "kabel" dwukierunkowy na tych CC1000PP z buforowaniem itd. Jeszcze nie zrobiłem, ale myśle (z wyliczeń tak wynika), że uda się aby transmisja była fullduplex 38,4 kb/s. Przy każdym cc1000pp stoi atmega 8 z kwarcem 11,0592. I pisząc w asemblerze myśle że dam rade, chociaz łatwo nie będzie, ze względu na długości procedur obsługio przerwań...
Podepnij to pod wejście mikrokontrolera wywołującego przerwanie (lub sprawdzaj stan pinu co 10us). W ten sposób poznasz długość sygnału i przeliczysz go na wypełnienie dla sterownika mostka h. Impuls który mierzysz miesci się w przedziale ~1-2ms i jest wywoływany co ok. 20ms (czyli dla impulsu ok. 1ms masz wartość 0%, a dla 2ms masz wartość 100%). Poczytaj...
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 do samochodu. Wszystkie projekty jakie znalazłem były pisanie...
Jeśli masz do dyspozycji timer to zmień podejście do rozwiązania problemu. Ustaw timer tak, aby przepełniał się np. po minucie. To bezpośrednio zapewne nie jest możliwe (długość licznika), ale np. ustaw tak, aby przerwanie ovf występowało np. co 1s, 100 ms, obojętnie. W handlerze tego przerwania umieść dodatkową zmienną zliczającą te przepełnienia,...
A ten µC to zapewne ma jakiś timer. Może oprogramuj go "bezpośrednio", na przykład na przerwaniu, chociaż prawdopodobnie trzeba będzie zrezygnować z "arduinowości".
Oczywiście, że można zrobić licznik impulsów o długości 16 bitów. O zliczaniu małej ilości impu8lsów mówiłem tylko dlatego, że ten procek pewnie robi coś jeszcze oprócz zliczania impulsów. Jeżeli ich częstotliwość jest zbyt duża, to jedno przerwanie jest zgłaszane za drugim, no i kontroler nie może robić nic więcej tylko obsługiwać te przerwania. Przepraszam,...
Wydaje mi się, że od razu warto pobawić się przerwaniami. To rozwiązanie jest eleganckie i dużo się nauczysz ;)
Po wybudowaniu modułu okazało się, że płytka drukowana jest pęknięta na długości kilku cm i przerwane są 4 cieniutkie ścieżki. Jakimś cudem udało mi się je polutować i teraz wszystko działa jak należy. Dzięki za zainteresowanie.
Jeśli chcesz w sposób ciągły generować sygnał prostokątny o zadanej częstotliwości i zadanym wypełnieniu, to najłatwiej użyć timera w trybie generowania PWM. W przypadku jeśli czas stanu wysokiego i niskiego mogą się zmieniać z okresu na okres, również można użyć generowania PWM (przykładowo Fast PWM (mode=15) dla atmega8) - używając T1, wpisując wartość...
...a tak z ciekawości zapytam jak długi zadeklarowałeś ten string LINIA ??? skoro jak rozumiem obsługujesz zapewne SMSy. To chyba długość co najmniej 160 hmmm ??... U mnie , zmienna Line ma rozmiar 30B , ponieważ pobieram do niej tylko ... jakby tu powiedzieć ... mnemoniki komend AT i ich parametry , a SMS-a dekoduje "w locie" , w czasie przerwań od...
Polecam tobie i innym, ja to sobie tak ułożyłem do AVR. procesor zwróci ci to co wysłałeś do niego z VB6. koma w VB6 nie musisz zamykać po każdej transmisji, masz go otworzyć jak uruchomisz program, jak go zamykasz ( program) to powinien się sam zamknąć.Zmienna "Dane_rs_string" zawiera to co wysłałeś. długość słowa jakie przyjmie to 32 znaki, zależ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 może być czasem potrzebne- ale nie w Twoim programie....
W tym miesiącu padło sterowanie graczem numer 2 przy działającym sterowaniu graczem numer 1 w konsoli CG-2020 - po klikaniu przycisku A wyzwalany jest przycisk A oraz strzałka w lewo lub w prawo (zależnie od uruchomionej gry). Da się to naprawić czy nie? Z powodu niedokładnego umieszczenia PCB konsoli we właściwym miejscu obudowy kabel 17-pinowy w dwóch...
Funkcja pulseIn zwraca wartość w postaci unsigned long. Ty natomiast przypisujesz jej wartość do (signed) int. Czyli: -odczytana wartość może się nie zmieścić; -jeżeli odczytana wartość przekroczy połowę "pojemności" typu int, to zostanie zinterpretowana jako liczba ujemna. Pytanie, jakie długości czasów mierzysz? Ile mija czasu pomiędzy kolejnymi impulsami...
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 FIFO a w pętli głównej sprawdzasz, jeśli w buforze jest...
A właśnie, że jest sposób na efektywne wykorzystanie DMA przy odbiorze, nawet dla zmiennej długości ramek. Wystarczy ustawić przerwanie od stanu IDLE dla kanału szeregowego U(S)ART, które generowane jest po zakończeniu transmisji. W tym momencie wszystkie dane są już w zdefiniowanym w DMA obszarze pamięci.
A to wydaje ci się? Trzeba było pociągnąć od lewej do prawej na całej długości bo może jest w kilku miejscach przerwana?
Zbadałem systematycznie swój problem i okazało się, że przyczyną było włączenie przerwań ("sei"). Jeśli przerwań nie ma, to wszystko działa jak powinno, natomiast po ich włączeniu obserwuję kilkunastokrotne spowolnienie procesora. To jest prawdziwe spowolnienie, a nie tylko timera - pętla assemblerowa o znanej długości wykonuje się o wiele za wolno....
"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 częstotliwości zegara SPI 6" A dla 12 już nie. I chyba nie...
To odliczaj, przez ile cykli był naciśnięty - to jakieś 6..8 linijek kodu dodatkowo, czyli wciąż znacznie krócej, niż to, co pokazałeś. Popatrz, co się będzie działo w Twoim kodzie, kiedy przycisk będzie cały czas wciśnięty. Inny problem to to, skąd wołasz tę funkcję i kiedy. Jeśli z "pętli głównej" - to prosisz się o kłopoty. Cała logika rozpoznawania...
To, to ja już mam za sobą. Wykrywam start. Zera i jedynki też potrafię rozróżniać. Problem w tym, że coś mało danych wysyła mi pilot. Powinno być 4 bajty... Napisałem program, który reaguje na przerwania i je zlicza. No i wychodzi 34. No to dobrze... Potem zmodyfikowałem go tak, eby mierzył czas pomiędzy przerwaniami. No i tu gorzej, bo co druga długość...
Witam. Szukam osoby która zaprojektuje układ sprawdzający ciągłość obwodów o długości ok 35 m który będzie informował na wyjściu o przerwaniu minimum jednego z nich. Układ musi mieć zasilanie bateryjne i długi czas pracy. Pozdrawiam Rafał
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, czyli cyklicznie co np. 10ms sprawdzać stan (irrecv.decode(&results),...
Proszę o podanie schematu prostego klucza elektronicznego, który po przerwaniu pętli wykonanej z przewodu dzwonkowego o długości około 100 metrów (łączącej ule), włączy syrenę alarmową 12V, 30W.
renesas przerwania flagi przerwania attiny przerwania
schematy instrukcje serwisowe samsung kaseta adapter transmiter electro harmonix
pralka indesit cieknie pralka indesit cieknie
Rejestrator kamery nadaje po DMZ - przyczyny i rozwiązania MAN TGX 18-460 Euro 6 - Błąd EBS 5 00789-04