Witam Napisałem program do sterowanie diodą LED mocy, który za pomocą jednego przycisku zmienia tryby pracy diody. Po naciśnięciu przycisku dioda świeci słabiej, po naciśnięciu drugi raz dioda świeci mocniej, gdy nacisnę trzeci raz włącza się tryb SOS, gdy nacisnę czwarty raz port się zeruje i dioda przestaje świecić. Problem polega na tym, że gdy nacisnę...
Po włączeniu (resecie) rejestry PORT mają domyślną wartość 0, więc nie musisz zerować bitów. Diody podłącz przez rezystory. Po krótkiej analizie wydaje się być OK. Polecam zacząć od prostszych języków programowania, jak C. Ogólnie to nie rozumiem, po co w taki dziwny sposób łączysz te Ledy. Przyjęło się podłączać Anody do VCC, a sterować katodami, ustawiając...
I jeszcze: jak jedną instrukcją (zamiast ośmioma) ustawić wartość DDRx lub PORTx, np. DDRA = 0xff; PORTA = 0xff; PORTA = 0; Kolejny etap wtajemniczenia polega na uwierzeniu, że żeby bit o wartości 0 nadal miał wartość 0 nie trzeba go zerować - wystarczy nic z nim nie robić. ;)
Dasej, dzięki za odpowiedź! Z góry przepraszam za mój nie profesjonalny schemat(próbowałem kilku stron, z niepowodzeniem. Program na ten moment powinien za pomocą klawisza PD0 zapalać diode na 3 sec i za pomocą PD1 zwiększać zmienną i która wskazuje która dioda ma się zapalić. Nie jestem pewien co do kolejności podłączenia kabelków do segmentów wyświetlacz,...
Witam. Jak w temacie. Mam problem z uruchomieniem diody przez określony czas (np. 1s) po wywołaniu jej w kodzie. Program działa w ten sposób, że pobiera dane z enkodera, który mierzy odległość (średnica koła * 3.14 / ilość korków enkodera). Ta odległość jest przypisywana do innej zmiennej, a następnie porównywana jest różnica. Gdy będzie ona większa...
Witam chciałbym naprawić z Waszą pomocą moją płytę główną, która się nie uruchamia. Płyta główna: BN41-02568B BN94-12438K Zasilacz: BN44-00807A CY-QM055HGEV1H Samsung UE55MU6172U Napięcia na płycie 5V, 3.3V i 1.8V obecne, brak diody standby, na włączniku jest 1.8V i spada po naciśnięciu power. Kombinowałem z oryginalnym wsadem IC1604 w tym temacie:...
Mam do napisania mały program na DSM-51 i szukam jakiejś pomocy. W tym momencie działa tak, że jak nacisnę na klawiaturze "2" to dioda mruga co mniej więcej sekundę. Jak nacisnę przycisk "1" to dioda nie mruga. Muszę zrobić teraz taką rzecz, używając timera 1 mam poznać czas od momentu zgaśnięcia diody (tego podczas mrugania) do momentu naciśnięcia...
A nie przypomina ci ten układ jednej z wersji zasilacza beztranformatorowego?? Dobrze przeanalizuj sobie układ, rozrysuj, a może sam dojdziesz do tego co to za dioda. Pewnie nic nadzwyczajnego.. Ja na twoim miejscu przerobiłbym układ na zasilanie z małym transformatorkiem. Same zalety w porównaniu do tego układu. Ponadto zastanowić się trzeba, czy ocalał...
Ile ma być liter? Czy to ma być tak, że zapala się pierwsza litera, potem druga.... aż do ostatniej, a potem kolejno gasną, czy może, że gasną wszystkie naraz, czy odrębne zapalanie się LED-ów, bądź ich grup w ramach jednej litery, potem następnej? Ograniczeniem pojedynczego 74164 (czy innych 8-bitowych rejestrów SIPO) jest to, że można mieć tylko 8...
Kod który zamieściłem jest na ATTiny2313 więc nie powinno być problemu z przeniesieniem na ATMega8 - wystarczy sprawdzić i ew. zmienić nazwy rejestrów. Mam nadzieję że Ci się przyda. void PWMint(void) { DDRB |= (1 << PORTB2); DDRD |= (1 << PORTD5); // jako wyjscia DDRB |= (1 << PORTB4); TCCR0A =...
Witam. Mam układ zbudowany, tak że na dzielnik napięcia podaję 5V. Dzielnik zbudowany jest z 10 rezystorów więc na każdym mam ok. 0,5V. Zmierzyłem napięcia aby mieć dokładniejszy wynik (czyli z każdej nóżki dzielnika). Przeliczyłem wartości napięcia na wartość cyfrową. Do pinów PB0..PB4 podłączyłem przez rezystory diody. Napięcie referencyjne wewnętrzne...
Te porty ustawione są na wyjścia PA0..PA7, PB0..PB7, PC0..PC7, PD0...P4 do każdego z nich podłączony jest 1 LED. Porty PD5...PD7 ustawione są na wejścia i do każdego podłączony 1 przycisk. Program ma działać następująco. Gdy zostanie włączony 1 przycisk jeden raz zapali się pierwsza sekcja LED-ów, gdy przycisk nr 1 zostanie wcisnięty 2 raz następna...
Dioda czerwona ma spadek napięcia około 1,8V. Spadek napięcia na typowej diodzie zielonej to 2,1V (chociaż tutaj są i diody o spadku 1,9... a są i o spadku do 4V - ale nie dotyczy to zwykłych diod sygnalizacyjncy a raczej wszelkiego typu diod superjasnych i dużej mocy). Teoretycznie wystarczy więc połączyć diody równolegle na jednym rezystorze. Obwód...
Bardzo proszę was o pomoc bo już mi witki opadają. Co robię źle w tym programie? Nikt nie potrafi mi pomóc. Zadanie: [syntax] Ćwiczenie Nr 3 /Elektrotechnika Napisać program dla mikrokontrolera MSP430FG4618, który w przerwaniu od Basic Timera – mruga jedną z diod LED podłączonych do portu P2 (P2.1 i P2.2). Czas pomiędzy zmianą stanu na diodach...
Podaję całość kodu: [syntax=c]#define F_CPU 8000000L #include <avr/io.h> #include <util/delay.h> #include <stdio.h> #include <avr/interrupt.h> #include <math.h> int main (void) { DDRC=0b00111000;//wyjścia: PC3-PC5 (dioda rgb) PORTC=0xFF;//podciągnięcie GICR = (1<<INT0); // przerwanie INT0 OCR1AH = 0x1B; // ustawienia...
Wpisując coś do rejestru za pomocą operatora przypisania = zerujesz przy okazji wcześniej ustawione tam inne bity. Jeśli więc włączyłeś rezystor pull-up na bicie 0x02, a w pętli głównej ustawasz: |= - zerowanie bitu: &=~ - zmiana bitu na stan przeciwny: ^= Szczegóły w kursie C: Zaglądnij także do spisu treści powyższej strony.
Dzięki , fajna stronka , nie wiem jak to wykorzystać w moim kodzie , dla mnie wystarczyłoby żeby wykryć zatrzymanie licznik2 oznaczające brak sygnału repetycji z pilota i wtedy wykonać zgaszenie diody . Przecież sam koncept wykorzystania kodu repetycyjnego możesz 'wyłowić' z tej prezentacji. Skoro wybrałeś stosowanie liczników, co jest moim zdaniem...
jak połączyć piny żeby djody zapalały się po szeregowo. .Chodzi mi o cd4013 ,tak to są dwa przerzutniki. W symulatorze łacząc wejście data z zegarem w pierwszym przerzutniku i potem łaczac zegar z zegarem w drugim przerzutniku można na wyjściach Q otrzymywać stan wysoki kolejno na przerzutnikach. a będziesz wiedział o co mi chodzi. Domyślam że chodzi...
ten programator łaczy sie i pracuje bez problemowo proponuje całkowicie usunąc kandensator z obwody resetu jedynym mankamentem tego programatora jest słaby sygnał zerowania który może sie objawiać brakiem możliwości zerowania procka jesli w układzie resety znajduje sie np kondensator
Parę obserwacji po zerowaniu: - Jeden przedłużacz na bolcu ma 220 V ( reszta gniazdek i przedłużaczy jest OK ( nie świecą się bolce) ) - Jeszcze gorzej trzeszcza sprzęty podłączone i bardziej migają diody (może przez ten przedłużacz) - Jeżeli to nie przedłużacz to czemu tak ciągle trzeszczy i diody migają w przedłużaczach i trzeszczą (chcę wiedzieć...
Wykorzystuje te zmienne do pomiaru ilości spalonego paliwa. Układ to komputerek do samochodu mierzący temperaturę, napięcie, spalone paliwo, sprawdzanie włączenia świateł, sygnalizujący włączenie alarmu zamiast diody i parę innych w przyszłości. Odłączyłem te czujniki, przejechałem 20 km i wygląda na to że wszystko gra, czyli któryś z nich może być...
Programowo nie widzę jakiś błędów prócz && miast & w pętli while(). Na początek spróbuj wyświetlić zaemulowane odczyty z ADC, np.: 1,95V potem 1,62V itp. a między nimi jakąś małą pętlę delay żebyś zdążył zobaczyć wynik - będziesz wiedział że wyświetlacz poprawnie działa, a funkcje konwertują wynik jak należy. W razie nieusuwalnych problemów proponuję...
Mniej więcej dobrze rozumujesz ale Logo z tego co wiem jest taktowane częstotliwoscią 96MHz , tak że sam Timer jest o wiele niedokładniejszy niż ten czas kiedy na bramce nor mamy stan wysoki , Praktycznie w żaden sposób nie wpłynie to na jakąś niedokładność w twoim układzie. A napewno tego nie zobaczysz. Powiedzmy że cała ta instrukcja z zerowaniem...
Możliwe że pytanie powinno być w dziale piaskownica. #define ledPin 10 void setup() { pinMode(ledPin, OUTPUT); } void loop() { digitalWrite(ledPin, HIGH); delay(500); digitalWrite(ledPin, LOW); delay(500); // ZANUGUJ ?? - tylko ten pin // delay(500) } Ten programik miga...
Witam. Jakiś czas temu awarii uległ mój dysk przenośny. Udało mi się odzyskać z niego dane za pomocą programu DMDE ale chciałem też dokonać remapowania/zerowania dysku twardego i tu pojawia się problem. Przeszukałem już chyba cały internet i wypróbowałem chyba większość dostępnych programów do tego służących. Problem polega na tym że po podłączeniu...
Dostałem Miernik Skuteczności Zerowania MZW-5, ponoć był sprawny ale sąsiad go do niczego nie potrzebował więc dał synowi do zabawy. Obecnie wskaźnik analogowy ma uszkodzone uzwojenie ale sprzęt działa i miernik uniwersalny podłączony zamiast wskaźnika pokazywał jakieś wartości. Podłączając bezpośrednio pod wystające z obudowy przewody, miernik w zakresie...
Te Waity do diody Led żeby patrzeć czy program się zawiesił nie są szczęśliwym rozwiązaniem dla programowego portu :D Zobacz tak. Dioda błyśnie jak coś odbierze i oczywiście wyśle Ci to drugim portem software`owym. [syntax=vbnet]$regfile = "m328pdef.dat" $crystal = 8000000 $hwstack = 32 ' default use 32 for the hardware stack $swstack = 10 ' default...
Dobra, niby nie dostałem odpowiedzi, ale zacząłem szukać tu na forum i już wiem, że polecają tu ludzie zerowanie tylko w sytuacjach gdy nie ma uziemienia i wyłącznika różnicowego. Chodzi mi właśnie o takie sytuacje, bo będąc u kogoś nikt mi nie pozwoli rozkręcać i zerować gniazdka, będę wtedy mógł spokojnie sam sobie je wyzerować w listwie. Nie wiem...
Możesz dodać licznik wciśnięć S1 = pierwszy cykl, licznik = 0 - diody, kolejny = 1 -> lampy, zeruj licznik (albo zeruj za pomocą s2)
W Bootland jest wersja załączana stanem wysokim, czerwony laminat, droższa x2, wg mnie lepsza, przy starcie piny mogą mieć przez chwilę stan niski i przekaźniki mogą "zaklekotać". Można wyjścia używane do sterowania podciągnąć do VCC rezystorem 10k. Jest lepsza, dlatego, że przy starcie przekaźniki moga zaklekotać? Wyjścia z arduino? Spokojnie bez...
Witam. W załączniku są dwa proste układy autozerowania. Czas trwania impulsu ustala stała czasowa RC. Dioda rozładowuje kondensator po wyłączeniu zasilania. Pzdr.
bawiłem się trochę driverem UserPort, a nawet napisałem sobie funkcje do sterowania nim, tak że już go poznałem A co do LPT to w biosie dobrym rozwiązaniem będzie ustawienie portu w tryb Bi-Dir, i teraz jak chcesz wysyłać na port to zerujesz jeden lub wszystkie(jeśli nie używasz extra pinów lpt) bity portu 890: _outp(890,255-32) <-- tutaj...
a czego sie boisz? taką bariere robi sie bardzo prosto przy urzyciu procesora!. W dodatku dochodzi doskonała stabilnosć. uruchamiasz jeden z timerów, który odlicza ci kawałki czasu- powiedzmy 50ms. I co te 50ms negujesz 20 razy stan diody IR zarazem zwiększając jakąś zmienną- nazwijmy ją "błąd". Przyczym to negowanie musi mieć okres dobrany do czestotliwosci...
Ja bym to zrobił tak, że zasilacz umieściłbym wewnątrz budynku (lepiej, żeby nie miał kontaktu z wilgocią atmosferyczną) i te 12 V doprowadziłbym dopiero do lampy. Te 10 diód jednak podzieliłbym na 5 "dwójek" składających się z dwóch diód i jednego opornika (200 Ohmów?) połączonych szeregowo i takich "dwójek" podłączyłbym do zasilacza 5 szt. Zasilacz...
Po włączeniu START/PAUSE załącza się pompka spustu wody (to normalne) i zatrzymuje się praca. NA panelu świecą się diody SRART/PAUSE i "trwanie procesu prania"(druga od dołu). Zeruję programator i przełąnczam wtyczkę zasilenia pralki 230V (zamiana L z N). Nastawaim pokrętłem program, przycisk Start i inne nie reagują, zaczyna migać dioda "zakończenie...
Witam nie musisz podłączać każdej diody osobno robisz kolumny i wiersze w ten sposób dla wyświetlacza 8x8 użyjesz 16 wyprowadzeń uP i teraz jeszcze pytanie co chcesz na tym wyświetlić ?? sterowanie takim wyświetlaczem nie jest wcale trudne a mianowicie w duzym uproszczeniu robisz to tak: zapalasz 1 kolumne nastepnie zapalasz diody w tej kolumnie pozniej...
Cześć, jednak nie zadziałało. Napisałem program: przerwanie(pojawienie się na INT1 logicznej jedynki) zmienia wartość zmiennej na 1, w pętli programu zostaje sprawdzane czy wartość zmiennej wynosi 1, jeśli tak to mryga raz diodą i zeruje zmienną. Tylko nie rozumiem dlaczego gdy klikam przycisk w pilocie i przykładam do odbiornika podczerwieni to ta...
Na tym schemacie na filmie jest błąd. Nie można łączyć wyjcia rozładowującego (nóżka 7) z nóżką zerowania (4), bo układ się sam zablokuje. Nóżkę 4 łączy się zwykle bezpośrednio z plusem zasilania. Poza tym LED powinna mieć szeregowy rezystor ograniczający prąd, bo różne egzemplarze 555 mają różną wydajność prądową wyjścia rozładowującego i dioda jest...
Tak, próbowałem wszystkich komend w przeróżnych kombinacjach. Problem jest ten sam - sms na 100% dochodzi - moment jego przyjścia sygnalizuje dioda, odpowiedzi jednak brak. SMSy nie tylko nie zwracają komunikatu, ale raczej także nie wykonują swojego zadania bo np. noadmin123456 +numer, nie powoduje, że mój numer telefonu traci status administracyjnego....
Witam! Chciałbym napisać program na mikrokontroler dsm51 w którym to sterowanie diodą test odbywać się będzie za pośrednictwem timerów. Mianowicie program ma wyglądać w ten sposób że po uruchomieniu go dioda świeci się przez sekunde i sekunde sie nie świeci potem 2s sieci i 2s nie potem 3s swieci i 3s nie i tak analogicznie do 255 i zapętlić to aby...
P1: Odwołujesz się do pojedynczej linii portu P1.6 i tylko ją zerujesz. Dioda się zapali o ile będzie sprawna i odpowiednio podłączona do tej linii portu. P2: Kod wynikowy identyczny z P1 tylko linię portu P1.6 nazywasz "LED" - lepiej się pisze program. Przy 4 portach mamy 32 linie i pamiętanie "na cyferkach" co gdzie jest podpięte może co najwyżej...
Witam, napisałem prosty program zmieniający za pomocą przycisków jasność diody LED. Na podstawie tego muszę napisać program, który będzie mi generował "automatycznie PWM". Działać to ma tak: Współczynnik wypełnienia od 0 rośnie automatycznie do 100. Zwiększanie współczynnika wypełnienia inkrementuje się (zmienna wypelnienie++; ) po każdym przepełnieniu...
Hej. Zbudowałem sobie wyświetlacz widmowy, tylko po wgraniu właściwego programu nie działa jak należy. Ale gdy wrzucę do procka coś prostego np. żeby mrugał naprzemiennie diodami to wszystko działa jak należy i zero mrugania wiec wnioskuję że prędkość obrotowa jest wystarczająca. Mój procesor to Atmega 8, wyświetlacz ma 8 diod 6 diod jest podłączonych...
Zwróć uwagę że w dwu przypadkach (na trzy), zapalają się dwie diody równolegle. Czyli wystarczy dla ruchu w jedną stronę mieć tylko trzy wyjścia sterujące, na których sygnały występują po kolei. Wyjście A zapala 1 i 5, B 2 i 4 oraz C 3. Zauważ że dla ruchu diod z powrotem wystarczy jeszcze tylko wyjście D dla 2 i 4 czyli równoległe z B, liczące dalej...
Rozwiązałem oba problemy. 1. Wskazywanie temperatury maksymalnej powyżej 35 stopni. Odpowiedzialne za to było resetowanie zmiennej Tmin i Tmax. Zamiast: [syntax=basic4gl]Tmin = T Tmax = T[/syntax] musiałem inaczej "wyzerować zmienne". W sumie nie wiem dlaczego tak, rozwiązanie znalazłem gdzieś w sieci bez wyraźnego wytłumaczenia. Wcześniej gdy ten sam...
Nie mam bladego pojęcia. Prąd w takim oczku się nie zeruje. Przez wszystkie elementy płynie taki sam - I. Co do ch-ki diody - przegapiłem ją z powodu tego V - jakoś pomyślałem że to Volt. Mając równanie oczka i ch-kę diody, oraz dwie niewiadome (V oraz I) można obwód rozwiązać: Vs-R*[10^(-12) * (e^(38V) - 1)]-V=0
Witam! Mam problem z odpaleniem zwykłego, prostego programu w języku C. Ostatnim czasem zamówiłem programator pod USB razem z podstawką. Coś takiego: I chce zaprogramować Attiny2313 ale coś mi to nie idzie. Może opisze co robię po kolei: Odpalam program AVR Studio, wchodzę w Project > New Project > AVR GCC > AVR Simulator 2 > Attiny2313...
Witam wiem że było juz kilka tematów na temat tego problemu jednak żaden nie pomaga . A mianowicie drukarka wywala mi błąd po włączeniu i migają obie diody impulsowo na czerwono, stało się tak gdyż zakleszczył się papier i gdy go wyciągnąłem to wywala błąd. Reset drukarki nie pomaga,zerowanie licznika ani pampersa również nic nie daje . Drukarka była...
Dzisiaj trochę podłubałem i tak: - podmieniłem wszystkie MAA502 w przetworniku AC/DC S4 jest nowy, a na miejsce S3 wlutowałem na początku też nowy, ale później zastąpiłem starym (S3 lub S4), w przetworniku A/C są 4 nowe, a w układzie wejściowym zstosowałem ten, który początkowo był jako S3 lub S4. - sprawdziłem oba tranzystowy przetwornika AC/DC - sprawdziłem...
Tak, zwykły bezpiecznik topikowy 63mA, kupić można w sklepie elektrycznym/elektronicznym tam gdzie sprzedają różne części np. bezpieczniki, diody, rezystory, kondensatory itp. Lub droższy w Agawie z Tomaszowa MAZ.
Gloomwing dobrze napisany program, który na początku będzie zerował położenie (przycisk-wyłącznik krańcowy) i odpowiednio liczył przebytą trasę (np. policzył 4 diody) powinien dać radę - możesz dołożyć do tego jeszcze wyświetlacz LED, który pokaże Ci gdzie jesteś.
[syntax=csharp]#include <avr/io.h> #include <avr/interrupt.h> //definicja LED1 (do którego pinu podłączony LED1) #define LED1 PB0 //definicja LED2 (do którego pinu podłączony LED2) #define LED2 PB1 //definicja początkowej wartości timera #define timer_start 6 //zmienna pomocnicza-licznik używana w przerwaniu volatile uint8_t cnt=0; void...
Pomyliłem ustawianie bitu z przesuwaniem :). Teraz wygląda to tak: // diody podlaczone do portow pd 0,1,2 , switch podlaczony do pc5, przytrzymanie switcha // powoduje zmiane zapalania diod, jesli nie wcisniety inna kolejnosc ! #define F_CPU 1000000L #include <avr/io.h> #include <util/delay.h> int main(void) { /* Wszystkie linie...
Dawno nic nie skrobałem dla AVR, poniżej kod który skompilował się lecz nie ma jak przetestować. Do sprawdzania wciśnięcia klawiszy powinieneś napisać funkcję, która będzie to robić zamiast ciągłego wstawiania prawie tego samego kodu. [syntax=c] #include <avr/io.h> #include <util/delay.h> /* definicje dla preprocesora */ // klawisze #define...
Witam. Trafił do mnie dzisiaj w/w laptop. Problem polega na tym, że komputer czasami się uruchamia normalnie, jednak po chwili zawiesza system. Myślałem, że to wina samego systemu lub HDD i dysk właśnie się zeruje na PC. Z ciekawości jednak w BIOS puściłem test pamięci - zawiesił się na 10%. Wyłączyłem laptopa. Przy ponownej próbie włączenia ekran czarny...
Cześć! 1. Nie definiuj F_CPU w kodzie programu tylko w ustawieniach projektu. tmp ? 6. Poczytaj o eliminacji drgań styków: [url=]klik. 7. Zegar RTC nie jest Ci potrzebny. 8. Masz właściwie problem z czasem migania diody (jak wynika z tytułu), czy ilością mignięć (jak wynika z treści posta)?
A czy podczas napisu "zapraszamy" świeci się dioda od stanu pracy dysku?
Czołem! Może to kwestia minionego Sylwestra, ale nie bardzo rozumiem co ten program właściwie ma robić: 1) najpierw piszesz o zliczaniu (rozumiem, że wciśnięć) 2) we fragmencie "Program na spełniać następujące warunki:" piszesz, że ma (w uproszczeniu) symulować dwa przyciski bistabilne + pilnować aby obie diody się nie świeciły jednocześnie 3) z tabeli...
źle Ci się wydaje - trzeba przełączać kierunek portów Najprościej będzie zdefiniować dwa wektory - jeden z zawartościami rejestru MODER, drugo z zawartościami ODR dla poszczególnych diod/faz, a potem w przerwaniu timera robimy coś takiego (multipleksowanie na 6 faz, wszystkie diody świecą - żeby zapalać selektywnie, trzeba dodać warunkek przed ostatnią...
Cześć. Z uwagi na brak reakcji na podłączony zasilacz zacząłem mierzyć napięcia, po kolei od strony złącza zasilacza (wg schematu). Względem masy na padzie PAD700 mam 19V. Napięcie dociera też na tranzystor Q721. Pa pinie 1, 2, 3 mam napięcie 19V. Na bramce (pin 4) również 19V. Na pinach 5, 6, 7, 8 mam tylko 0,18V. Widzę, że diody (BAT / POWER) to odpowiednio...
Witam mam pytanie do leciwego już sprzętu co jest nie tak lub jak wygląda za koleją procedura sprawdzania przyczyny problemu. Wcześniej było załadowane pranie z tego co teściowa mówiła pralka nie skończyła go do końca nie było wywirowane czyli coś padło po drodze, z początku myślałem, że może nie łączy coś przy drzwiczkach ale raczej to odpada. To co...
Dodatkowo chciałbym podłączyć przycisk, który jak się wciśnie to wyłączy diodę (niezależnie od pozycji potencjometru), a po np. skręceniu potencjometru w skrajną pozycje będę mógł na nowo regulować jasnością diody. Jeśli dobrze rozumiem Twoje intencje ( i też kolega wyżej), to musisz mieć jeszcze w programie dodatkową zmienną typu bool, która zapamięta...
Chciałem jeszcze pociągnąć trochę temat, a wiec poprosiłem o odblokowanie. Powracając do wcześniejszego kodu, to troszeczkę go zmodyfikowałem i teraz wydaje mi się, że funkcjonuje to trochę lepiej, tzn. czas jest bardziej dokładny. Chodzi o tą jedną sekundę. 100 * 10ms = 1000ms, szyli 1s. U mnie w przerwaniu następuje dekrementacja co 10ms zmiennej...
Można też w tym celu wykorzystać licznik typu 4017 według koncepcji ze schematu poniżej. Schemat jest uproszczony i nie zawiera generatora, np. na układzie NE555. Łącząc odpowiednio wyjścia układu 4017 przez diody 1N4148 oraz wejście zerowania licznika można w niewielkim zakresie "programować" sposób migania diody LED. Poprawiony schemat.
Program pokazujesz tu tak, w pełnej edycji postu opcja syntax C++: [syntax=c]void setup() { pinMode(11, OUTPUT); //Dioda niebieska pinMode(10, OUTPUT); //Dioda czerwona pinMode(9, OUTPUT); //Dioda żółta pinMode(8, OUTPUT); //Dioda zielona pinMode(7, INPUT_PULLUP); //Przycisk digitalWrite(11, HIGH);//Wyłączenie diod digitalWrite(10, HIGH); digitalWrite(9,...
Widziałem taki ROM, mogę dać schemat ;) Rzeczywiście fajny Wracając do tematu z ROMEM to ja nie kombinowałbym w ten sposób , bo pewnie nie umie zaprogramować pamięci. Proponuję kompromis ;) Nr 168 Generator sekwencji stanów logicznych Można go nawet przerobić, ale prosto zaprogramuje pamięć i może nawet da się wykorzystać jeśli zrobi się zerowanie licznika...
Czy 8051 ma preskaler na licznik? Napisałem programik pod AT89S8252 w C pod Keila uVision. Ledy zapalają się na zmianę a ja bym chciał żeby zapalały się wolniej. Oto działający kod: #include <AT898252.h> sbit LED0 = P0^0; sbit LED3 = P0^3; void main (void) { LED0 = 0; LED3 = 1; TMOD = 0x01;//Rodzaj pracy TRYB1 EA = 1; //globalne wlaczenie przerwan...
Witam.Sprawdz skuteczność uziemienia lub zerowania .Przebicia /upływności/ szukałbym np.na grzałce ,silniku ,filtrze pzecizakłóceniowym.
Paski na opornikach są dość logiczne. Czarny - 0 Brązowy -1 Czerwony - 2 Pomarańcz -3 Żółty - 4 Zielony -5 Niebieski - 6 Fioletowy - 7 Szary - 8 Biały - 9 W systemie czteropaskowym na końcu znajduje się jeszcze pasek tolerancji. Jeśli jest złoty to rezystor ma tolerancję 5%, jeśli jest srebrny to ma 10% Jeśli nie ma paska (są tylko 3) to ma tolerancję...
Dorzucę jeszcze jeden pomysł: 4017 to licznik, 4043 to 4-krotny flip-flop R-S. Jak 4017 jest wyzerowany, wszystkie wyjścia są w stanie "0", ( "1" na wyjściu Q0 zeruje wszystkie R-S-y ). Wędrująca "1" na wyjsciach 4017 zapala po kolei flip-flopy.. Na 9 cylku jest pauza., potem znowu zerowanie i powtórka od początku. Jest jeszcze jeden pomysł. Wykorzystać...
Osobiście nie ufam wewnetrznemu podciągnięciu na /RESET i dokładam 4,7-10kΩ do Vcc. Moje procedurki w petli głównej zerują również licznik watchdog-a w pętli głównej (plik Main.asm), który gdy osiągnie maksimum, resetuje mikrokontroler. Oprócz tego jest tam taki myk, że reset od watchdoga nie inicjalizuje zmiennych(danych w RAM, m.in. licznik "tyknięć"...
Małe ogrzewacze DAFI są też z otwartym elementem grzejnym czyli drutem zanurzonym w wodzie. Jest to całkowicie bezpieczne i nie tylko dafi takie robi ale również siemens, stiebel eltron, aeg a z polskich producentów kospel i biawar. Warunkiem użytkowania takiego ogrzewacza jest sprawne zerowanie ale z doświadczenia wiem że nawet jesli takeigo nie ma...
No może i ale ja nie mam do niej instrukcji dostałem ją w dobrej wieże... może pomożesz w zerowaniu tego komunikatu? POZDRAWIAM
1. Program napisany srednio :) 2. Nigdy nie podawaj absolutnej sciezki do pliku *.h tylko umieszczaj go w katalogu projektu - dobra rada. 3. #include <16F628A.h> - tez go includuj, config word tez dobrze umiescic w pliku zrodlowym. 4. A do sedna: nigdzie nie zerujesz wartosci zmiennej i , ktora gdy raz dojdzie do wartosci licz , zinkrementuje...
A gdzie wyczytałeś tam takie brednie: Config Pinb.0 = 0 Config Pinb.0 = 1 że te instrukcje zmieniają stan portu? A tu masło maślane: Reset pinb.0=1 Najpierw niby kol. zeruje port i jednocześnie go ustawia...
"To" na pewno nie będzie działać - wejście MR musi być w stanie niskim aby licznik "liczył", kondensator (L :?: ) nie miałby się którędy rozładować, a tranzystor przez zbędną diodę zerowałby (już wyzerowany :D ) licznik po pierwszym impulsie, który i tak sie nie pojawi :cry: Pomyślę, jak to można najprościej zrobić.
Można i 10x16 - potrzebujesz do tego: licznik 4017 (10 wyjść, na jednym jest '1', na pozostałych '0', do sterowania strob i zerowanie), 2 adresowalne zatrzaski (8 wyjść, każde można zmieniać niezależnie - do sterowania 3 bity adresu, dane, strob, i wybór który - razem 6 linii); matryca może być 10 linii po 16 punktów, licznikiem wybierasz linię, stanem...
No nie będą mrugały z różną częstotliwością, ale to był właśnie problem z jakim się tutaj zwróciłem :] A odpowiedzi nie znam dalej, dlaczego tak się dzieje... Drogą dedukcji, w momencie przypisania cnt, licznik się zeruje, i tak na okrągło. Ale to raczej nie możliwe, bo jak przypisać wtedy inne wartości np cnt1[3], skoro by zawsze na cnt1[1] zerowało.
Te elementy to tzw. bramki. Zależnie od typu to dają one na wyjściu stan wysoki przy różnej kombinacji sygnałów wejściowych. Sygnały na wejściach są dwustanowe albo jest stan niski (napięcie na poziomie masy) lub wysoki (napięcie na poziomie napięcia zasilania). Bramki mają przeważnie 2,3, 4 lub 8 wejść. Inwerter (NOT) daje na wyjściu zawsze stan przeciwny...
Właśnie warto bardzo noty katalogowe czytać. Jak ściągniesz sobie do atmegi16 to otwórz sobie rozdział dotyczący obojętnie czego, np timerów. Masz tam wyłożone jak wszystko działa, tabelki jak poustawiać bity i w jakich rejestrach, żeby działał tak a nie inaczej. W paru słowach - wszystko jest tam napisane. Niestety mało kto tam zagląda. Drugą lekturą...
Hehe, dla dobra Twojego poczucia estetyki faktycznie lepiej nie oglądać reszty ;p Problem rozwiązałem parę godzin wcześniej (przy RESECIE brakowało zerowania iteratora "i" -> to załatwia sprawę), układ się syntezuje i symulacja daje poprawne wyniki. Dzięki za rady, postaram się zastosować te wskazówki, zwłaszcza jeśli chodzi o grupowanie kodu w procesy...
W przerwaniu deklarujesz zmienna liczba, ktora przy inicjacji jest rowna 0. Jest jako static więc jest wyzerowana tylko podczas pierwszego uruchomienia, potem już się "nie zeruje". dodaj na końcu while(1);...nie sprawdzałem częstotliwości przerwań więc zakładam że są w porządku. int main(void){ DDRA=0xFF; // PORT A JAKO WYJSCIE TCCR0 |=...
Moja propozycja jest taka, w celu sprawdzenia połączenia, najpierw w przerwaniu odsyłaj echo do terminala, wykluczy to błędy sprzętowe. Druga sprawa jest taka, że nie powinieneś odczytywać UDR w pętli, a tylko w przerwaniu. Żebym gafy nie strzelił, ale wydaje mi się, że w momencie odczytania z UDR rejestr ten się zeruje. W zasadzie to właśnie w przerwaniu...
Witaj, Wysyłasz na piny portu D wartość 7C czyli binarnie 01111100 Innymi słowy ustawiasz 1 na pinach portu D od 2 do 6 (czyli PD2-PD6). [syntax=c]nr bitu: 76543210 01111100[/syntax] a później wszystkie zerujesz. Dlatego wszystkie piny od 2 do 6 mrugają tak samo. Pozostałe dwa piny (PD0 i PD7), ustawiłeś jako wejścia. To jest zbędne: [syntax=c]return...
Nie o to rozwiązanie mi chodziło a sposób odczytu klawisza. To czy będziesz miał wykrywania naciśnięcie klawisza na ext-int to inna bajka. Tam wszystkie kolumny są zerowane i sprawdzane jest który wiersz jest zerem. Potem wszystkie wiersze są zerowane i odczytywana jest kolumna która jest zerem i otrzymujemy wynik. Zwarcie wyjść i tym samym stanie logicznym...
Mam jeszcze jedno pytanie z innej beczki, szukam już jakiś czas jak rozumieć oznaczenia typu: PORTB ^=_BV(7); PORTB |= _BV(2); czy to znaczy, że sumuje bitwo wyjście z bitem z 00000100 i wynik jest wystawiany na wyjściu ? wiem, że te symbole operacji bitowych, ale dlaczego przeglądając proste przykłady ludzie stosują takie zabiegi, zamiast wprost wysterować...
Użyj timera do generowania przerwań, i co przerwanie będziesz inkrementować zmienne np R, G, B, i jak osiągną zadaną wartość ustawisz stan wysoki na odpowiednich pinach. gdy zmienne osiągną np 255 to je zerujesz. To się dzieje w przerwaniu. a w funkcji głównej masz pętle nieskończoną w której to mogą się zmieniać wartości R, G, B i tym samym tworzyć...
Wszystko pięknie ładnie ;) tylko gdzie zerowanie flagi Ir_key_press_flag pod koniec warunku IF ???
punkt 5) Oczywiście że możesz przepisać CAŁY port i to uwzględniając kolory. Zastosuj np komendę AND do zerowania niepotrzebnych bitów. Ponieważ wciąz nie wiadomo co i jak podłaczyłeś to przykład może wyglądać tak: kolor = 1 'kolor 1 lub 2 bajt = 123 'przykladowy bajt z danymi if kolor = 1 then bajt = bajt and &B11110000 'przykladowo wyzeruj 4 dolne...
Weź Brymena BM811, nie zawiedziesz sie. Bardzo szybki miernik, czasami az mam ochotę go jakoś spowolnić. Jest szybszy niż Sanwa. Dobry wyświetlacz ma, bardzo kontrastowy. No i mierzy kondensatory do 40mF. Co to testu ciągłości-jeżeli weźmiesz końcówki w dwie dłonie i uderzysz jedną o drugą-już zapiszczy. Pisk ma głośny i przenikliwy, z 20 metrów słychać....
Excray, twój kod zadziała raz na 255, zapomniałeś zerować zmiennej a :P Mylisz się. Po prostu nie zrozumiałeś jak działa ten kod. Nie trzeba zerować tutaj żadnej zmiennej. W zasadzie kod można jeszcze bardziej uprościć: [syntax=c] while(1) { if(!(PINC & 0x01)) PORTD ^= 0x01; }[/syntax] Jak widać żadne zmienne ani globalne ani lokalne nie są potrzebne...
Tamto zadanie udało mi się wykonać ;) teraz próby ze zmianą diody po każdym naciśnięciu jednego wejścia ;D Program miał za zadanie po każdym kliknięciu switcha B2 zmieniać stan diody ;) w pierwszym cyklu wykrycia wejścia ustawiam zmienną pomocniczą (unsigned int, wiec nie przepełnia się przy 40000). W każdym kolejnym cyklu zmienna jest inkrementowana,...
Zastosuj 3 zmienne indeksujące (lub lepiej wskaźniki), zainicjalizuj je z przesunięciem, później tylko inkrementuj,a po osiągnięciu końca tablicy - zeruj. Skoro już wiemy, że to ma być falownik, to co z amplitudą przy niższych częstotliwościach?
(at)Harcownikov Źle zrozumiałeś przesłanie kol. excray z pierwszego jego postu. On wskazał Ci tylko Twój ogólny problem i nie miał zamiaru Ciebie w żaden sposób źle traktować. Zobacz na procent jego ilości POMÓGŁ, a zauważysz, że jest bardzo pomocnym użytkownikiem forum :) Wrzuć sobie do CManiaka: ten kod: [syntax=c]//Wymagane do symulacji definicji...
Czyli dobrze zrozumiałem :D Dzięki wielkie za pomoc. Możesz mi jeszcze powiedzieć, czy to nie będzie powodować, większego zużycia prądu? Czy tu chodzi o to, że ten kondensator tak jakby zatrzymuję ten prąd? Dodano po 11 A i czy nie powinienem zrobić z połączeniem jarzeniówki tak? (zaznaczone czerwonym przewodem) Czy może w jarzeniówkach nie potrzebne...
Witam. Próbuję napisać program który będzie sterował włączanieM diod nad kręcącą się nad nimi tarczą z wyciętymi cyframi, taki zegar widmowy. Chcę do tego użyć timera1 i timera0 w atmedze328p. Timer1 ma liczyć czas jednego obrotu, dostaje sygnał z transoptora, korzystam z przerwania ICP. W przerwaniu, liczbę jaką do jakiej doliczył timer1 zapisuje gdzie...
Gniazdko jest w porządku już je sprawdzałem. Swoją drogą czy dla bojlera ma jakieś znaczenie że w tym gniazdku nie ma uziemienia? Wiem że mogę zrobić połączenie bolca uziemienia z zerem ale czy ten fakt wpływać może jakoś na grzałkę?? Czy termostat? Gniazdko nie jest w porządku! Niestety w szkołach tego nie uczą- a szkoda, że przewód z wtyczką pod...
Jeśli chodzi o napięcie bramki, to podaje się co najmniej trzy: (1) napięcie progowe, przy którym MOSFET zaczyna przewodzić jakiś łatwo zauważalny prąd (i to jest tu mało istotne); (2) napięcie pełnego włączenia (zwykle przy nim mierzy się opór włączonego MOSFET-a); i (3) maksymalne dopuszczalne napięcie. To (1) bywa nawet poniżej 1V; (2) bywa może...
Proponuję zacząć uczyć się "metodą rozumienia tego, co się pisze" oraz "pisania tego, co ma być zrobione". Obecnie Twój program wysyła wartość zmiennej leds, potem ustawia w niej jeden bit, potem drugi, a potem znów ją wysyła. Nigdy nie zerujesz żadnego bitu w tej zmiennej. Nie wysyłasz zmiennej po zmianie jednego bitu.
Przylutowanie opornika 330om od drenu do R1 i kondensatora - trup. Nie wiem czy do końca dobrze zrozumiałem, ale jeśli masz w drenie 330Ω to już nawet teoretycznie nie ma możliwości przekroczenia ani prądu ani mocy BSS138 w urządzeniu 12V. Bardziej wygląda mi to na przebicie jakimś napięciem na grocie lutownicy. Tym bardziej że jak tu patrzę to...