W skrócie : ustawiasz co który impuls zegarowy ma byc zliczany, potem ładujesz do rejestru OCR2 wartosc z którą bedzie porównywał i w momencie zliczenia tylu impulsów ile jest w OCR2 następuje zmiana stanu na wyjsciu OCn... najprzyjemniejszą informacją jest to, że procesor robi to niezależnie od wykonywanego programu ;) wiec nie ma mowy o jakichkolwiek...
Hehe, przeanalizuj dokładnie Twój ostatni programik i odpowiedz sobie jeszcze raz na pytanie jak on właściwie działa :) ...jak ograniczyć ruch diody dosłownie na 4 pinach. Tu mamy przesuwanie 2 diodek - "00010001"... Wkradł mi się mały błędzik :) W swoim programie pobierałem dane z linii Data i były to tylko bity 0...3 dla silnika bipolarnego natomiast...
Witam. ........... nie wiem jak zrobić aby te wyzwalanie było tylko od narastającego zbocza. Ściągnij pin 'Start' (PIND.5) rezystorem 10k do GND i odwróc jego logikę na przykład: If Pind.5 = 1 And B = 0 Then Druga sytuacja nie wiem dlaczego ale silnik mi przerywa tak co około sekundę gdy PWM jest włączony. Prawdopodobnie w tym czasie następuje zmiana...
http://obrazki.elektroda.net/51_12592426... Projekt, który od dawna chodził mi po głowie… do zwykłej szklanej żarówki upchnąć elektronikę, która robiła by coś ciekawego. Jedyne co mi przyszło do głowy (po za bombą z terometrem) to żarówka płynnie zmieniająca kolory. W skład urządzenia wchodzi przetwornica 230V/5V-500mA, diody led SuperFluxRGB,...
http://obrazki.elektroda.pl/9838687700_1... Trochę z obawą prezentuję kolejny już na elektrodzie sterownik oświetlenia, no bo ileż tego już tutaj było? A jednak nie znalazłem rozwiązania mnie zadowalającego, dlatego też powstał niżej prezentowany układ, powstał ponieważ klasyczne lampy z czujnikami ruchu mają pewną zasadniczą wadę:...
Dzisiaj postaram się przybliżyć Wam mostki H. Mostek H jest układem elektrycznym umożliwiającym zmianę kierunku silnika prądu stałego poprzez odwracanie polaryzacji napięcia na jego wyjściu. Mostek taki można wykonać np. z przekaźników, tranzystorów lub można zastosować gotowy układ scalony. Nazwa pochodzi od graficznego odwzorowania układu. Mostek...
Jestem kiepski z programowania. Wiem , że procek atmega88 ma możliwość wygenerować przerwanie , przy zmianie stanu portu, prawie a może nawet z wszystkich pinów. Mam projekt, w którym procek jest w stanie powerdown, i zmiana stanu na kilku pinach powinna go wybudzić. Program sprawdzi co i jak zrobi co ma i dalej ma wejść w stan powerdown. Dokładnie...
Uwaga! Przedstawione przez autora urządzenie nie spełnia wymogów standardu I²C (IIC) co zostało wyjaśnione w dalszej części dyskusji w szczególności od tego postu: http://www.elektroda.pl/rtvforum/viewtop... Dlatego też decyzją grona moderatorów zmieniono tytuł na "Izolowany galwanicznie interfejs jednokierunkowy open-drain...
rozwiazan tematu jest wiele ale bitwait czy debounce nie tutaj kooledzy Dim A As Bit A = P1.2 Do If P1.2 <> A Then If A = 1 Then P1.3 = 1 Waitms 10 P1.3 = 0 A = P1.2 Else P1.4 = 1 Waitms 10 P1.4 = 0 A = P1.2 End If End If Loop
Pomyśl o tym, aby zapamiętywać stan poprzedni i inkrementować licznik jedynie w przypadku zmiany stanu.
To co napisałeś to pewnie bascom ,ale po pierwsze nie używasz przerwania int0 tylko portu jako wejścia . Żeby używać int0 jako przerwania powinieneś po pierwsze skonfigurować jakie zdarzenie na int0 ma wywołać przerwanie zmiana stanu , poziom .Zezwolić na obsługę przerwania int0 i odblokować globalnie przerwania . po wystąpieniu zdarzenia nastąpi skok...
i to sprawi że jeżeli na którymś z wejść należących do pinb, pinc, czy tam pind (oczywiście to jest do wglądu w specyfikacje atmegi, ale to na potem) stan zmieni się na wysoki instrukcja po "then" się wykona? Jeszcze jedno, chciałbym potem sprawdzic na którym z tych 18 czujników wystąpiła awaria (co za tym idzie zmiana stanu na pinie) Jak myslisz, mozna...
Timer i zmiana stanu wyjścia w przerwaniu. Długość dźwięku określić innym timerem.
Kod mam dobry pracuje na symulatorze poprawnie Lcd podlaczone prawidlowo nopisalem program pare linijek tylko zmiana stanu jednego pinu i tez nie dzala program uzylem compilatora Bascom 4Kb.
a i jeszcze bo np w avr tez mialem troche jaj z wyswalaniem zmiana stanu ale pomogo przed wykonaniem ret-a wyzerowanie flag przerwan.
15ms do niczego nie pasuje. Wklej kod bezpośrednio z Bascoma, przepisywany może zawierać błędy.
http://obrazki.elektroda.net/7_123635472... Prawie rok temu, zainspirowany konstrukcją pana Kamila Przychodzenia http://obrazki.elektroda.net/18_12363549... http://obrazki.elektroda.net/82_12363551... Płytka sterownika oraz płytka organizacji połączeń http://obrazki.elektroda.net/62_12363543... http://obrazki.elektroda.net/80_12363591...
witam, proszę o naprowadzenie lub jakiś przykład: Chcę przypisać wykonanie jakieś operacji atmedze8 (po uarcie) np zmiany stanu danego portu przez wciśnięcie wcześniej zadeklarowanej kombinacji z klawiatury np: IF wcisnę "WA" then ............................ Set Portc.4 ........................... IF wcisnę "WD" then ........................... Reset...
albo zle zrozumialem albo..... $crystal = 1000000 $regfile "attiny2313.dat" Dim Bylo As Byte If(portd.6 = 1) And(bylo = 0) Then Bylo = Portd.6 Wait 5 Set Portd.7 Elseif(portd.6 = 0) And(bylo = 1) Then Bylo = Portd.6 Wait 5 Reset Portd.7 End If end: wyswietla sie blad skladni "if" i "elseif" a w tym wyswietla...
800 obrotów/min to max jakie będą używane w tym enkoderze, ale nie mogę zatrzymywać przerwania, bo impulsy muszą być liczone ciągle, wszystko resztę muszę wykonać pomiędzy przerwaniami. 800 obrotów to daje impuls przerwania co 15us, a ja w pętli nic nie będę robił oprócz sprawdzania czy jest naciśnięty przycisk STOP, więc teoretycznie wszystko powinno...
Dzięki wielkie !! Pomogło , aczkolwiek nie rozumiem dlaczego bez tego też czasem działało zależnie od kolejności wpisów ? Teraz działa OK bez względu na kolejność wpisów, i reszty (czyli początku programu w którym pewnie jest mnóstwo innych błędów :-) ) [syntax=vbnet] $regfile = "m2560def.dat" ' specify the used micro $crystal = 16000000 ' used crystal...
Uruchom przerwanie od Countera (najlepiej od porównania wartości zliczonej z ustawioną) i zmień stan portu w podprogramie obsługi przerwania lub prościej, ale mało elegancko zmień [syntax=basic4gl]If Counter1 = 100 Then ...[/syntax] na [syntax=basic4gl]If Counter1 >= 100 Then ...[/syntax] Nie tak jest to, że w chwili zliczenia setki nasz if może się...
Kiedyś zdeasemblowałem procedurę obsługi RC5 z bascoma (bo chciałem napisać odpwiednia procedure w C lub asm). Niestety ta obsuga RC5 jest mocno niedoskonała , a jedyną jej zaleta jest niezalezność od czestotliwości kwarcu ale zauważyłem że poniżej pewnej wartości nie działa (ile niepamietam ale chyba cos ok.2MHZ). Procedura obsługi po przyjeciu przerwania...
Wiem dlaczego. Popatrz na listing (Poznaję! #elcafe :) ). Instrukcje IF mogą się wykonać w całości albo i nie. Dlatego zmiana stanu na "0" odbędzie się szybciej, a zmiana stanu na "1" dłużej bo program jeszcze musi "przelecieć" wcześniejszą instrukcję IF i zadecydować czy wykonać instrukję po THEN czy nie. A jak pisałem wcześniej ciągle działające przerwania...
Kolejny błąd jest taki, że stan pinu na każdym z portów odczytuje się poprzez rejestr Pind.1, a nie Portd.1 - tylko zmiana stanu (niemożliwy jest jego odczyt). Odczyt Pin, a przypisanie Port. Jeszcze jedno, bo przedtem nie zauważyłem - konfiguracja portów jest następująca: Config Portd.1 = Input, lub Reset Ddrd.1 Jest to w tym przypadku ustawienie pinu...
Dzielnik przez 8 i 9 możesz zrobić na którymś timerze sprzętowym wbudowanym w procesor. A realizacja dzielnika przez 8,5 musi być programowa: Próbkujesz sygnał wejściowy i każda zmiana stanu sygnału wejściowego powoduje inkrementacje zmiennej co daję dwie inkrementacje na okres sygnału (stan wysoki i stan niski liczone osobno). A dalej pozostaje wykrycie...
To jak w poradnikach wideo M.Kardasia do HC-05. Po co ciągle konfigurować tego ESP? Mojego skonfigurowałem raz. Teraz jak podłaczę do niego terminal to po włączeniu/resecie sam loguje sie do mojego routera. Sam pisze, że WIFI CONNECTED i WIFI GOT IP Program zaprezentowałem jako przykład i coś co udało się w tej prostej wersji uruchomić. Całość działa...
Witam mam prosty program. Timer zlicza naciśnięcia przycisku. Problem polega na tym że po jednokrotnym naciśnięciu wartość zwiększa się o jakąś ilość (nie zawsze o 1). Jak temu zaradzić? np. żeby zmiana stanu licznika była możliwa tylko co określony odcinek czasu. [syntax=basic4gl]Config Pinb.0 = Input Set Portb.0 Config Timer0 = Counter , Edge = Falling...
Witam, mam problem i proszę o pomoc. Posiadam czytnik RFID, który ma wyjście TX. W terminalu na komputerze odbiera ok. przykładowy odczyt (0A00A295DD). Dane wysyłane są w 10-ciu znakach i działa to dobrze, praktycznie żadnych błędów. Teraz opiszę mój problem. Chciałem zacząć od prostej obsługi. Czyli odbiór danych przez UART. Wpisanie jednego odczytanego...
Witam Mam tak, jak w kodzie poniżej obsługiwane przyciski i pilot NEC. [syntax=vbnet] '********************* obsługa pilota '******** ustawianie stanu bitu If Command = 104 And Blokuj_pilot = 1 Then ' klawisz 1 Blokuj_pilot = 0 Licznik_blokuj_pilot = 0 Klawisz_1 = 1 Command = 0 Licznik_zeruj_led = 0 ' zerowanie licznika powrotu do wyswietlania godzin...
Tzn Dwie ostatnie diody pracują ale jak np ostatnia się pali i chce zapalić dodatkowo trzecią do ta ostatnia gasnie i dopiero gdy jeszcze raz wyśle 3 to wtedy zapali się trzecia dioda w Bascomie tego czegoś nie było. Ponizej kod: [syntax=c] /* * main.c * * Created on: 2011-07-06 * Autor: Łukasz Minderski */ #include <avr/io.h> #include "LukiUart/lukiuart.h"...
Mam sprawdzać stan bieżący czy ilość przepełnień? To już zależy od Ciebie i od tego jak szybko chcesz puścić timer (z jakim preskalerem). Ale przy takiej precyzji wystarczy liczyć przepełnienia w procedurze obsługi przerwania. Jak wskazano wcześniej najrozsądniej jest użyć 3 zmiennych inkrementując wartość każdej z nich po przepełnieniu. Wciśnięcie...
błąd weryfikacji jest tam spowodowany przez wysterowanie pinów przez system - procek np widzi dodatkowe cykle na spi i się sypie komunikacjia niemożność zaprogramowania procka jest tym samym - zmiana stanu pinów wejściowych podczas wchodzenia do trybu programowania może sprawić, że kontroler niewejdzie do trybu programowania (zła sekwencja wchodząca...
OK to jeszcze dopytam tak, rozumiem że na początku przerwania zmieniam stan Edge_ na 0, liczy timer i config int0=rising ale co dalej załóżmy że nadejdzie zbocze narastające i co wtedy się dzieje? No tak, zabrakło jeszcze jednej linijki... sory... Powinno być: If Edge_ =0 Then Start Timer1 Config INT0=Rising Else Stop Timer1 Config INT0=Falling End...
Dzięki, właśnie ostatnio szukałem trochę informacji na temat timerów w Atmedze , super strona, wszystko łopatologicznie wytłumaczone także chyba nie powinienem mieć problemów (chociaż w Bascomie właśnie na tym się zatrzymałem), ale najpierw jeszcze chcę sobie przyswoić w języku C te operatory logiczne, funkcje. Znalazłem kurs http://www.kursc.forbot.pl/...
Witam. Postanowiłem spróbować nauczyć się kilku podstaw z mikrokontrolerami i programować je. Kupiłem zestaw EVBavr05 Propoxu z atmega16. Do zestawu dołączone zostały również przykładowe programy napisane w c. Próbuje w pisać w BASCOM, jednakże po poprawnym skompilowaniu programu, przeprowadzeniu symulacji i wgraniu na procesor nic się nie dzieje. Atmega...
Czy jak w Bascomie Avr, zapisuję zmienną X do pamięci EEPROM, to muszę wyłączyć przerwania. ? Bo to wygląda tak , że kręci się pętla główna Do...Loop. Jeżeli w tej pętli zostanie wykryta zmiana stanu zmiennej, to jest nowa wartość wpisywana do pamięci. Dodatkowo działa Timer0 do obsługi wyświetlaczy, przerwanie co 4ms Jeżeli w czasie zapisu do pamięci,...
Witam . Chciałem zrobic tester pomp opryskiwaczy . Chodzi o mierzenie wydajności pompy w litrach na minute a moje pytanie czy nie bedzie gubił impulsów podczas wykonywania przerwania . Pomiar co 1 sekundę a wydajność pomp od 40l do 260l / min Nie musisz obawiac się o gubienie impulsów z powodu wykonywania przerwań. Impulsy są zliczane przez Counter1,...
atom1477 :arrow: mi wcale nie chodziło o pętle PLL, tylko o jakiś program, który umożliwia strojenie tej głowicy(po prostu zmiana napięcia np. na PWM) w ten sposób procesor nastrajałby głowicę, a gdy znajdzie jakąś stację, zapisywałby w pamięci eeprom procesora dane dotyczące napięcia na którym znaleziono stacje, np. jeżeli PWM procesora ma rozdzielczość...
Witam, mam program (attiny2313) do obsługi termometru DS18b20 i wyświetlacza, układ posiada 3 przyciski +/M/-. Program reaguje na zwieranie przycisków do masy, a chciałbym zrobić tak by procesor reagował na przerywanie masy. Znajdzie się ktoś kto mógłby rzucić okiem na program i podpowiedzieć co trzeba zmienić?? [syntax=vbnet] $regfile = "Attiny2313.dat"...
Tak jestem pewien,że te kilka ms wystarczy. A miałeś kiedyś w ręce taką latarkę sterowaną z uC ? Wszystkie one tak właśnie mają przełączane tryby i podtrzymanie przez kondensator wystarcza. Ale jak to zwykle bywa nie wszystkim odpowiadają tryby oryginalne czy wybieranie ich przez jeden klik , więc zmieniają sobie oprogramowanie. Wybieranie przez jeden...
Witam Mam program budzika, który jako dodatkową atrakcję miał mieć możliwość mówienie czasu na żądanie i odtwarzanie oprócz buzzera utworu jako alarmu. Atmega steruje przez jedno SPI programowe układem MAX7219, a przez konwerter poziomów i drugie SPI programowe odtwarzaczem WTV020SD. O ile sam WVT020SD + PCF8563 ( wyjście CLK do INT1 ) działają dobrze,...
Dołączę się do tematu Czytamy: TLE 4905g. Jest to malutki układzik scalony, który reaguje na obecność pola magnetycznego w ten sposób, że jeśli wykryje jeden z biegunów pola magnetycznego otwiera swój tranzystor w stopniu wyjściowym i dopiero jak wykryje przeciwny przywraca go do stanu poprzedniego. Więc jak to jest? Autor tego cytatu niepoprawnie...
mając tyle przykładów na Elektrodzie i w sieci , nie potrafisz zrozumieć tak prostego sterownia to Twoja wiedza o Bascomie nie jest zbyt wysoka masz na szybko zrobiony program z danymi w tablicach , zmiana stanu na pinach portu C.0 i C.1 uruchamia silnik w wybranym kierunku 'test 'sygnały dla silnika na Portd.4 do Portd.7 'Portc.0 i Portc.1 ustalenie...
Witam, mam następujący problem z poniższym programem. Prosiłbym bardziej obeznanych kolegów o sprawdzenie, układ powinien działać tak: ustawiam temperaturę plus regulacja histerezy, gdy temperatura jest niższa układ załącza przekaźnik do czasu wyrównania temperatury, problem polega na tym że program załącza przekaźnik (grzanie) tylko na moment po czym...
Witam. Napisałem taki program .............. W moim programie po kolei załączają się rożne tryby migania diody a ja chciałbym żeby wciskając raz switcha załączał się pierwszy tryb później po wciśnięciu załączał się drugi tryb i aż tak do czwartego trybu. Pozdrawiam, Masz prawdopdobnie zadanie zmieniać tryby migania (4 tryby) jednej diody z użyciem...
Raczej najpierw musisz sie nauczyć C No właśnie próbuję. Przez ostatnie kilka dni przewertowałem więcej PDF od kontrolerów, niż przez ostatnie 3 lata :D Na razie największy problem dla mnie to operacje bitowe - wiadomo w Bascom łatwiej. Kupiłem nawet Attiny4313, coby nie brakło pamięci. Problem był jednak w momencie polecenia włączenia przerwań, były...
Witam Mam Atmega32A + PCF8563 + PCF8574 + RFM12 + DS18B20 +DHT11. Port danych LCD to Port.A, ControlPort to Port.C. I2C standardowo na Portc.0 Portc.1. Niestety jest problem z obsługą I2C, tzn. zegar PCF8563 nie działa w ogóle ( na LCD puste pole ) , a klawiatura na PCF8574 - tylko jeden klawisz i to nie ten, który jest przypisany w kodzie ( działa...
bascom charakteryzuje sie latwoscia programowania o ile w asemblerze musisz dobrze znac budowe procka to w bascomie az taka duza wiedza nie jest potrzebna <co moze jednak nie jest az takim duzym plusem :roll: >chac np uruchomic licznik w asemblerze trzeba wpisac odpowiednie stany w odpowiednie rejestry natomiast w bascomie zalatwiaja to wpisane...
Witam! Od kilku dni siedze i nie mogę nic wymyśleć :( Bez ogrudek - podaje źródło: $regfile = "m16def.dat" $crystal = 8000000 'definiowanie zmiennych i stałych Dim T As Integer Dim Licznik_przerwan As Byte Dim Dioda As Bit 'konfigurowanie interfejsu 1Wire Config 1wire = Portd.1 'konfiguracja wyświetlacza Config Lcdpin = Pin , Db4 = Portc.6...
zmiana stanu bascom zmiana stanu atmega zmiana stanu licznika
kabel zasilacz laptop corolla antena kabel miedza aluminium
ultradźwiękowy nawilżacz powietrza buderus gb122i
SCW06 Lite - Instrukcja obsługi sterownika wentylacyjnego Podłączenie kabli zapłonowych Audi 80 1.8S B3 1989