To spójrz na schemat. Ktoś wchodzi na ADC zamiast na INT lub komparator. Przebieg z symulacji jest wspaniały- prawdziwy widać na obrazku. W czasie wysyłania sygnału należy zablokować odbiornik- bo przy takiej odległości- nadajnik- odbiornik zmierzy odległość 3cm. Potem dopiero można odbierać. Trzeba też zrobić kilka zakresów odległości mierzonej. Wykluczyć...
Witam. 1./ w fuse bitach wyłącz JTAG ( używasz pinów jtag ) 2./ piny do przycisków podciągnij rezystorami 10K do plusa zasilania.
Config DP działa od wersji 2.0.1.0, jeżeli masz tą lub nowszą wersje Bascom'a w Fusing zamień "#.##" na "#,##".
W załączniku esp8266flasher z kodem ... :)
http://www.elektroda.pl/rtvforum/topic14...
Wykombinowałem coś takiego :), przykład można uruchomić w symulatorze (dane wejściowe np. porta.1): EDIT: poprawiłem mały błąd w przykładzie, bity można nawet kopiować jeżeli port źródłowy i docelowy jest ten sam [syntax=basic4gl]$regfile = "m32def.dat" $crystal = 16000000 $hwstack = 64 $swstack = 64 $framesize = 64 $baud = 57600 Dim Src_port_str As...
Przerwanie jest zgłaszane, gdy zostanie odebrany bajt. Wywal przynajmniej jedno z porównań z 13. Przecież jeśli jest równe 13 to nei ma sensu sprawdzać, czy jest różne od 13. Stare przysłowie pszczół, które cytuję to co 3 dni: żadnego oczekiwania w obsłudze przerwania. Wyrzuć Waitms 100 z obsługi przerwania! Nie możesz również nic nadawać w obsłudze...
Witam. Zapis (składnia) Load Timer1 jest zły. Sprawdź w pomocy Bascoma.
Witam... Na lisci musi byc M32 a nie M323. Rzeczywiscie jest problem bo demko bascoma nie ma pliku definicji dla ATmegi32. Sciagnij sobie z eMule bascoma AVR (zajmuje jakies 10MB) niby pelna wersja. Wtedy wykryje ATmege32 poprawnie Pozdrawiam
Próbowałeś zmieniać word na stringi (funkcją STR() ) ?
Zadeklarowałeś "Zmianna" a przypisujesz "Zmienna". :) Edit: Wyjście z procedury obsługi przerwania wykonuje się za pomocą Return a nie Goto Glowny ! Resztę błędów znajdziesz sam. :)
Proszę. Można to zrobić na kilka sposobów. Pokazuję taki najprostszy żeby pokazać mechanizm. Kiedy bit w bajcie na danej pozycji ma wartość 1 to pin nadawczy jest ustawiany w stan wysoki i po 500us jest zerowany i znów czekamy 500us. Po tej operacji licznik wskazujący o który Bit w Bajcie nam chodzi jest zwiększany. Bity występują w ilości 8 ale numerowane...
Raczej: CONFIG PORTx = state CONFIG PINx.y = state gdzie state to INPUT lub OUTPUT Pa Alias Portd.2 Pb Alias Portd.3 Pc Alias Portd.4 Pd Alias Portd.5 popraw na Pa Alias Pind.2 Pb Alias Pind.3 Pc Alias Pind.4 Pd Alias Pind.5
Dopiero teraz zrozumiałem co oznacza silnik a co oznacza PWM w Twoim opisie :) Program powinien generowac odpowiednie wypełnienie by sterować tymi mostkami. Jakie? -> pdf Swoja drogą to marnotrawstwo kontrolera, o wiele lepszy efekt osiągnłąbyś stosując własne mostki niz gotowe, duzo postów znajdziesz na tym forum odnosnie mostków H i sterowania silnikami...
Te procesory się aż tak nie różnią. Dodatkowe funkcjonalności pinów nie przeszkadzają w niczym dopóki ich nie uruchomisz. (PCINT - Pin Change Interrupt trzeba wiedzieć jak włączyć). Jest duża różnica jeśli chodzi o Timery właśnie. Mega8 ma na przykład tylko jeden rejestr Compare dla Timer2 dlatego inaczej się nazywają. Opisałem to u siebie na stronie...
Błąd w logice. Twój kod czytam tak -> Dopóki zmienna nie ma 5 to cały czas resetujemy pomiar i startujemy nowy (już Select Case byłoby lepsze). Potem próbujemy to czytać jak zmienna ma powyżej 100. No daj spokój. Są tu tego tony jak to obsługiwać. Mój/nie mój sposób to dwa suby. Jeden Startuje konwersję a drugi Czyta. Sprawa polega na tym by odwrócić...
Przecież masz już swój kod, trzeba tylko na jego podstawie dorobić fragment. Wystarczy, że dodasz tam wysyłanie odpowiedniej(nich) wartości do odpowiedniego(nich) rejestru(ów), wykonasz raz, usuniesz kod i tyle. Później powinno śmigać do następnego zaniku zasilania. EDIT: Nie zdążyłem. Pamiętaj, że o ile nie ma zaniku zasilania, to należy to wykonać...
Ten przykład działa, ale tylko dla jednego "przełącznika" ale gdy robie np dwa kolejne to już coś jest źle. Buduje urządzonko, które będzie załączać 3 przekaźniki: - 3 przyciski (portd.4, portd.5, portd.6) - 3 przekaźniki (portd.1, portd.2, portd.3) Jak to można zrobić w BASCOMie?? Kod dla w/w konfiguracji: Config Debounce = 30 Config Portd = Output...
Żeby nie zapomnieć na końcu to już tutaj napiszę, że liczy się to w programach bo one się rzadziej mylą, ale zrozumienie tematu jest oczywiście ważne. Jest kilka, a w pełni darmowych, kalkulatorów do tego. Timer jest urządzeniem sprzętowym wbudowanym w mikrokontroler. Najczęsciej taktowany jest w taki sposób, że sygnał zegarowy taktujący mikrokontroler...
Mam pytanie: drogi jest taki scalak? Teraz to już sobie ze mnie jaja robisz. W ciągu kilku minut znalazłem jego cenę+gdzie kupić. Ja się odłączam z tego tematu skoro nawet nie raczysz sobie ceny znaleźć. Scalak ci podałem, jest tani. Podłączenie masz w jego nocie aplikacyjnej. Zasadę sterowania silnikiem masz w google, nawet rysunki są w jaki sposób...
Czy to poprawny zapis do uśredienia wyniku z 60 pomiarów kodu co wyżej podawałem (*) pytam z czystej ciekawości czy to poprawna forma To nie jest 'uśrednienie',- to jest zbyteczne rozszerzenie rachunku wydajności, które jest równoznaczne z pomiarem impulsów w czasie 60 sec. Inaczej, zamiast odczytywać zawartość Countera1 po zliczeniu 250 4-milisekundowych...
Ja używam takich kodów do odblokowania tych pinów, zaraz po instrukcji konfiguracji zegara programowego: 'odblokowanie pinów PC6 i 7 dla procesorów atmega16/32: Tccr2 = 0 Assr = 0 Timsk = 0 Tifr = 0 Oczywiście wszelkie dalsze konfiguracje innych timerów powinny znaleźć się po tym kawałku kodu.
W fusebitach nie ma co grzebać, gdy wystarczy kilka instrukcji asemblera : push r16 in r16, MCUCSR sbr r16, 1<<JTD cli out MCUCSR, r16 out MCUCSR, r16 sei pop r16 Pozdrawiam, Daniel
https://obrazki.elektroda.pl/2189061300_... Jakiś czas temu postanowiłem stworzyć prosty termometr, który będzie wyświetlał temperaturę zewnętrzną na telefonach domowników. Miałem już przeprowadzoną skrętkę komputerową, która pierwotnie miała posłużyć do zewnętrznej anteny radiowego internetu, ale że internet mam rozwiązany inaczej,...
Witam! Potrzebuję zmienić TIMER1 do obsługi PWM na TIMER2 ktoś pomoże? ATMEGA32 BASCOM
Witam! Po pierwsze to z reguły przyciski powinny zwierać piny wejściowe do masy a nie do zasilania. Wynika to z faktu posiadania przez procesory AVR wewnętrznych rezystorów pull-up podciągających wejścia do +vcc, czyli panuje na nich stale stan wysoki (oczywiście gdy zostaną uaktywnione). Po drugie to akurat sygnał CLK ma się zmieniać, podczas narastającego...
No weź. Przecież to jeden z podstawowych tematów o AVR. A w necie miliony przykładów. Sam bascom zapewne taki posiada. W hepie pewnie tez sporo napisano o przetworniku A/D.
..."Tylko po co zaczynać o starych procesorów i od powoli wymierającego języka?".... A czy ktoś o to pyta? Jeśli chodzi o pomoc - to trudna sprawa. Piszesz "Mój kod zrobił się już dość duży i moje umiejętności są zbyt małe, aby nad nim zapanować" I chyba tu jest problem, zacznij pisać "od początku", zacznij od obsługi "pojedynczych składników". Zapisuj...
Bascom operuje bezpośrednio na rejestrach. Poczytaj DS co i gdzie trzeba poustawiać, a potem czytaj wynik też prosto z rejestrów. Nie używaj getadc. To polecenie działa tylko w trybie single i o ile wiem wykonuje konwersję zawsze dwa razy zwracając wynik drugiego pomiaru. Wtedy o szybkości max nie ma co mówić.
... Może Bascom w ogóle nie potrafi tej 16tki odczytać? Pozdrawiam, Damian. Bascom potrafi , tylko Ty nie rozumiesz jak działa instrukcja I2creceive :( A działa tak: I2creceive 68 , W 'i2cstart 'i2cwbyte 68 OR 1 , czyli 69 'i2crbyte W 'i2cstop Z tego jasno wynika , że zawsze odczytasz tylko jeden bajt i zawsze będzie to pierwszy bajt z Twojego PCF-ka...
Zaprogramuj "fusy" w programatorze Bascoma - trzecia zakladka. Bascom częściowo wskazuje opis ustawień więc o pomyłkę trudniej. Przed zatwierdzeniem sprawdź wszystko i powinno być OK.
A jak mam wyłączyc w BASCOM JTAG http://www.elektroda.pl/rtvforum/topic14... Od razu uprzedzam - 10 razy sprawdź, zanim zaczniesz programować Fusebity. Możesz zablokować ATMEGA.
Najbardzej zależy mi na czasie czyli wybiore BASCOM. Czy kurs z AVT z książką "Mikrokontrolery dla początkujących" Piotr Górecki będzie dla mnie wystarczający ? Czy może wybrać zestaw EvB 4.3v4 ATMega32 z kursem BASCOM lub coś innego ? Jako hobbysta polecam jednak C. W Bascomie szybko zaczniesz i szybko skończysz w punkcie, w którym wyczerpałeś istniejące...
Polecam EvB 4.3v4 ATMega32 firmy And-Tech, jeśli chcesz kupić cały zestaw. Sam z niej korzystam i bardzo dobrze się sprawuje. Programuję w C, ale patrzyłem na kurs Bascoma który dołączają do zestawu i wygląda na dobrze opracowany.
Witam znalazłem link do stronki na której poprzez esp8266 oraz bascoma można sterować lampą. myślę że to ułatwi zrozumienie i stworzenia stronki . http://www.mikrocontroller.net/topic/348... z drugiej strony testowałem webserwer oraz pobieranie czasu poprzez audurino, gdzie podłączyłem sie dwoma rsami i patrzyłem co wysyła arduino do esp i co odsyła...
Witajcie, Zacząłem pisać ostatnio program w bascom, jednak nie działał, okazało się że część kodu odpowiedzialna za przejście do podprogramu nie działa, długo kombinowałem, wklejałem części kodu znalezionych w internecie, ale wciąż nie działa. Kod: [syntax=basic4gl] $regfile = "m8adef.dat" $crystal = 8000000 $hwstack = 40 $swstack = 16 $framesize =...
Fakt...zrobilismy maly off-topic ;) Nie znam BASCOM AVR ale z tego co widze program generuje rozne dziwieki podczas wciskania klawiszy, podczas zlego wyboru pewnych opcji, w przypadku osiagniecia DDS frequency low/high limit i moze jeszcze w kilku inncyh przypadkach.
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 tylko zwiększanie ). 1 - wyświetl jakie dane z zegara otrzymujesz. Puste pole niewiele mówi. Pewnie czytasz 255 ale trzeba to zweryfikować 2 - zostaw jeden układ na magistrali. Może na jednym pomyliłeś...
Straciłem 2 dni przez niedopatrzenie. Problem się rozwiązał, wszystko śmiga aż miło. Wstyd się przyznać ale sam zrobiłem błąd. Plik wgrywałem programem Avrdude gui v0.2.0 i na samej górze w okienku -p Device: cały czas było zaznaczone Atmega8, a powinno być .... :D Atmega32. Zmieniłem i wszystko działa :angel: BARDZO WSZYSTKIM DZIĘKUJĘ ZA POMOC i przepraszam...
Witam. Moje pytanie: czy jest możliwość aby zresetować ATmega32 programowo np. co określony czas. Pzdr. A.
Profesjonalnie to można programować w każdym języku, tylko trzeba go po prostu znać i umieć stosować w praktyce co najważniejsze. Dla takich początkujących jak ty Bascom powinien być jednym z lepszych języków tym bardziej, że nie rozumiesz jeszcze przerwań. Bascom daje ci gotowe rozwiązania w tym zakresie na maxa - popatrz sobie na Config Serialin ........
Hej wszystkim. Pytanie moje dotyczy przechowywania kilku zmiennych w pamięci ulotnej i ewentualny zapis wartości tych zmiennych do EEPROM w określonym momencie. Program napisany w Bascom i póki co nie mam ochoty przerzucać go do C więc muszę rozwiązać to na aktualnym etapie Otóż mam sobie 3 zmienne: [syntax=vbnet]Dim Czas_sekundy As Byte Dim Czas_minuty...
Ta wstawka asm nie jest prawidłowo napisana, działa tylko dlatego, że kompilator nie wykorzystał jak dotychczas rejestrów R14 i R15. Jeśli program rozrośnie się na tyle, że kompilator będzie wykorzystywał te rejestry to program przestanie działać. Jak wspomniałeś poza eterem, masz możliwość skorzystania z ATmega32 i podpięcia wszystkich sygnałów do...
Musisz sprecyzować co przy pomocy TDA1543 i uP chcesz uzyskać. TDA1543 jest przetwornikiem do zastosowań audio, najczęściej spotykany jest w odtwarzaczach CD. Pozdrawiam JarekC
http://obrazki.elektroda.pl/4254374100_1... Witam. Od dłuższego czasu zastanawialiśmy się z kolegą mlassota nad zaprezentowaniem naszych LedCube’ów na forum, aż w końcu zdecydowaliśmy się. Niestety na forum jest niewiele takich projektów, a my chcieliśmy mieć kostkę 4x4x4, w której matryca byłaby bezpośrednio połączona z płytką...
Dzięki za cenne uwagi. Teraz wiem czego szukać. Generalnie zmiana kontrastu pokaże że dolna linia nie działa. Szpilki na zasilaniu przy LCD mogą się pojawić, nie dałem dodatkowego kondensatora. Inicjalizacja wyświetlacza co pewien okres czasu na pewno pomoże. Poprawki wykonam w Piątek lub Sobotę i się odezwę za tydzień. Kontrast jest regulowany dla...
Nikt nie jest chętny? Oczywiście nie za darmo :)
Zastosuj bufor: Config Serialin = Buffered , Size = 100 enable interrupts A oczekiwanie na znak zrób: Bufor_flaga = Ischarwaiting() : If Bufor_flaga = 1 Then Gosub Odbierz_uart Następnie procedura odbioru danych: Odbierz_uart: Bufor = "" Do Bufor_znak = Inkey() Bufor = Bufor + Chr(bufor_znak) Bufor_flaga = Ischarwaiting()...
spotkałem sie z systemem który może być rozbudowany do 128 urządzeń na jednej lini rs485 ,wiec wszystko jest do napisania ,zwłaszcza protokół komunikacyjny nawet w bascom ;)
Nie wiem czy odbierasz tam jakieś komendy. Wywal te Wait`y. Tutaj po zmianie stanu do zmiennej Blokada zostanie wpisana wartość do odliczenia w dół. Jeśli nastąpi następne przerwanie to w zależności od tego czy minął już czas blokady, to albo zostanie przedłużony jej czas bo ktoś trzyma przycisk dłużej albo.. :D [syntax=basic4gl]Dim Blokada As Word...
Witam! Mam do dyspozycji Atmega32, Atmega8 i Attiny2313. Chciałbym zbudować prosty generator obrazu TV. Wejście wideo podłączam do Atmegi32 przez rezystor 1K i 330Ohm. ........................................... -rezystor 1k------ ----- PORTD.5 Wejście Wideo (Chinch)------< ........................................... 330Ohm ----...
atmega32 bascom atmega32 bascom zegar bascom timer2 atmega32
konfiguracje landi renzo kolumny aktywne proel monitor gasnie czasie
cabletech urz0336c magazyn energii
Błąd A11 w kotłach Buderus - przyczyny i rozwiązania Lanca nie wchodzi do pistoletu Karchera - przyczyny i rozwiązania