krzychusss - przeanalizuj co ile wykonuje się pętla główna, co ile zgłasza się przerwanie od przepełnienia.
...dla rejestrow I/O sa to: sbic lub sbis, przeskocz kolejna instrukcje jesli odpowiednio bit jest wyzerowny lub ustawiony. pzdr
Witam. Sprawdzenie stanu na pinie: [syntax=c]if(!PINB&(1<<PB0)) LED_ON else LED_OFF[/syntax]
Gdzie w tym kodzie w Setup() masz "pinMode(PrzekaznikPracy, OUTPUT);" ? Widze tylko dla BLUE_LED w linii 351 i to tyle...
Pullupa? Czy stanu wysokiego?:> (at)Marczeli_P witam kolegę z Będzina;)
PORTC &= ~_BV(3); - wyzerowanie PORTC |= _BV(3); - ustawienie i jeszcze: PORTC ^= _BV(3); - zmiana stanu.
PORTA = 00101101; To nie jest zapis binarny, wartość traktowana jest jako liczba rzeczywista !! Tak być powinno dla liczb zapisanych w sposób binarny: PORTA = 0b00101101;
Pomyśl o tym, aby zapamiętywać stan poprzedni i inkrementować licznik jedynie w przypadku zmiany stanu.
Po wykryciu reakcji odczekać potem znów sprawdzić stan portu.
Witaj , wydaje mi się że rozwiązanie problemu leży w pkt 16.3.2 datasheet'u. Jeśli urządzenie jest w trybie master a na pinie SS czyli PB4 będzie stan niski to atmega interpretuje to jako istnienie innego urządzenia w trybie master i przełącza się w slave. Spróbuj utrzymać na pinie PB4 stan wysoki (podciągnij go) lub sprawdź czy nic w układzie nie wymusza...
Lub coś takiego. Układ zaczyna przewodzić jeśli z 1 tranzystora zniknie stan wysoki. http://obrazki.elektroda.net/62_12183164...
Możesz, ale w czym tu sens, skoro masz atmege8? Najpierw ustaw porty na atmega, potem sprawdź czy poprawnie działają (ustaw 1 na piny i sprawdź stan wyjśc, ustaw 0 na piny i sprawdź). Skoro już to wiesz to możesz przez atmegę podawać dowolne sekwencje na rejestr i oglądać sobie wyniki.
Wgrywam przez COM, prędkość według instrukcji, ale sprawdzałem inne. Mam nadzieje że procesor nie został uszkodzony bo będę bulił... Chociaż świeci się jedna dioda podłączona do PORT5 i jest wyzwalana niskim stanem.
Ten ATMega ma JTAGa więc część PC nie będzie działała jeśli go nie wyłączysz. Jak sam się przekonałeś USART wymusza stan swoich końcówek, zatem bez jego odłączenia nie sprawdzisz portów. Stanem spoczynkowym linii TXD RS232 jest stan wysoki.
Poprawiłem w pytaniu. Ma być nie mogę załączyć portb.2 Jak zamienię Led_2 na Led_1 to klawisz 2 załączy - tak że klawisz jest czytany. po DO jak dam set Led_2 to załączy ale w warunku If nie (coś jakby przewiania kasowały stan )
Także w przypadku pomiarów ADC czy komparatora mniejsze zakłócenia na zasilaniu szczególności w przypadku, gdy jest jeden pin zasilający.
Trochę niepoprawnie ustawiłeś elementy . Te od strony niskiego napięcia ( ATmega ) powinny być z jednej strony płytki ( np. lewej ) , optoizolator w środku a wysokie napięcie po przeciwnej stronie ( w tym przypadku po prawej ) . Chodzi o to by nie leżały blisko siebie . Co do rezystora R2 to powinien być połączony z masą bo w takiej konfiguracji jak...
Taśmy są różne. Nie wiadomo jaka masz Ty i co się stanie.
Musisz przyjąć że pin normalnie jest wyjściem i steruje diodą. Co jakiś czas zapamiętujesz stan wyjścia, przełączasz na wejście, odczekujesz moment na ustabilizowanie się stanu na wejściu i pobierasz stan wejścia a następnie przełączasz port na wyjście i odtwarzasz jego stan z przed odczytu stanu przycisku.
Ta sama sytuacja. Sprawdziłem oba zapisy warunku sprawdzającego stan portu i też to samo.
Sprawdziłem dzisiaj na generatorze kwarcowym, konkretnie Dodano po 36 Sterowanie LCD jest zrobione na bazie [url=http://www.technoblogy.com/show?2BE... Też nie jest to typowe rozwiązanie.
Brak nop przez sprawdzeniem stanu pinu. Nie musisz powielać zerowania bitów kolumn.
Sprawdź 10 razy i jeszcze jeden raz na dokładkę cze wszystko jest połączone jak trzeba- tutaj bardzo łatwo o błąd, zwłaszcza jak się bawisz na płytce stykowej. napisz jak wygląda układ, jaki jest program i jakie masz zasilanie. Jak bateria to może po prostu się rozładowała.
Witam, Wykorzystałem w swoim projekcie timer PWM i chciałbym dokonywać pomiarów napięcia po jakimś czasie od zmiany stanu z 0 na 1. Czy zrobić to za pomocą dodatkowego Timera? Może jakieś inne rozwiązania? Projekt na ATmega 168PA
Ok. Sam na początku się męczyłem żeby LCD uruchomić. Niby wszystko proste a jednak działać nie chciało. Oto hex który wyświetla znak '!'. Działa - sprawdzałem. LCD skonfigurowany tak jak podałeś: RS - PD0 E - PD1 D4...D7 - PD4...PD7 Jednak nie podałeś chyba jaki masz LCD. Moja procka jest na 16x2. Przez chwilę pomyślałem że może kontrast? Ale jeśli...
Przy niższym napięciu zasilanie nie masz szans otworzyć tranzystora pnp. Zmień rezystory z 10k i 1k na 4k7 i 4k7 - wtedy zadziała (co nie zmienia faktu, że tranzystor npn jest tu zbędny).
Rozumiem, że nie masz kodu źródłowego? ;) Jako osoba pisząca od wielu lat w C i mająca okazje w tym czasie obejrzeć wiele różnego rodzaju "wynalazków" powiem, że to co napisałeś w pierwszym poście może mieć sens. Tzn. spotkałem się z praktyką pisania kodu testującego flagę bitową w nst. sposób: if ((zmienna & STALA) == STALA) // na ustawienie...
http://obrazki.elektroda.pl/2433244400_1... Układ na wejściach będzie miał podłączone przyciski na 12V na dość długich przewodach, stąd optoizolator na wejściu. 4013 pełni rolę przerzutnika typu T, czyli po każdym impulsie na wejściu zmienia stan na wejściu na przeciwny. Stan wyjściowy może być także zmieniamy impulsem z atmegi. Atmega...
Ale nie wiem jak sobie z tym poradzić programowo. Nie szukałem, ale jest mnóstwo tematów do debouncingu na forum, a w ogóle w takiej sytuacji najlepiej przeglądać różne programiki na AVR. A ćwiczyć programowanie dobrze jest na komputerze PC z linuksem. Jak sprawdzić czy przycisk jest puszczony? Ano trzeba znać minimum dwa stany w odstępach czasowych....
Nie, podajesz na jedno wyjście wiersza stan niski i sprawdzasz stan wejść kolumn podciągniętych wwnętrznei do plusa. Robisz to zwsze w przerwaniu timera. To samo przerwanie może służyć np. do wyświetlanai LED, o ile masz w systemie wyświetlacz multipleksowany.
Switch powinien być podłączony do masy, jeżeli nie dajesz zewnętrznego rezystora wymuszającego niski poziom na wejściu procka. Atmega posiada wewnętrzne rezystory podciągające do +5V dlatego lepiej aby stanem który jest wykrywany był stan niski switcha.
M32 powinno wystarczyć, ewentualnie M644, a jeśli masz za mało wyprowadzeń to M64. Zależy co też masz na stanie.
Zdecyduj się: [syntax=c]#define TEST_PIN (1<<PB0)[/syntax] [syntax=c] DDRC |= TEST_PIN;[/syntax] mam nadzieję że widzisz błąd.
Witam, w oparciu o czujnik ACS712 zrobilem monitor stanu urzadzenia 230V. Uklad jest podlaczony pod ATMega i steruje zarowka [lub docelowo dowolnym urzadzeniem zasilanym z sieci 230V] ale rowniez ma byc mozliwosc recznego wlaczania/wylaczania urzadzenia. Chodzi mi teraz o sprawdzenie w dowolnym momencie stanu owego urzadzenia [czy jest obecnie wlaczone...
Stan nieokreślony będzie w przypadku ustawienia portu jako wejście bez rezystora podciągającego.
Port J ma wewnętrzne rezystory pull-up. Jeśli są aktywne i dałeś zewnętrzne rezystory do masy to pin przełączył się w tryb wejścia. Tak wynika z datasheeta: Przeczytaj jeszcze raz cytowany fragment, bo nic takiego nie ma miejsca. Nie ma żadnego automatycznego przełączania na wejście, kierunek portu określa rejestr DDR. 40mA na pin to "absolute maximum...
To jedyne miejsce. Sprawdzę ten fragment kodu jutro praktycznie i odpiszę. Ale teoretyzując, czy rozpoczęcie pętli nie zaczyna się od stanu, kiedy dioda nie świeci a dopiero rozpoczyna się sprawdzenie warunku? Te mignięcie trwa milisekundy.
Przebiegi komplementarne? Taka praca licznika nie jest możliwa, niektóre układy (np. Attiny25) mają dodatkowe zanegowane wyjście licznika, w ten sposób że nigdy nie będą miały w tym samym czasie tego samego stanu. Jeśli Ci o takie coś chodzi, proponuje zmienić uC. Jeśli nie są ważne dla Ciebie czasy przełączenia stanów, zaneguj bramką.
tak zwierałem do masy i też niestety nie działa zmieniłem kod na inny który wyświetla napisy jednak że też nie działa. Postaram sie jutro kupić inny wyświetlacz i zobacze co sie stanie :)
Ogólnie żadna filozofia tylko podstawowe informacje, których wszędzie pełno :) ... Atmega jest w stanie RESET jak na tym pinie (czyli w przypadku Atmega32A TQFP44 na pinie nr. 4) jest stan niski czyli masa :) Sprawdź co jest na pinie 4 i jak jest tam ok. 3-5V to procek powinien normalnie pracować.
Zapomiałem uściślić, chodzi o ATTINY2313 - 20PU - nowe (dziewicze), może to ma znaczenie? Jeśli są to kostki, kupowane jako nówki bezpośrednio czy pośrednio od Chińczyka to może być różnie z ich "dziewictwem". Ale w każdym razie, warto sprawdzić czy nie zachodzi to o czym pisze kolega tmf. Czyli sprawdzić i zwolnić transmisję ISP z USBASP jeśli jest...
zrob tak #include <avr/io.h> int main(void) { DDRA=0xFF; //portaA - wyjscie PORTA = 0xF; while(1) return(0); } po prostu odlutuj przycisk, i ustaw na dzień dobry 00001111 zobaczymy co sie stanie
W czym najlepiej takie pliki mam przekonwertować bo może program jakim to robię jest do D... .Program to 4Music bitrate conwerter. Pisałem ci na pierwszej stronie że da się to zrobić w Winampie . Też kiedyś się męczyłem z różnymi programami ale Winamp okazał się najlepszy . http://obrazki.elektroda.net/34_12636806... No chodzi o to że sprzętowy...
Chyba zorganizuję sobie attiny wykonujące zwykły blink i sprawdzę co się stanie po próbie odczytania. Atmega na której wiem jaki był program przy próbie zapisu (programator padł podłączony do niej) przestała go wykonywać a bez analizatora stanów nic nie zdziałam w kwestii "co się tam wyrabia". Wie koleżanka czy po ucięciu drabinka rezystorowa nie zacznie...
Nie używaj do odczytu przerwania, tylko zrób skanowanie jak w normalnej klawiaturze. Stan portu odczytujesz ciągle co np. 5ms (wykorzystaj przerwanie timera). Jeżeli 3 odczyty (lub więcej, dobierzesz eksperymentalnie) pod rząd są takie same to oznacza, że odczytałeś jego stan.
0, stan niski
Miałem podobny problem, okazało się że masa procesora nie była połączona z masą zasilania. Sprawdź czy nie ma przerwy. Pozdrawiam Yakuza
Jeśli 33[kOhm] to za mało, to po prostu daj rezystor 43[kOhm]. Nic więcej nie potrzeba. I tak przecież będziesz dodatkowo filtrował stan portu programowo...
Wydaje mi się że nie ponieważ próbowałem ustawiać OCR0 na wartości np.1 lub 254 i jest bez zmian. Zresztą nawet w symulatorze efekt jest taki jakby program nie reagował na funkcje w przerwaniu co prowadzi do tego że cały czas jest stan wysoki tylko nie rozumiem czego.
8051 nie ma możliwości konfiguracji poszczególnych wyjść a poza tym ma inną obciążalność wyjść (i ich charakterystyką prądowo napięciową). A może problem jest w tym sprawdzaniu wejść, bo skoro usunąłeś funkcje if i problem zniknął, to problem jest z czytaniem wejść A jeszcze sprawdź czy masz zgodne wersje oprogramowania, bo może tu się gryzie: http://www.helmix.at/hapsim/...
Sprawdź w jakim stanie jest pin RESET. Być może mikrokontroler w ogóle nie startuje po zaprogramowaniu.
Zapomniałem dodać, że odbiornik ma być załączany z dwóch źródeł-ATmega i USB (jedno i drugie 5V) - ATmega stan wysoki -> odbiornik włączony - napięcie USB -> odbiornik włączony - ATmega stan wysoki + napięcie USB -> odbiornik włączony - ATmega stan niski + brak napięcia USB -> odbiornik wyłączony "namalowałem" schemat i teraz pytanie, czy to ma sens?...
Mam problem. JAk powinien być podłączony FT232 do USB. Chodzi mi o problem podłączenia masy i napięcia? Zaznaczyć muszę ze Atmega8 ma osobne zasilanie oparte na 7805. Czy FT232 i atmega musza byc na tej samej lini masy i napiecia. Co się stanie jak ft232 będzie zasilane z portu USB, a atmega z osobnego. Czekam na sprawdzone rozwiązania. Z góry dziękuje...
Myślę, że mikro-kontroler będzie idealny. ATmega 8 będzie ok choć moim zdaniem trochę nadmiarowa. Ale jak jest w szufladzie ...jak najbardziej. Co do programu..wydaje mi się, że to raczej dość łatwa sprawa. Np. wejścia układu po obniżeniu napięcia do akceptowalnych przez AVR'a można podać na wejścia INT0 i INT1. Zmiana stanu na wejściu INT0 niech spowoduje...
Fuses (hex): D8 23 Jeśli D8 to high fuse to masz RESET VECTOR ustawiony na inny obszar pamięci niż standardowy, a używany zwykle z bootloaderem. Tak ma być? Jeśli nie, to ustaw domyślne czyli D9 Niby BOD masz włączony... a działa chociaż? Atmega przy napięciu np 3V5 powinna być w stanie reset. Dla mnie ta atmega jest niepewna, bo masz watchdog który...
Mam żarówkę tradycyjną z drutem wolframowym 25W E27, ale dziś już nie dam rady bo musiałbym oprawki szukać. Dodano po 11 ten opornik bocznikuje R1 zmniejszając czułość Zmniejsza się opór równolegle połączonych rezystorów? Dodano po 6 Można by dobrać oporniki (R1 i ten dodatkowy) tak, by bez włączenia dodatkowego opornika układ wykrywał pracę pompy,...
2) czy dobrze rozumiem teorię rezystorów podciągających: wyświetlacz jest na stałe podpięty pod zasilanie, ale przez rezystor postawiony pod progiem wysterowania, natomiast ustawienie stanu niskiego/wysokiego (odpowiednio jaki potrzebujemy) jest "dopalaczem" pomagającym wysterować światełka? W stanie 1 przez rezystor płynie prąd do wyśw (przez wew...
Mateusz(at) Jak będę w domu to sprawdzę to rozwiązanie. MArSTER_1 Nie wiem jak napisać przerwanie aby w kółko się nie wykonywało jak jest stan niski.
Używam programator zgodny z STK500, więc ISP... Zasilanie owszem będę musiał zmienić, choćby dla pewności. A co programuję, to nieistotne, problemem jest, uzyskanie gdziekolwiek wysokiego stanu(atmega, nie daje znaku życia[poza programowaniem]). Na porcie D powinienem mieć kilka stanów wys i niskich, a na B migające diody. P.S. No chyba, że rzeczywiście...
co do wejścia z pullup: kasujesz odpowiedni bit w DDR (ustawiasz jako wejście), a odpowiedni bit w PORT ustawiasz. co do kodu: losowo? może to być spowodowane przez 2 rzeczy: po pierwsze nie masz żadnego eliminowania drgania styków (jeśli takowe mogło by się pojawić), po drugie sprawdzasz nie przejście 1->0 tylko sprawdzasz, czy przycisk jest naciśnięty...
Po pierwsze do takich zastosowań nada się byle jaki MOSFET Logic Level, to zostało już napisane. Po drugie, warto sprawdzić datasheet ATMega, nie pamiętam wartości ale wiem, że piny IO w stanie HI mają bardzo małą wydajność prądową (z tego co pamiętam mniej niż 1mA) za to w stanie LO było chyba 40mA.
Yghm... przyznaję - nie próbowałem. Jendak tak sobię myślę, że masz potrzebę programowego sprawdzenia czy na pinie jest stan niski, czy wysoki. Nie musisz zwierać pinu całkeim do masy, tylko przekroczyć próg przełączenia wejściowej brameczki... Jeśli zasilisz układ z niższego napięcia (np 2.7 V), to nie zbiżysz się nawet do tych absolutnie maksymalnych...
Podstawowa sprawa to wydajność prądowa tego gniazda USB i prąd jaki pobierał ci będzie cały układ zrealizowany . Należy to sprawdzić i zastanowić się ,czy nie będzie to zbytnie obciążenie gniazda( w różnych modelach to różnie bywa, nie powinno się mylić prądu ładowania przez usb z prądem obciążenia gniazda usb, bo nie zawsze to jest to samo). Generalnie...
Na Bascomie specjalnie się nie znam ale powinno być tak, że piny(te od switchy) powinny być podciągnięte przez wewnętrzny rezystor do zasilania. Realizuje się to przez wpisanie jedynek w odpowiednie pozycje rejestru PORTD. Port powinien być ustawiony jako wejście(czyli zera na odpowiednich pozycjach w rejestrze DDRD- są tam już po starcie procka), a...
A co zrobić żeby kolejne kliknięcie zmieniło x na zero? To nie zadziała zbyt dobrze, bo przytrzymanie przycisku będzie ciągle zmieniać stan x na przeciwny. Zresztą taką zmianę szybciej można zrealizować za pomocą x^=1; Stąd też najlepiej PINC przypisać do jakiejść zmiennej tymczasowej i sprawdzać czy od ostatniego sprawdzenia stan przycisku uległ zmianie....
Mi działa dobrze. Na symulatorze ustaw ID0...4. Stan spoczynkowy to stan wysoki.
Twój problem nie wynika z priorytetu przerwań tylko braku umiejętności prawidłowego ich wykorzystania i zastosowania biblioteki która jest źle napisana . Zazwyczaj dzieje się tak gdy użytkownik w przerwaniu umieszcza całą procedurę obsługi bufora , wyświetlacza lub innych peryferii lub po prostu timer odmierza krótszy czas niż trwa obsługa przerwania...
Witam Pytanie będzie lamerskie, ale trudno. Napisałem sobie program w C (WinAvr) i chciałbym jakoś przesymulować, czy wystarczy RAMu . W programie zadeklarowałem kilka sporych tablic i nie wiem, czy RAMu wystarczy na stos, czy program mi się gdzieś nie wywali. To juz drugie podejście, w pierwszym przez pomyłkę zadeklarowałem zbyt duże tablice, program...
Najlepiej to przejrzyj jak to zrobili inni, przemyśl te przykłady i jeszcze raz napisz od początku. Jeśli Ty sam piszesz coś czego nie jesteś w stanie sprawdzić i zrozumieć to znaczy że porywasz się "z motyką na słońce".
czy ten schemat , to był zalążek twojego kodera? nie, mój koder jest oparty o http://www.blue.ukf.pl/mpxcoder.pdf + na tym samym procku jest generowany kompletny sygnał rds. jeśli tak to czy ATmega jest w stanie wygenerować atmega potrzebuje 2 cykli na załadowanie danej i wystawienie jej na port,2 cykli na powrót na początek pętli, czyli jak chcesz...
Mam pewien pomysł jak zrobić taką zabawkę. Sprawdzić poprawność napięcia zasilania w złączu można prosto i na kilka sposobów i to nie problem. Jeżeli chodzi o linie diagnostyczne ISO K i L ja to widzę tak: wymuszamy na linii logiczne 1 (na kilka ms) i sprawdzamy czy ta jedynka się pojawiła. To samo robimy wymuszając logiczne 0. Jeżeli nasze stany pojawiają...
Układy w obu programatorach są zasilane 5V a atmega 3,3V . Stan wysoki z atmegi może nie być rozpoznanny jako wysoki w układzie zasilanym przez 5V. Reset jest zwierany do masy więc działa.
Zrób sobie najpierw obsługę jednego wyświetlacza, czyli napisz funkcje switch() {case} lub lepiej o tablicę znaków (zdaje się tak próbowałeś) Pamiętaj żeby skofigurować użyte piny jako wyjścia. Potem zrób przycisk. Na początek prosta pętla która przepisze stan przycisku na jakiś bezpośredni LED. Wciskasz, trzymasz, led się zmienia....
Procesor podłączony prawidłowo, zasilanie jest wszędzie. Z góry dziękuję za pomoc. "prawidłowo" - pojęcie bardzo subjektywne, nie dla wszystkich ma to samo znaczenie. 1. Czy po wgraniu programu sprawdziłeś co tam jest faktycznie wpisane (?) - 'verify'... 2. Czy 'Reset' jest podciągnięty do VCC i czy podczas prób jest na tym pinie logiczny stan wysoki?...
Zacznijmy od tego co to za nadajnik i odbiornik. Czy to taki prosty "przedłużacz drutu" (gdzie odbiornik powiela stan pinu w nadajniku)? Jeżeli tak to sprawdź to najpierw na microswitchu i diodzie LED.
Jaki µC stosujesz? Bo niektóre mają małą wydajność prądową na wyjściach w stanie wysokim. Jeśli to jest jakaś ATmega to nie powinno być problemu.
normalnie jest tam stan wysoki. Podczas ACK na 50ms jest niski. Miernikiem tego sie nie zaobserwuje jednak np gdybyśmy podłączyli diode to mignie(katoda do pinu)Zrobiłem dzielnik prądowy i do masy obniżyłem nap z 5 w stanie wysokim do 3,9 jednak takie rozwiązanie zbyt obciąża zasilacz bo M8 i tak ma źródła prądowe. Nie rozumiem tego to co M128 nie bedzie...
Dziękuję wszystkim za odpowiedzi. Sprawdziłem jak to jest z tym stanem wysokim na ATmega i rzeczywiście nota katalogowa podaje 0,6*Vcc, ale to jest minimalne gwarantowane napięcie przełączające w stan wysoki. Pokusiłem się o sprawdzenie tego na kilku AVR'ach i wyszło, że w praktyce stan wysoki zaczyna się od ~1,7V. Nawet jeśli się trzymać ściśle dokumentacji,...
Chodzi Ci o stronke filmiki z mojego podpisu ?? :P Jesli chodzi o sprawdzenie portu, to zrob tak. Napisz dwa kroootkie programy, jeden w ktorym tylko bedziesz wystawiac jedynki na wyjsciu i drugi dla zer. i wtedy zobacz czy port nie dziala. Ide o zaklad o flache ze bedzie dzialac :)
Chciałem obserwować stan bitu TXC w rejestrze UCSRA, ponieważ program zatrzymywał mi się na: loop_until_bit_is_set(UCSRA,TXC)... ale właśnie do mnie dotarło, że ten warunek powinien być sprawdzany po wysłaniu, a nie przed. Chociaż i tak dobrze było by móc sprawdzić stan dowolnego bitu w dowolnym rejestrze i wyświetlić go na LCD.
Hmm , z tym rozpoczęciem programowania poprzez reset to lipna sprawa niestety. Moduły są rozsiane w róznych miejscach i właśnie dlatego założyłem ten temat. Myślałem że już może ktoś to zrobił wcześniej. Ja osobiście wolałbym użyć np. watchdoga do inicjacji wgrywania oprogramowania czyli : wysłać poprzez rs485 polecenie np: firmware_1 i to polecenie...
Przerzutnik D w technologii CMOS ([url=http://www.elenota.pl/?search=cd40... pobiera do 1µA). Zbocze narastające napięcia z czujnika powoduje wpisanie do niego stanu podanego na wejście, a potem atmega wysyła mu sygnał Set, albo Reset, żeby zmienić stan z powrotem. Z tym, że on daje bardzo mały prąd, zwłaszcza przy 3.3V, więc jeszcze potrzebny...
Na tym właśnie polega reset, że procesor przyjmuje ustalony przez producenta, domyślny, zgodny z notą stan. Dzięki temu program może przyjąć pewne założenia.
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...
Moduł jest podłączony przez konwerter stanów logicznych aby Atmega mogła odebrać sygnał (BT działa na 3.3V). Wszystko sprawdzałem 10 razy jeszcze przed zrobieniem płytki i 10 razy po, na 99.9% podłączenie jest dobre. Nie podciągałem do Vcc. Nie konfigurowałem modułu, są ustawienia fabryczne. Jutro podłączę wszystko na płytce stykowej i dam znać o rezultatach....
Da się ale wymaga to nieco więcej gimnastyki. Jeżeli nie działa to trzeba przyjrzeć się transmisji na najniższym poziomie. Najlepiej wyślij kod to może coś się rzuci w oczy. Sprawdź też czy porty są dobrze pokonfigurowane. Sprawdź czy nie jest aktywny fuse bit odpowiedzialny za jtag(domyślnie włączony i wyłączający z normalnego działania któreś piny...
Dziękuję :D Nie rozumiem tylko jednego na tym schemacie - po co są te oporniki 330 na pinie R-EXT? A porpos tamtego pytania wyżej, to chodziło mi o to czy da się w każdym z układów ustawić określone stany wyjść, czy wszystkie połączone szeregowo ze sobą będą miały takie same stany i nie da się na to poradzić. Z tego co o SPI czytałem, zależy to od stanu...
hmmm, a mógłbyś mi dokładniej powiedzieć jak sprawdzić te rejestry stanu ? Bo jestem jeszcze dość zielony w tych sprawach :( Udało mi się poprawnie podłączyć kwarce 12Mhz do Atmegi 8 i 16.
Simon Monk - Arduino dla początkujących. Podstawy i szkice Arduino w akcji - wydawca nieznany (dostałem książkę w opłakanym stanie bez okładki) Mikrokontrolery AVR ATmega w praktyce - Rafał Baranowski Mikrokontrolery AVR .Język C. - Mirosław Kardaś - Tej książki są dwie części AVR Praktyczne projekty - Tomasz Francuz
Czy zdarzają się tego typu uszkodzenia atmegi? Biorąc pod uwagę info z tego forum, tak co druga atmega wychodzi z fabryki uszkodzona. Rzeczy z tymi procesorami dzieją się niesamowite a ludzie pracujący w Atmelu powinni zająć się czymś innym. Masz wyłączonego watchdoga fusami? Druga sprawa to przycisk masz na PD0 a sprawdzasz stan na PD3. Chcesz sprawdzić...
Ten algorytm zupełnie nie działa, bo nie posługuje się jakimkolwiek wiarygodnym wzorcem czasu. Nie wiesz więc, czy masz częstotliwość 5, 50 czy 500 Hz. WIszy tylko, że są jakieś zmiany stanu wejścia.
Zacznij od sprawdzenia poprawności wysyłania. Bo póki co nie wiadomo co sprawdzasz. Piszesz nam o wartościach wysyłanych i wartościach odczytanych za pomocą analizatora stanów logicznych, i teraz już nie wiem czy to mają być te same wartości. Bo nie wiadomo czy mówisz tu o wysyłaniu surowych wartości czy wartości z tym dodatkowym bitem. Przede wszystkim...
Powinien być 32.768kHz (32768Hz),a mi babka w elektroniku dała 3.2768MHz, więc trochę większy niż powinien. No nieźle :) Chciałeś przyśpieszyć czas 100-krotnie? Wystarczająco szybko już leci... :) A poważnie - jeśli podłączysz PCF-a prawidłowo i jego generator działa jak należy, to (przy domyślnym ustawieniu rejestru kontrolnego) na pinie 7 (/INT)...
Faktycznie masz rację , jeszcze miałem oczka zaspane i marzenia senne więc taki głupi błąd przy rozróżnieniu przemienne-zmienne . Zwracam honor . Jeżeli połączenie z obu linii zastosujesz diody + kondensator to unikniesz stanów przejściowych w momencie przełączania napięć .
(...) Wiem że można kombinować i ustawiać za każdym razem zamiast "1" stan HiZ (...) Ja tutaj nie widzę żadnego kombinowania. Przecież wyjście typu otwarty dren albo wystawia "0" albo przyjmuje stan HiZ. Ustawiasz PORTxn=0 i stan wyjścia zmieniasz poprzez zmianę DDRxn. Prościej się nie da :D Trzeba tylko pamiętać, że wyjście dla DDRxn=0 przyjmuje stan...
Nie bardzo rozumiem co chcesz osiągnąć bo to o czym piszesz już regulujesz, przy stałej częstotliwości zmieniając czas trwania np stanu wysokiego wpływasz na czas stanu niskiego.
Tak można sprawdzać stan wyjścia ustawionego jako wyjście. Tylko co z tego że sprawdzisz kolego stan tego pinu i co ci to da ? Zobaczysz mniej więcej to samo co jest akurat wpisane w port.
Jaki przekaźnik? - jaka oporność cewki/prąd pobierany/napięcie zasilania? Z jakiego napięcia toto jest zasilane? Mówimy o technice! Zasilacz się nie wzbudza? 2V/40k - źle podchodzisz do sprawy. Sprawdź w datasheet jakie napięcia daje Atmega dla stanów logicznych na wyjściu. Np. dla TTL to jest: "0"=0-0,8V, "1"=2-5V. Dla takich stanów sterujących kluczem...
Niestety nie, gdyż druga część warunku (PINC & 0b11111101) będzie prawdziwa jeśli dowolny ze wskazanych bitów będzie równy 1, a autor chciał, żeby wszystkie pozostałe były w stanie 1.
Stronę sprzętową mam już gotową. Został program do napisania. Z wielkimi trudnościami i pomocą innych napisałem taki program: #define F_CPU 1000000L #include <avr/io.h> #include <util/delay.h> int main(void){ //początek0 funkcji main DDRD=0xFF; //PORT D, wyjście DDRC=0x00; //PORT C, wejście while(1){ //początek...
sprawdzenie stanu oleju sprawdzenie stanu konta zmiana stanu atmega
bosch zmywarka hałas tablet zamiast nawigacji video pełny ekran
hc900 firmware silnik szczotkowy szeregowy schemat
LiitoKala Lii-600 – jak ładowarka szacuje procentowy poziom naładowania akumulatora? LiitoKala Lii-600 – czy rozpoznaje ogniwa NiMH i NiCd? Funkcje ładowarki, algorytm ładowania