przepełnienie stosu bascom

Znaleziono około 103 wyników dla: przepełnienie stosu bascom
  • Bascom-Atmega16- skok do procedury podczas obsługi przerwan

    Jest możliwy, trzeba tylko dbać o to aby nie przepełnić stosu.

    Mikrokontrolery AVR   28 Maj 2009 18:46 Odpowiedzi: 6    Wyświetleń: 1590
  • REKLAMA
  • [Atmega8] [Atmega8][BASCOM] Reset procesora przy dodawaniu do zmiennej S w wytrawiarce

    Jeśli Call to wywołanie funkcji z odkładaniem adresu powrotu na stos, to doprowadzasz do przepełnienia stosu.

    Mikrokontrolery AVR   02 Lis 2008 19:00 Odpowiedzi: 2    Wyświetleń: 1413
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • Używanie dwóch timerów w BASCOM (atmega2560) - pobieranie danych z tablicy i sterowanie PORTB

    1. W jakim celu konfigurujesz liczniki, wpisujesz im wartości początkowe, a potem wywołujesz ich zatrzymanie przez STOP TIMER0/TIMER2 skoro nigdzie indziej ich ponownie nie uruchamiasz? 2. Jakim cudem kompilator nie protestuje gdy w pętli głównej umieszczasz samo ON TIMER0/TIMER2 nie podając trzeciego słowa kluczowego GOTO/GOSUB i ostatniego ich parametru?...

    Mikrokontrolery AVR   07 Kwi 2023 07:26 Odpowiedzi: 17    Wyświetleń: 738
  • REKLAMA
  • BASCOM: Skoki do podprogramów bez przepełnienia stosu, pętle w GOSUB?

    ale z jakich powodów interesuje cie ten stos??

    Mikrokontrolery AVR   06 Sie 2010 13:50 Odpowiedzi: 15    Wyświetleń: 4645
  • BASCOM, atmega16 – ryzyko przepełnienia stosu przy zagnieżdżonych pętlach i CASE

    "Case" nie powoduje zajmowania stosu. Więc z tego powodu na pewno nie.

    Mikrokontrolery AVR   16 Kwi 2009 11:48 Odpowiedzi: 2    Wyświetleń: 1511
  • BASCOM pożera pamięć RAM. Program się nie kompiluje.

    W C sprawa wygląda tak samo .... No tu kolega troszkę przesadził chyba? ;) .... w C sprawa nie wygląda tak samo chociażby z uwagi na to, że byle makro ISR() nie odkłada i zdejmuje ze stosu absolutnie wszystkich rejestrów procesora co standardowo robi Bascom. A takich kwiatków jest znacznie więcej niestety :( tylko że kompilator C nie sygnalizuje błędu....

    Mikrokontrolery Początkujący   20 Lut 2012 21:42 Odpowiedzi: 8    Wyświetleń: 1611
  • REKLAMA
  • [bascom] programowanie zewnetrznego eerpom za pomoca uart

    Hmm... w końcu używasz WAITKEY, więc zmienna Czekanie nie ma sensu. Dodatkowo: Czekanie = Ischarwaiting() wykonujesz przed obsługą przycisku i jakąś procedurą MAIN. Teraz jeśli w trakcie obsługi przycisku i wykonywania procedury MAIN wyślesz dane to nie zostaną one zapisane w EEPROMie Ja jednak przerobiłbym program i użyłbym INKEY. Sama obsługa...

    Mikrokontrolery AVR   23 Gru 2008 02:38 Odpowiedzi: 21    Wyświetleń: 1740
  • [tiny2313] [tiny2313][Bascom] Zegar widmowy - problem z wyświetlaniem po kilku sekundach

    Brak RETURN'ów w podprogramach (na końcu) wywoływanych przez GOSUB. Procek skacze i nie zdejmuje danych ze stosu. Po przepełnieniu stosu idzie w maliny.

    Mikrokontrolery AVR   27 Mar 2009 14:10 Odpowiedzi: 6    Wyświetleń: 2331
  • Jak zoptymalizować kod w Bascom dla TDA7318 i AT89C52, by uniknąć przepełnienia stosu?

    Ja bym tu stawial najpierw na ilosc zmiennych lokalnych poniewaz w prograramie napisanym przez EdW jest zmieniana wartosc zmiennej ktora jest wysyla od razu do tda. U mnie jest tak ze zmieniana jest wartosc zmiennej ktora jest pozniej podstawiana do zmiennej ktora jest wysylana do tda(troceh zakrecona). W nestepnej kolejnosci stawialbym na ilosc procedur...

    Mikrokontrolery   26 Lis 2005 19:42 Odpowiedzi: 7    Wyświetleń: 2009
  • [Bascom][Atmega8] Termostat do wytrawiarki - Krzaki na LCD i Reset.

    Przypuszczam że przyczyną wieszania programu jest przepełnienie stosu. Chyba za bardzo pogubiłeś się w tych skokach :) Przyglądnij się podprogramowi Menu , który w rzeczywistości nie jest podprogramem, a wywołujesz go przez Gosub Menu w Podprogram_4 . [syntax=basic4gl]'----------------------... Menu:...

    Mikrokontrolery Początkujący   21 Sie 2012 11:26 Odpowiedzi: 7    Wyświetleń: 2496
  • REKLAMA
  • [Mega16] Jak odczytywać temperaturę z DS1820 w przerwaniach na Mega16 w Bascom?

    Dziękuję kolego za chęci, niestety faktycznie nie znasz Bascoma ;-), ponieważ odpowiedzi na Twoje postulaty są zawarte w programie. Tak, czekam odpowiedni czas na odczyt. Obstawiam na jakieś przepełnienie stosu itp. Jakieś pomysły ?

    Mikrokontrolery AVR   27 Maj 2010 12:08 Odpowiedzi: 12    Wyświetleń: 2397
  • AT89C2051 zawiesza się po 24 naciśnięciach przycisków - BASCOM, DEBOUNCE

    To jest typowy błąd programowy a prawdopodobnie dochodzi do przepełnienia stosu. Musisz to sprawdzić.

    Mikrokontrolery   27 Wrz 2004 06:21 Odpowiedzi: 17    Wyświetleń: 1485
  • [atmega32][bascom]Jak wyswietlić jakąś zmienną na wyświetlaczu nokia 3310

    w programie miałem niepotrzebnie zadeklarowaną zmienną string po usunięciu jej wszystko działa tylko jedna rzecz mnie zastanawia np jeśli na samym początku programu zadeklaruje w/w zmienną to brakuje pamięci sram a jeśli zrobię już całą procedurę w sub'ie to wszystko się ładnie kompiluje i niczego nie brakuje nie będzie się to ze sobą gryzło w praktyce?...

    Mikrokontrolery AVR   27 Lis 2011 21:29 Odpowiedzi: 18    Wyświetleń: 3338
  • [atmega8] Jak uzyskać 40kHz dla paczek impulsów w ATmega8 z Bascom?

    Witaj, No save spokojnie możesz użyć.... pod warunkiem, że nie korzystasz w obsłudze przerwania z instrukcji Bascoma bo jeśli tak to nie odkładając rejestrów na stos, zgubisz ich wartości i w najlepszym przypadku będą się działy różne rzeczy. Ja bym napisał wstawkę w asemblerze odkładając wcześniej na stos używane rejestry w tym SREG. Możesz też użyc...

    Mikrokontrolery AVR   04 Wrz 2009 23:40 Odpowiedzi: 12    Wyświetleń: 2671
  • [bascom] LCD w sterowniku ładowarki na ATmega8 zawiesza się po pewnym czasie

    Przepełniasz stos .... zwiększ dla kompilera wielkość pamięci na stos ( oczywiście w opcjach kompilera). Z bascomem tak jest mówi o wszystkim tylko nie o błędzie przepełnienia stosu. ( np Pascal informuje ale nie ma go na AVR). I jak w pętlach wyświetlasz coś na lcd to za każdym wykonaniem funkcji LCD daj Waitms 10 bo niektóre wyświetlacze słabo sobie...

    Mikrokontrolery AVR   12 Lip 2008 08:44 Odpowiedzi: 22    Wyświetleń: 4076
  • [BASCOM] Jaki sposób pisania programu będzie najlepszy?

    Głowy nie dam, ale GOSUB odkłada na stos wskaźnik do miejsca skoku oraz chyba rejestry. Robienie wielu zagnieżdżonych skoków spowoduje w końcu przepełnienie stosu. Robienie ich równolegle nie szkodzi. Jedynie, na czym utracisz co do pamięci, to instrukcja skoku i powrotu - kod wykonywalny zajmie po prostu więcej.

    Mikrokontrolery AVR   24 Cze 2010 19:03 Odpowiedzi: 8    Wyświetleń: 2509
  • ATMEGA32 - Zawieszenie przy 17 cyklu, możliwe przepełnienie pamięci?

    Tak jest problem z przepełnieniem stosu. Masz bardzo dużo Gosub'ów co to powoduje. Kod jest tak nieczytelny, że nie chce mi sie go analizować. Powiem jedno: jeśli uzywasz Gosub to dbaj o to by podprogram się kończył, a nie skakał z jednego do drugiego, bo w ten sposób właśnie zwiększasz odkładanie adresów powrotu na stosie i nieuchronnie doprowadzi...

    Mikrokontrolery   14 Lis 2011 19:58 Odpowiedzi: 12    Wyświetleń: 1667
  • [Atmega8] [Atmega8][Bascom] Jak ustawić timer 2-bajtowy na przerwanie co sekundę?

    Wojtek - wchodzisz tutaj: [url=http://www.frank-zhao.com/cache/avr... z kalkulatorem 16MHZ z preskalerem 1024 oznacza że: - 1 sekunda nastąpi po 15625 cyknięciach timera - przerwanie następuje przy przepełnieniu jeśli wybierzesz OVERFLOW, ale może tez nastąpić przy COMPARE, od tego zależy jaką wartość wpiszesz do timera (czy odejmiesz...

    Mikrokontrolery AVR   22 Lip 2012 23:39 Odpowiedzi: 47    Wyświetleń: 6170
  • Atmega 16 zawiesza się w pętlach Uszczenianie i Paletyzacja - Bascom AVR

    Mój ulubiony "kwiatek" :) Gosub Wybor Wybor: Potem mamy masę gosub'ów bez poprawnego wyjścia. Generalnie program źle napisany. Piszemy programy tak by subrtyny mogły się kończyć i nie zagnieżdżamy nadmiernie podprogramów. To nie watchdog tylko przepełnienie stosu. Chociaż i watchdog może w kilku przypadkach resetować, zwłaszcza tam gdzie jest WAIT...

    Mikrokontrolery AVR   03 Paź 2010 23:30 Odpowiedzi: 10    Wyświetleń: 2327
  • [Bascom/ASM] Jak poprawnie włączyć wstawki asemblerowe do kodu w Bascom?

    Z tą dowlnością w używaniu rejestrów byłbym bardzo ostrożny. Nieodpowiednia zmiana - program się wysypie. Nie wolno używać w trybie zapisu bez wcześniejszego zapamiętania: Y ( soft stack pointer ), R4:R5 ( frame stack pointer ), R6 ( status register ), R8:R9 ( data pointer ), R23 ( translate register ), R12:R13:R14:R15 ( fp calculator ). W sumie można...

    Mikrokontrolery AVR   27 Lip 2008 08:53 Odpowiedzi: 9    Wyświetleń: 3643
  • [Atemga16/32][Bascom] Obsługa DS18B20 w przerwaniu

    No dobra... nie chcesz to nie. W dodatku to nie jest cały kod więc nie wiadomo czy tam gdzie indziej się dzieje. Głównej porady czyli przepełnienia stosu nie bierzesz w ogóle pod uwagę ? Trudno powiedzieć coś więcej na tym fragmencie kodu.

    Mikrokontrolery AVR   21 Mar 2011 20:07 Odpowiedzi: 9    Wyświetleń: 2253
  • [atmega8][Bascom] Zewnętrzne przerwania uniemożliwiają komunikację przez I2C

    Stosy to dla mnie czarna magia, wiem tylko, że każdy przeskok wymaga zapisania adresu zwrotnego, ale nic poza tym :oops: No przy takim podprogramie to 1 megabajtowy stos to za mało :D, to się chyba nazywa rekurencja: [syntax=basic4gl]Petlapomiarowa: If Impulsy < 15 Then 'Jesli nie ruszono, wyswietlaj dalej napiecie Gosub Pomiaradc If Konwersja >...

    Mikrokontrolery AVR   18 Kwi 2012 21:48 Odpowiedzi: 10    Wyświetleń: 3647
  • Program w Bascomie na Atmel 89C51 nie działa poprawnie powyżej 2kB

    Widać nie do końca się "naprawiło" :lol: Czy podczas symulacji działa jak powinien (a może tylko Tobie się wydaje, że działa jak powinien :wink: ). Możliwe że masz problem z przepełnieniem stosu, przy skomplikowanych programach tego w symulacji nie sprawdzisz. Czy podczas programowania programator potwierdza prawidłową weryfikacje? Jeżeli tak to przeglądnij...

    Mikrokontrolery   31 Mar 2004 07:50 Odpowiedzi: 7    Wyświetleń: 1014
  • Co oznacza Frame or software stack overlap w symulatorze Bascoma?

    Brakło RAMu pewnie, stos zaczął pokrywać się z obszarem przeznaczonym na zmienne. Albo przepełnienie stosu, jeżeli wywaliło podczas działania programu (na przykład w momencie wywołania jakiejś procedury). Jak to pierwsze, to spróbuj zmniejszyć rozmiar stosu (gdzieś tam w opcjach kompilatora jest), jak pierwsze lub drugie to postaraj się zmniejszyć ilość...

    Mikrokontrolery   17 Sty 2007 10:37 Odpowiedzi: 1    Wyświetleń: 1029
  • Resetowanie programu po naciśnięciu przycisków 1 i 4 - jak naprawić?

    Jeżeli to jest cały kod programu to wszystko jasne :) : po uruchomieniu program sobie działa, dochodzi do kodu procedurki i na końcu napotyka END SUB - czyli RET w asm - więc procesorek myśli (prawidłowo :-) ), że musi powrócić z podprogramu - czyli odczytać zapisany adres powrotu na stosie, ale ponieważ nie było wywołania podprogramu, to na stosie...

    Mikrokontrolery   01 Kwi 2004 18:42 Odpowiedzi: 3    Wyświetleń: 1104
  • [bascom] różnica pomiędzy etykietą a podprogramem

    Wiem ze czesto uzywanie goto powoduje przepelnienie stosu, dlatego tez unika sie uzywania goto. GOTO nie używa stosu. GOSUB używa, ale częste używanie nie oznacza, że stos przepełni się. Zagnieżdżanie dużej ilości może spowodować przepełnienie. Jak dobrze to rozumiem to na stosie laduja adresy gdzie program zrobil skok, zeby mogl do nich wrocic jak...

    Mikrokontrolery AVR   22 Gru 2009 00:40 Odpowiedzi: 22    Wyświetleń: 7118
  • Jak zrealizować przeskakiwanie między pętlami w Bascomie za pomocą przerwań?

    W obsłudze przerwania umieścić należy kilka warunków, które będą sprawdzały wartość zmiennej i za pomocą polecenia Goto XXX przeskakiwały do kolejnych pętli. Tak NIE WOLNO ROBIĆ, powoduje to przepełnienie stosu (bo nigdy nie wychodzi z przerwania). Poprawnie można to zrobić tak: Odpowiednie pętle sprawdzają flagi (zmienne) w przypadku udpowiedniego...

    Mikrokontrolery   07 Wrz 2003 01:25 Odpowiedzi: 12    Wyświetleń: 1706
  • BASCOM - jak przerwać procedurę i wrócić do pętli DO...LOOP?

    Witam. Mam program, który działa w pętli DO..LOOP typu: DO ... IF warunek THEN procedura ... LOOP przerwanie: ... return sub procedura ... end sub Procedura wywołana w pętli głównej ma opóźnienia na WAITMS. Chciałbym przy pomocy przerwania (przycisk) zrezygnować w dowolnym momencie z wykonywania 'procedury' i wyjść z jej obsługi do pierwszej instrukcji...

    Mikrokontrolery   12 Sty 2006 08:47 Odpowiedzi: 16    Wyświetleń: 2745
  • Reset procesora 89C2051 w Bascomie po 16 skokach między subrutynami

    A masz znaczniki końca procedury? ekran powitalny sub xx ... ... call yy End Sub sub yy .. .. call xx End Sub Jeżeli będzie tak jak wyżej to program powinien działać w nieskończoność. Jeśli jednak masz te znaczniki "End Sub" i dalej to samo to prawdopodobnie twój program powoduje chwilowe przepełnienie stosu. Można to sprawdzić na symulatorze Bascoma...

    Mikrokontrolery   07 Mar 2007 22:52 Odpowiedzi: 11    Wyświetleń: 1563
  • Atmega Bascom AVR - ADC nie zawsze wyłącza silnik, możliwe błędy w getadc?

    Auto napisał: satanistik napisał: Program w przerwaniu od timera mierzy wartość z ADC Rozwiązanie dość kiepskie. Wchodzi w przerwanie, wyzwala pomiar, czeka na wynik W PRZERWANIU!, Nie twierdze że to jest rewelacja, ale samo w sobie nie powinno prowadzić do błędu w stylu "brak kolejnych pomiarów ADC". "Oczywista oczywistość". Tyle, że bez kodów źródłowych...

    Mikrokontrolery AVR   13 Lip 2017 11:43 Odpowiedzi: 13    Wyświetleń: 1503
  • Sterowanie silnikiem krokowym, atmega 8, zmiana szybkości

    Trochę inaczej. Gdy w programie wywołujesz sub to program zanim przejdzie do sub wykonuje kilka-kilkadziesiąt niewidocznych dla Ciebie operacji. Mianowicie zapamiętuje stan potrzebnych rejestrów i zmiennych w komórkach pamięci. W miejscu które nazywa się stos. Gdy z tego sub wywołujesz następny sub to znowu zapamiętuje kilka- kilkadziesiąt danych. A...

    Mikrokontrolery   13 Paź 2010 19:04 Odpowiedzi: 63    Wyświetleń: 16347
  • Zawieszanie się programu w BASCOM przy użyciu Debounce Pinc.5 - jak naprawić?

    No to przeanalizuj sobie program krok po kroku: 1) W sub A po wciśnięciu przycisku następuje skok do podprogramu(!) Prog_1, któru w Ciebie zadeklarowany jest jako zwykła etykieta, a nie podprogram. Jakbyś pisał w asm, to takie coś jest jak najbardziej poprawne, ale w innych językach może, ale nie musi działać, tu raczej działa tak jak w asm. 2) z Prog_1...

    Mikrokontrolery   05 Sie 2005 20:47 Odpowiedzi: 5    Wyświetleń: 1439
  • Przeniesienie programu z AT90S2313 na ATtiny13 - problemy z BASCOM i UART

    Sprawdziłem i miałeś rację :) źle przeliczyłem wartoś (faktycznie jest kwarc/64) a co do rejestrów to okazuje się, że potrzeba wrzucić na stos rejesrtry: r0, r4, r17, r20, r24, r25, r26, r28 i r30. Niektóre np: r27 nie są używane (wg symulatora). Przy okazji odkryłem że jeśli ostatnim rejestrem odłożonym na stos jest np. r5 a zdejmowanie ze stosu zacznie...

    Mikrokontrolery   21 Wrz 2006 19:31 Odpowiedzi: 20    Wyświetleń: 3504
  • Błąd resetu programu na ATtiny2313 po 6-krotnym wpisaniu kodu

    Stos znajduje sie w pamięci RAM i problem polega na tym że wywołanie podprogramu powoduje odłożenie na stos adresu powrotu a jeśli z podprogramu wywołasz następny podprogram ten też odłoży na stosie swój adres powrotu i tak dzieje się do momentu aż stos sie przepełni co oznacza że nadpisze zmienne programowe. Aby uchronić sie od takiej sytuacji musisz...

    Mikrokontrolery   09 Kwi 2008 22:53 Odpowiedzi: 11    Wyświetleń: 1296
  • Jak zdefiniować i sterować LCD przez 4-bitową szynę w C?

    robilem sterownik bramy w bascom i przy programie ok 2000 linii to program byl bardziej niestabilny ......... tzn chodzil ladnie a nagle jakeis krzaki na wyswietlaczu (nawet jak ja nic nie robilem) krzaki znikaly i znowu chodzil ladnie az się zrestartowal i wszystko zaczynalo się od nowa Przyczyna - na 99,9% niekontrolowane przepełnienie stosu.

    Mikrokontrolery   29 Gru 2007 21:15 Odpowiedzi: 53    Wyświetleń: 9708
  • Sterowanie wyświetlaczami w Bascom z użyciem Lookup i portu B z peryferiami

    Mam jeszcze 2 pytanie związane z Bascomem. Zrobiłem program przykładowy przedstawiony poniżej. Dim Nr As Byte Dim Nr2 As Byte Dim Koniec As Bit Skocz: Koniec = 0 Do Input "Podaj nr" , Nr If Nr > 0 Then If Nr < 20 Then Koniec = 1 End If End If Loop Until Koniec = 1 Do Print "pętla 2" Input "Podaj nr 2" , Nr2 If...

    Mikrokontrolery   30 Maj 2010 13:45 Odpowiedzi: 6    Wyświetleń: 1862
  • [BASCOM] [BASCOM][M8] Zawieszanie programu przy użyciu Waitms i obsługa przycisków SAA1057

    Rozwiązałem program i problemy Tylko do czasu przepełnienia stosu, a później maliny! Nie wychodzi się z podprogramu poprzez Gosub Wyl do pętli głównej. Podprogram musi się zakończyć przez Return! Wyjdź z pętli Do: Loop przynajmniej za pomocą Exit Do i wstaw na końcu podprogramu Return. Etykieta Wyl nie będzie potrzebna. End przestaw pod Loop pętli...

    Mikrokontrolery AVR   19 Paź 2010 21:51 Odpowiedzi: 21    Wyświetleń: 2067
  • [Mega32][Bascom] - Dziwne działanie z wyświetlaczem ST7565R

    Myślę że błąd się czai jakiś prosty. Masz na pewno wszedzie Return w tych Sub`ach? Chodzi mi o to że jak nie ma Return to program skacze pod Label ale potem nie wraca tylko czyta kolejny sub i dopiero kiedy w nim napotka Return to wraca. Jest to błąd o którym kompilator Cię nie poinformuje bo to jakby zamierzone działanie programisty. Inaczej trudno...

    Mikrokontrolery AVR   29 Wrz 2016 16:39 Odpowiedzi: 2    Wyświetleń: 975
  • Mega8[Bascom] - Jak wyświetlić zmienną w menu programu na LCD?

    5. Pamiętaj że sub`y powinny być tak wykorzystywane aby w nich program się nie zapętlał i aby po każdym wywołaniu podprogramu wrócił on do miejsca wywołania. Każdy skok do podprogramów zapisywany jest na stosie i jeżeli tych skoków będzie za dużo procek się zawiesi. Od tego jest SoftStack (SWStack) by jendnak go dostroić do potrzeb programu i przy...

    Mikrokontrolery AVR   03 Maj 2009 13:38 Odpowiedzi: 8    Wyświetleń: 1805
  • Bascom AVR, Atmega16 - Disable Interrupts, Disable Int0/1

    To o co pytasz nie zależy od Bascoma, tylko od architektury procesora. AVRy po przyjęciu przerwania blokują wszystkie przerwania (z wyjątkiem XMEGA, które mają przerwania wielopoziomowe i NMI). Tak więc sam nigdy nie musisz w handlerze przerwania ich blokować. Pytanie, kiedy je odblokowywać przed zakończeniem obsługi. W kilku sytuacjach, np.: 1. Kiedy...

    Mikrokontrolery Początkujący   02 Wrz 2012 21:06 Odpowiedzi: 1    Wyświetleń: 1395
  • Jak zresetować program w Bascom po naciśnięciu przycisku na AVT?

    Wydaje mi się, że powinna tu być użyta instrukcja GOTO zamiast GOSUB. ;) GOSUB bez RETURN może przepełnić stos. (Jeżeli coś pokręciłem to proszę mnie uświadomić). Dodano po 2 Ale nie prościej zrobić tak: do ... loop until przycisk=0 (?)

    Mikrokontrolery AVR   08 Kwi 2009 11:27 Odpowiedzi: 11    Wyświetleń: 1343
  • Bzdury z RS, wysyłanie i odbieranie danych, ATmega.

    witam. buduje systemy na rs485. niestety zadna z komend bascomowych nie była mi przydatna. używam przerwania do odbioru i sam obsługuje własny bufor z ustawieniem flagi informujacej iz właśnie w buforze jest odebrany "ważny" pakunek danych '------------------------ Rx_serwer: Rxdata = Udr1 Rem zabezpieczenie przed przepełnieniem bufora If Rx_count...

    Mikrokontrolery   29 Kwi 2008 11:12 Odpowiedzi: 10    Wyświetleń: 3017
  • [attiny2313] [attiny2313][bascom] Program resetuje się po 26 załączeniach przekaźnika

    Witam. Piszesz, że jest to twój pierwszy. Niestety widać to na każdym kroku. Masz kilka błędów rzucających się w oczy. Pierwszy błąd notorycznie popełniany przez początkujących to mylenie rejestru PIN z rejestrem PORT. Zamiast: Gosub i etykiet do podprogramów. Pamiętaj, jeśli z jakiegoś miejsca w programie robisz skok do jakiegoś podprogramu to bezwzględnie...

    Mikrokontrolery AVR   14 Lut 2012 21:14 Odpowiedzi: 4    Wyświetleń: 1655
  • Wybór mikroprocesora AVR do prostego sterownika czasowego WL/WYL z LCD i przyciskami

    jeśli tak to chyba będzie lepiej zrobić z pcf'em :) można wtedy ywkorzystać te 240B RAM'u które są wolne w zegarku a podtrzyamanie bateryjne też będzie łatwiejsze do zrealizowania. Pisałem kiedyś program który miał około 30B w RAM'ie przeznaczone na zmienne. Obsługiwał LCD, PCF8583, pare tranzystorów, klawiaturkę i rc5. Dawał sobie nawet rady. Ale dokłądanie...

    Mikrokontrolery   26 Kwi 2006 14:32 Odpowiedzi: 18    Wyświetleń: 3234
  • Atmega/Bascom - Brak wyświetlacza LCD - jak to wpłynie na wykonywanie programu?

    Takie pytanie mam: projektuję właśnie dość złożone urządzenie w oparciu o AVR, do celów czysto uruchomieniowych wyposażam je w złącze do wyświetlacza LCD. Docelowo tego wyświetlacza ma tam jednak nie być, nie ma na niego zresztą nawet miejsca w docelowej obudowie. Moje pytanie: czy pozostawione w programie instrukcje obsługi wyświetlania, w sytuacji...

    Mikrokontrolery   23 Wrz 2015 17:58 Odpowiedzi: 2    Wyświetleń: 720
  • Codevision AVR - LCD: Przypisanie pinów wyświetlacza do portów mikrokontrolera

    pisałem w CodeVisonAVR i bascomie i w zasadzie nie widzę różnicy jeżeli chodzi o zajetość programu i szybkość. Wszystko zależy od programisty jak pokieruje swój program i podejdzie do sprawy. Oba języki działają na podobnej zasadzie, czesto różniąc się tylko samym sposobem zapisu instrukcji, bo w zasadzie kod się pisze na podobnym poziomie abstrakcji....

    Mikrokontrolery   03 Lip 2004 05:16 Odpowiedzi: 15    Wyświetleń: 3437
  • Jak uniknąć przepełnienia stosu w ASM na mikrokontrolerze ATmega88?

    Ch.M , programowałeś wcześniej w BASCOMIE? Bo z tego co zauważyłem, to przeważnie takie są efekty przesiadki z BASCOMA na ASM. Dr_DEAD ma rację, kod musi być przejrzysty. Co innego jak robisz w ASM miganie diodami, a co innego jak taki, dosyć już niemały program. Gdybyś zastosował się do wskazówek mojego przedprzedmówcy, to nie dość, że Tobie łatwiej...

    Mikrokontrolery   29 Sie 2007 01:45 Odpowiedzi: 28    Wyświetleń: 3069
  • Bascom - jak zrealizować wybór programu za pomocą przerwań?

    Czy nie lepiej wykonać obsługę sekwencji w procedurze obsługi przerwania timer'a ? Co należałoby zrobić ?: - zdefiniować przerwanie np co 50 ms - dodać programowy dzielnik /100 w przerwaniu (5s) - wykonać tablicę sekwencji w pamięci programu - każde przepełnienie dzielnika powoduje odczyt danej z tablicy (w zależności od numeru sekwencji i numeru kroku)...

    Mikrokontrolery   10 Lut 2006 11:50 Odpowiedzi: 19    Wyświetleń: 1989
  • atmega32 [Bascom] - Jak poprawnie obsłużyć przycisk z dwiema funkcjami PWM?

    Witam Wiem, że temat przycisku jest mocno nadwyrężony, ale ... Program ma jednym przyciskiem przy dłuższym przytrzymaniu zwiększać i zmniejszać wartość wyjścia PWM ( na zmianę ) lub przy krótszym włączyć/wyłączyć, czyli pwm1a = 0 lub pwm1a = 255. Praktycznie, potrzebujesz uskutecznić cztery a nie dwie funkcje: -włączyć/wyłączyć - to są dwie; -zwiększać...

    Mikrokontrolery AVR   26 Paź 2011 15:49 Odpowiedzi: 3    Wyświetleń: 2599
  • Atmega8/16 – jak programowo zmierzyć wypełnienie i częstotliwość PWM w C/Bascom

    Na przerwaniach świat nie zawsze stoi - DOS miał przerwaniowy system i zrezygnowano z niego głównie dlatego że nie dało się opracować na tym mechanizmie wielowątkowości (dzielenia czasu procesora). Nie znam sie na PC, ale to zdanie brzmi conajmniej podejżanie. A który system operacyjny nie obsługuje przerwań od sprzętu? Zapamiętywanie wszystkiego na...

    Mikrokontrolery   28 Sty 2008 18:44 Odpowiedzi: 78    Wyświetleń: 11672
  • ATtiny13 Bascom - dwie funkcje w jednym przycisku jedna zależna od drugiej

    Właśnie chcę to dokładnie zrozumieć by nawet bez kalkulatora móc to wyliczyć :) choć on bardzo ułatwia i nie trzeba za bardzo wysilać szarych komórek :) Kalkulatory jak najbardziej się przydadzą i za nie wielkie BÓG ZAPŁAĆ :) Z pierwszego kalkulatora zauważyłem, że Timer0 i Timer2 są 8 bitowe natomiast Timer1 i Timer3 16 bitowe Attiny13 ma tylko jeden...

    Mikrokontrolery Początkujący   22 Kwi 2016 21:04 Odpowiedzi: 39    Wyświetleń: 4191
  • BASCOM - wywoływanie podprogramów wysypuje program.

    Witam Program kod1. Wysypuje się po przesłaniu kilkuset ekranów domyślam się że chodzi o przepełnienie stosu ilość przesłanych ekranów uzależnione jest od zadeklarowanej ilości pamięci. Jeżeli zamiast wywoływania podprogramu Czytaj_port wpiszę go z ręki kod2 wszystko działa perfekcyjnie mam zatem pytanie co robię nie tak czy BASCOM nie może samodzielnie...

    Mikrokontrolery   04 Lut 2008 15:14 Odpowiedzi: 4    Wyświetleń: 1184
  • Bascom - Jak stworzyć generator impulsów z regulowanym wypełnieniem i częstotliwością?

    Witam, A gdyby timer (odpowiedzialny za regulację częstotliwości) po przepełnieniu wyzwalał swoim przerwaniem podprogram z poleceniem PULSEOUT ? Można w nim zadeklarować czas trwania impulsu a przez to regulować jego wypełnienie. Pozdrawiam, Owszem 'zmontujesz' w ten sposób jakąś kombinowaną PWM falę, której czas stanu niskiego jest liczony timerem,...

    Mikrokontrolery AVR   19 Lip 2014 13:53 Odpowiedzi: 21    Wyświetleń: 4941
  • Jak zapewnić dokładny pomiar czasu reakcji w ATMEGA8 dla dwóch strzelców?

    Co do bascoma...jako ze generuje wolny kod to nie możesz wepchnąć rozbudowanej obsługi licznika w przerwanie, bo pogubisz takty albo wykopyrtniesz procesor bo sie stos przepełni(w przypadku gdybys w obsłudze przerwań nie wyłączał przerwań, a w trakcie trwania jego obsługi wystąpiło następne przerwanie i tak w kółko) Musisz wziąć pod uwagę czas reakcji...

    Mikrokontrolery   15 Mar 2008 22:10 Odpowiedzi: 9    Wyświetleń: 6010
  • [Atmega8][bascom] timer2 CTC generuje przerwanie tylko raz

    . Deklarując zmienną "dowpisania" jako bajt nic się nie zmienia. W czasie jednej pełnej pętli głównej licznik zwiększa się o 3, więc dla najwyższej możliwej częstotliwości pętla wykona się 16 razy zanim dojdzie do przerwania, nawet zostawiając w głównej pętli wysyłanie ocr2 przez uart, gdyby wywalić tę linijkę, pewnie trwałoby to jeszcze krócej. Nie...

    Mikrokontrolery AVR   01 Lis 2018 13:41 Odpowiedzi: 10    Wyświetleń: 843
  • [BASCOM] Jak uruchomić i zatrzymać Timer0 w ATmega8a za pomocą przerwań INT0 i INT1?

    Witam. Mam problem z przerwaniami. Chcę przerwaniem INT0 uruchomić timer0 a przerwaniem INT1 go zatrzymać. Czy jest taka możliwość? 2 czujniki podpięte pod INT0/1, za pomocą których chcę zmierzyć czas przejazdu. Jeden czujnik ma wystartować zegar (bardzo dokładny przepełnienie timer0 co 1us) a drugi ma zatrzymać pomiar. Z góry dziękuję za pomoc i pozdrawiam....

    Mikrokontrolery AVR   20 Sty 2014 10:37 Odpowiedzi: 11    Wyświetleń: 2094
  • [Atmega8][Bascom] Pomiar czasu zadziałania przekaźnika - nie działa jak powinien

    Doprowadziłem program do takiej postaci: ............ Wydaje mi się, że to wina tego, że jak przyjdzie przerwanie w czasie obsługi wyświetlacza to się coś kiełbasi. Przerwanie od przepełnienia stosuje po to, by móc mierzyć też dłuższe odcinki czasu, np w przekaźnikach czasowych. Jeszcze jedno pytanie. Dlaczego program z pierwszego postu nie działa?...

    Mikrokontrolery AVR   06 Sty 2012 20:29 Odpowiedzi: 11    Wyświetleń: 2941
  • Atmega8 Bascom - MPU 6050 poprawność kodu i wyników

    Witam Z ciekawości uruchomiłem czujnik MPU6050, kod wykorzystałem z jednej z niemieckich stron - poniżej. Nie jestem pewien, czy kod jest poprawny, bo wyniki są bardzo "ruchliwe". Tzn. gdy płytka czujnika leży nieruchomo na stole to wyniki się zmieniają i o to sporo. Przykładowo: Accx zmienia się od np 10 do 270 Accy cały czas jest duże - nawet ponad...

    Mikrokontrolery Początkujący   17 Sie 2015 17:16 Odpowiedzi: 1    Wyświetleń: 1893
  • [AtMega8] [AtMega8][Bascom] Jak wyświetlić adresy urządzeń I2C na LCD?

    Witam W oparciu o kod znaleziony na forum Elektroda mam programik wyświetlający adresy układów w magistrali I2C ( TWI ). Kod jest taki: $regfile = "m8def.dat" 'definicja procesora $crystal = 4000000 'taktowanie procesora $hwstack = 32 ' rozmiar stosu sprzętowego $swstack = 10 ' rozmiar stosu $framesize = 40 ' rozmiar ramki Config Debounce...

    Mikrokontrolery AVR   15 Sie 2011 22:51 Odpowiedzi: 9    Wyświetleń: 4361
  • BASCOM Licznik impulsów 0-999 na ATtiny2313 - problem z cyfrą setek po 255

    (...) ' 5 Data 250 ' 6 Data 131 ' 7 Data 251 ' 8 Data 219 ' 9 Wstępna ocena dostępnych informacji W kodzie widzimy dwa liczniki (Liczba_ok i Liczba_nok) zadeklarowane jako zmienne typu Word, a także tablice na cyfry (Cyfra_ok i Cyfra_nok) jako typ Byte. Z punktu widzenia zakresu wartości samych liczników (od 0 do 999) nie powinno to powodować błędów...

    Mikrokontrolery AVR   16 Sty 2025 15:57 Odpowiedzi: 9    Wyświetleń: 378
  • Jak przeliczać przepełnienie Timer1 16bit w ATmega32 z preskalerem 256?

    Witam. 1. w zapodanym przez Ciebie kodzie baskomowym na atmega8 jest lina If Pind.2 = 0 Then Lcd "Rcvr" Else Lcd " " - napis Rcvr na się wyświetlac tylko w stanie niskim portu >>> To wskazywanie odbioru zegara zrobione jest "na chybcika" i nie działa zbyt dobrze. Może być tak , że zapalone jest Rcvr a odbiornik nie odbiera. Jak regularnie miga to odbiór...

    Mikrokontrolery   22 Gru 2012 16:48 Odpowiedzi: 54    Wyświetleń: 14805
  • [Bascom][Atmega32] - "Config KBD" a praca timerów.

    Kiedyś na tym forum na pytanie dla czego spóźnia mi się sekundnik z timera otrzymałem odpowiedź że w bascomie każdorazowe użycie "wait" używa jednego timera, a co za tym idzie blokuje inne.Ktoś mi wtedy polecił zmianę instrukcji "wait" na pętlę zakańczaną przepełnieniem zmiennej z przerwania timera którego używam.Tak więc z własnego doświadczenia znam...

    Mikrokontrolery Początkujący   26 Paź 2012 12:58 Odpowiedzi: 10    Wyświetleń: 1725
  • Czy pomiar czasu na '51 z kwarcem 12MHz jest mniej dokładny niż na 11.0592MHz?

    A ja mam oto takie przerwanie: ;=======================================... ; Timer 0 interrupt ;=======================================... .org0x000B t0intv: MOV timer_xxx,TL0 ;2 execution time measurement (start) PUSHACC ;2 PUSHPSW ;2 DJNZclock_clk, noclock ;2 MOV clock_clk,#iclock_clk;2 ; hundreds of seconds INC clk_x MOV...

    Mikrokontrolery   17 Lis 2005 19:17 Odpowiedzi: 7    Wyświetleń: 3506
  • [ATTiny45] - Timer0 nie działa poprawnie, porty zmieniają stan losowo

    Tłumaczą Ci ludzie już drugi dzień. Zwłaszcza kolega Logan . Czy tak trudno przeczytać w Helpie: Instrukcja ON INTERRUPT Przeznaczenie: Wykonuje skok do podprogramu gdy wystąpiło określone przerwanie. Składnia: ON źródło_przerwania nazwa_podprogramu Jeśli trudno to porzuć programowanie - są łatwiejsze profesje.

    Mikrokontrolery AVR   03 Cze 2010 15:26 Odpowiedzi: 18    Wyświetleń: 2185
  • [ATMEGA16] [ATMEGA16][BASCOM] - Jak zarządzać pamięcią i unikać zapętlania programu?

    Przeanalizuj swoje odwołania poprzez GOSUB. Masz na 100% zapętlone i stos ci się przepełnia. Najpierw piszesz Gosub Standby a potem w tej procedurze Gosub Glowne , a tam znów Gosub Standby w jednym z warunków. I tak w kółko program sobie skacze i po dwa bajty na stos.

    Mikrokontrolery AVR   05 Cze 2008 21:15 Odpowiedzi: 5    Wyświetleń: 2238
  • Bascom - Atmega8a traci wartość liczników/samoczynny reset mikrokontrolera

    Możliwe, że któryś skok do funkcji niepoprawnie powraca i przepełnia się stos, czego następstwem jest reset mikro kontrolera, prześledź miejsca gdzie wykonywane są skoki i zobacz czy są takie gdzie np wykonujesz skok i zamiast wrócić return to wykonujesz 2 skok.

    Mikrokontrolery Początkujący   13 Cze 2013 13:47 Odpowiedzi: 10    Wyświetleń: 2181
  • AVR [ATMEGA48] , Assambler - samoistna zmiana taktowania uC

    Witam . Napisałem ( prawie) sobie na ww procesor program w asm i bascomie który ma robić za zamek otwierany kartą . W bascomie wszystko działa w 100 % według założenia jednak w asm mam taki problem że układ sam zmienia swoje taktowanie (ponad 2x) przez co wszystkie funkcje czasowe nie pracują jak powinny . Nie było by w tym nic niezwykłego ( ustawiony...

    Mikrokontrolery AVR   19 Wrz 2010 19:24 Odpowiedzi: 11    Wyświetleń: 2277
  • [atmega16] [atmega16][bascom] Reset procesora podczas 9 cyklu automatyki bramy

    nie dość, że w przerwaniu dajesz opóźnienia waitms o czym wspomniał kolega powyżej - to jeszcze wyświetlasz coś w przerwaniu na LCD a to już msakra. do tego wszystkiego daj nie tylko dyrektywę informującą jaki zegar ale co najważniejsze dyrektywy ustawiające stos sprzętowy i programowy - dodatkowo zmień wtedy ich wartości na większe niż domyślne bo...

    Mikrokontrolery AVR   07 Cze 2009 22:29 Odpowiedzi: 7    Wyświetleń: 1652
  • atmega32 Bascom - Multileksowanie 6-ciu wyświetlaczy LED

    Witam Odświeżę wątek. Dodałem układ UDN2981A pomiędzy Atmege a wyświetlacze, wyrzuciłem tranzystory które sterowały anodami oraz ich rezystory z baz. Działa całkiem nieźle. Jest jedno ale... jasność. Steruje to takim kodem: [syntax=basic4gl] '************ Zegar 6 wyswietlaczy LED + PCF8563 $regfile = "m32def.dat" $crystal = 8000000 $hwstack = 64 ' rozmiar...

    Mikrokontrolery Początkujący   29 Lip 2014 20:14 Odpowiedzi: 14    Wyświetleń: 3195
  • Licznik do skutera - Z wyświetlaczem od Siemensa

    Hmm, to znaczy że bym musiał uruchomić drugi timer (8 bitowy). Z tego co pamiętam, to przy maksymalnym dzielniku wychodzi 1 albo 2 sekundy. I w momencie przepełnienia sprawdzać prędkość? Co do pokazywania zer to ogarnąłem wykrywając przepełnienie timera 3 i w tym momencie wyświetlanie zer. cóż wiem , że program pewnie wg Ciebie (z resztą wg mnie też)...

    Mikrokontrolery AVR   14 Lut 2016 01:25 Odpowiedzi: 26    Wyświetleń: 2616
  • [Atmega8] [Bascom] - Czujnik ciśnienia MPL115A2 na I2C - może się przyda

    Poniżej wklejam działający kod obsługi czujnika ciśnienia MPL115A2 - może komuś się przyda. Komentarzami nie należy się przejmować, część udało mi się przetłumaczyć w oparciu o inne znalezione przykłady. Teraz ( 23:55 19/04/2013 ) w południowej części Krakowa pokazuje 995 hPa Byte . Jak najlepiej podzielić zmienna typu Long ?

    Mikrokontrolery AVR   23 Kwi 2013 13:32 Odpowiedzi: 1    Wyświetleń: 2139
  • [AtMega8][Bascom] Zegar PDF8563 + PCF8591 + Timer - kłopot z I2C

    Witam Mam układ, który mierzy dwie temperatury ( DS18B20 ), dwa napięcia ( PCF8591 ( pobiera czas ( PCF8563 ), a z powodu niedużego wyświetlacza ( 12 x 4 ) wskazania są zmieniane do 10 sekund po przepełnieniu Timer1. Układy PCF8563 i PCF8591 są podpięte z "zewnątrz" przewodami około 10 cm. Magistrala I2C ma obniżoną prędkość przez Config I2cdelay =...

    Mikrokontrolery AVR   15 Sie 2011 00:10 Odpowiedzi: 2    Wyświetleń: 2954
  • bascom-stos stcheck pokazuje error=3 mimo framesize = 1000

    Witam. Proszę Was o sprawdzenie poniższego kodu: Problem polega na tym że na LCD pokazuje się error=3 , a w symulacji error=0. Dalsze zwiększanie ramki to jakaś paranoja. Wyłuskałem ten kod z programu który ma kilkaset linii . Tam mam dopiero skutki przepełnienia stosu :-( . $regfile = "m32def.dat" ' specify the used micro $crystal = 8000000...

    Mikrokontrolery AVR   18 Sie 2010 10:33 Odpowiedzi: 2    Wyświetleń: 1491
  • Bascom AVR 1.11.8.3, Atmega32: błąd nawigacji w menu po odczycie DS18B20

    Witam, proszę o pomoc: buduje sterownik na zasadzie włącz/wyłącz, to akurat nie jest w tym momencie ważne :), ale przejdźmy do szczegółów - ma pobierać dane z 4 czujników DS18B20, sam odczyt działa poprawnie, problem zaczyna się w menu, do kroku "2.2" czasem "2.3" wszystko działa poprawnie, lecz z "2.2" i naciśnięciu 'dalej' (lub "2.3") przeskakuje...

    Mikrokontrolery   27 Gru 2007 23:45 Odpowiedzi: 2    Wyświetleń: 2568
  • Zawieszanie się programu na atmega88 w lampie LED z Bluetooth HC-06

    Nie wnikałem w kod, bo Bascomowcem jestem, ale sprawdź go pod kątem poprawności wychodzenia z podprogramów i procedur. Może masz gdzieś nawarstwianie się stosu i następuje jego przepełnienie po pewnym czasie?

    Projektowanie Układów   20 Cze 2014 11:59 Odpowiedzi: 5    Wyświetleń: 1254
  • [BASCOM] Jak obliczyć wartości rejestru servo w BASCOM dla różnych kwarców?

    W instrukcji CONFIG SERVOS jest taki parametr jak RELOAD = xxx. Liczba xxx określa jaki czas w us będzie pomiędzy kolejnymi przerwaniami licznika taktującego generator PWM dla układów serwa. I będzie to rozdzielczość tego układu. Zatem jeśli wpiszesz 10 to SERVOS(1) = 100 da nam 100x10us = 1ms impuls powtarzający się co 20ms na wyjściu podłączonym do...

    Mikrokontrolery AVR   19 Lip 2008 07:37 Odpowiedzi: 1    Wyświetleń: 2602
  • ATmega8 - Sekunda z książki Marcina Wiązania nie jest sekundą

    Witam serdecznie. Ostatni kod przepisałem żywcem z książki "Programowanie mikrokontrolerów w języku BASCOM" autorstwa Marcina Wiązania. Dioda miga ciut za wolno. Tu mi ręce opadają, dlatego zwracam się do Was o pomoc. Kod: Nie wierzę w to co napisałeś!!! Autor ksiązki nie zrobiłby takiego błędu... Podajesz błędne instrukcje, i oczekujesz poprawnej...

    Mikrokontrolery AVR   03 Mar 2014 18:59 Odpowiedzi: 13    Wyświetleń: 2100
  • [m8] Jak zliczać obroty koła kontaktronem w Bascom dla prędkości 30 km/h?

    Bo kontaktrony w licznikach rowerowych są jakieś szybsze. Robiłem kiedyś eksperymenty z rowerem i faktycznie zwykłe kontaktrony "rurkowe" nie nadążały się przełączać. Pierwszy z brzegu kontaktron KA-02 ze sklepu na literę T przy napięciu 5V i i prądzie 100mA ma częstotliwość przełączania 125Hz. Czas załączania do oporu 1Ohma wynosi ok 2,5 ms Czas odpuszczenia...

    Mikrokontrolery AVR   24 Wrz 2011 15:57 Odpowiedzi: 32    Wyświetleń: 7957
  • Stos w bascomie 8051. Jak mogę zwiększyć wielkość stosu? Programowo.

    Jak w temacie jak mogę zwiększyć wielkość stosu w bascomie 8051 programowo chodzi program dobrze ale czas od czasu się wiesza i podejrzewam ,że przepełnia się stos na symulacji jest prawie cały wykorzystany czy można temu zaradzić ? zapomniałem dodać że chodzi mi o procek AT 89C4051

    Mikrokontrolery   15 Lis 2008 10:34 Odpowiedzi: 7    Wyświetleń: 1848
  • Resetowanie programu przy użyciu funkcji potęgowania w Bascom AVR

    może przepełnia Ci się stos ?? sprrawdź podczas symulacji

    Mikrokontrolery   03 Maj 2008 12:20 Odpowiedzi: 8    Wyświetleń: 1337
  • Atmega2561 zawiesza się po 4h - brak reakcji na RC5 i zatrzymanie zegara

    Nie znam się na bascomie ale moim zdaniem przepełnia Ci się stos. Możesz zmienić rozmiar stosu na mniejszy o połowę i zobaczyć czy szybciej Ci się zawiesi.

    Mikrokontrolery   15 Sty 2012 10:19 Odpowiedzi: 3    Wyświetleń: 1125
  • [bascom] [mega8] - zawieszanie procesora- dziwna sprawa

    Nie wiem masz strasznie zamieszany ten kod:/ I skakasz po całym, spróbuj zwiększyć stos, może Ci się coś gdzieś przepełnia?

    Mikrokontrolery AVR   28 Cze 2008 22:25 Odpowiedzi: 12    Wyświetleń: 1904
  • [BASCOM] ATmega644PA-AU - dziwne zachowanie przy $crystal=12000000 w BASCOM

    Witam, Mam taki przypadek. Układ zmontowany na ATmega644pa i pracujący na zegarze 12MHz. Problem polega na tym, że jak w dyrektywach BASCOMa ustawię $crystal=12000000 to układ zachowuje się dziwnie (jakby mu się stos przepełniał) natomiast jak ustawię coś innego np (10 lub 16MHz) a wlutowany jest dalej zegar 12MHz to układ działa poprawnie.... (fusy...

    Mikrokontrolery AVR   15 Cze 2016 13:08 Odpowiedzi: 29    Wyświetleń: 1065
  • Attiny2313 zegarek, czy opłaca się użyć timera? BASCOM

    Nie radzę sobie z przypadkowymi resetami bo zegarek chodzi w zaciszu sypialni i jedynymi przypadkowymi resetami są wyłaczenia prądu gdyż nie dorobiłem się jeszcze zasilania awaryjnego. Na początku miałem trochę problemów z podczerwienią w przerwaniu bo odbiornik łapał przypadkowe impulsy i stos się przepełniał. Wymiana odbiornika IRED i dołożenie filtra...

    Mikrokontrolery   29 Kwi 2007 11:01 Odpowiedzi: 12    Wyświetleń: 3350
  • Atmega8 Bascom Przerwania dziwne zachowanie na portach

    Ja bym stawiał na brak debounce. Skoro sprawdzany jest stan przycisku to pewnie on do czegoś służy. Może do wyświetlenia informacji na wyświetlaczu. Jeżeli brak debounce to przerwanie to wywoła się pewnie z kilkanaście razy. Może być tez tak ze przepełnia się stos, kilkanaście razy 32 bajty.... i koniec RAM, procek sie resetuje. Ale to tylko zgadywanie...

    Mikrokontrolery AVR   23 Sie 2010 09:08 Odpowiedzi: 20    Wyświetleń: 2759
  • [AVR][ASM/Bascom][SD-MMC] Poradnik dla początkujących - karty SD i MMC

    Podejrzewam że skoro to Atmega32 to tworzysz coś pamięciożernego i stos się przepełnia, szczególnie że wstawka asm robi pushall i popall. Na początku programu daj większy stos, np: $hwstack = 64 I teraz zrób test czy jest dobrze. Jeśli nie to: - używasz przerwań w swoim programie na Atmega32 z opcją NOSAVE? Jeśli tak to wyrzuć NOSAVE - czy próbowałeś...

    Mikrokontrolery AVR   20 Lut 2015 17:24 Odpowiedzi: 17    Wyświetleń: 9849
  • Miernik częstotliwości 0-120Hz na ATmega8 – ocena schematu i kodu BASCOM

    bez konieczności zliczania przepełnień. Podobnie, odmierzanie czasu 1 sec. stosując Timer1 również nie wymagałoby zliczania przepełnień. Gdybym chciał jednak mierzyć załóżmy do 1kHz to wymaga aby zliczać przepełnienia? Dodano po 30 w złym obliczeniu 1 sek wartość wynosiła 61630, przy prawidłowym obliczeniu wynosi 34 286 uwzględniając czas 1sek, częstotliwość...

    Mikrokontrolery AVR   09 Mar 2014 23:03 Odpowiedzi: 29    Wyświetleń: 3030
  • [bascom] 'gdy zmienna byte >255 i <0 to.'jak to zrobic

    dzieki. no dokladnie stos sie przepelnia, Nie wiem jak dokladnie go dopasowac do moich wymagan, ale to kiedys tam. Narazie walcze z tym. wiec testowalem na adresie &H60 i error 90 w "baskupie" (w wakacje poucze sie c, narazie ni mam czasu sesja). error 90 to jest za duzy adres (addess alredy ocupied) zamienilem na 68 dziala. zaraz obadam datasheet do...

    Mikrokontrolery AVR   12 Cze 2008 21:15 Odpowiedzi: 13    Wyświetleń: 3140
  • Bascom: zawieszanie programu po kilku naciśnięciach P3.2 – obsługa przerwań i Debounce

    Dlaczego się wiesza? to proste i widać to od razu gołym okiem bez "lupy" CALL CZAS kieruje program do "SUB CZAS" SKĄD MA WRÓCIĆ W TO SAMO MIEJSCE!!!!!!!!!!!!!!!! TZN LINIJKĘ POD "CALL CZAS" u ciebie czasami leci do "poczekaj" potem do "główny" Stos się przepełnia i jest kicha.... ot cała tajemnica Musisz inaczej napisać program, pamiętając że rozkaz...

    Mikrokontrolery   02 Kwi 2006 11:07 Odpowiedzi: 8    Wyświetleń: 1143
  • Bascom 1.11.9.1, Atmega128 UART – po kilku godzinach pojawiają się śmieci na LCD

    Przysiada zasilanie telefonu lub twojego uP - albo co gorsza zasilasz je z wspólnie z LM7805 a telefony modemy GSM pobierają ok 1000mA przy 12-10V No i oczywiście stos pamiętaj że funkcja inkey też zajmuje stos i może go przepełniać jeśli jeszcze masz jakiś timer i przerwania a wszystko obsługujesz przez LCD to można go zapchać w bascomie - spróbuj...

    Mikrokontrolery   03 Kwi 2008 16:13 Odpowiedzi: 3    Wyświetleń: 2271
  • [Bascom Tinny44] - Instrukcja Load na Timer1 nie działa poprawnie

    Witam. Nie istotne jest co wpiszę w: Load Timer1 , 250 czy też Load Timer1 , 65000 liczy tak samo. Dodatkowo stosując prescaler nawet 8 uzyskam częstotliwość blisko 20Hz czyli chyba nie bardzo jak pracę diody. P.s proponuje zerknąć do helpa:) Opis: Instrukcja powoduje wpisanie do licznika określonej liczby zliczanych impulsów. Przed załadowaniem wartości...

    Mikrokontrolery AVR   11 Lut 2015 18:57 Odpowiedzi: 25    Wyświetleń: 1668
  • Pierwsze starcie z mikrokontrolerami (dozwolone linki Allegro, eBay, itp)

    Jak procek ma 32KB ROM to licznik przy programie o rozmiarze 19KB nie może dojść do końca. Chyba że w jakiś sposób zmusisz go do tego programowo. Na Asemblerze AVRów się specjalnie nie znam. Ale RESET może nastąpić chyba programowo, masz gdzieć błąd w programie który resetuje system. Może przepełniasz stos lub pamięć RAM. Albo masz gdzieś skok po wektor...

    Mikrokontrolery Początkujący   09 Sty 2018 16:32 Odpowiedzi: 2015    Wyświetleń: 549693
  • Atmega 32: Karta SD 32MB nie tworzy pliku TXT, format FAT16, co robić?

    Witam. Nie piszę w Bascomie już kawałek czasu. Ale może dobrym rozwiązaniem jest : 1) otwierać plik i trzymać go otwartym aż do chwili kiedy chcemy kartę wyjąć (jakaś opcja w menu typu "wyjęcie karty") ? 2) może kolejność CLOSE i FLUSH powinna być na odwrót (to tylko moje gdybanie bo nie wiem czy da się tak) bo może przepełnia się jakiś stos ... 3)...

    Mikrokontrolery AVR   23 Paź 2010 22:14 Odpowiedzi: 6    Wyświetleń: 3880
  • [Bascom] Attiny 13 - mała rzecz duży kłopot, sterowanie LED

    Odkopię temat bo mam problem też z Attiny13. Problem jest następujący: po skonfigurowaniu timera0 jaki licznik zaczyna on zliczać kolejne takty procesora z określonym preskalerem. Jeżeli skonfigurujesz którykolwiek Timer (w dowolnym AVR) jako licznik (COUNTER) to przestaje on zliczać takty processora, a oczekuje na taktowanie zewnętrzne na odpowiedni...

    Mikrokontrolery AVR   24 Lip 2011 22:59 Odpowiedzi: 40    Wyświetleń: 7968
  • [Atmega16] BASCOM szybki obrotomierz motocyklowy na INT0

    Czy ten kod nadał by się do zliczania impulsów z INT0, ewentualnie co trzeba by zmienić ? Nie. Po pierwsze: Nie możesz liczyć na dokładny pomiar czasu stosując Start/Stop Timer przy użyciu prescalera o wartości różnej od jeden. Wartość timera może zostać incrementowana już po jednym ticku zegara albo nawet po 100; 150; 193 itd. tickach zegara taktującego...

    Mikrokontrolery AVR   24 Lip 2011 11:23 Odpowiedzi: 95    Wyświetleń: 17493
  • [BASCOM] - Sterownik C.O. tryb Manual/Auto jak zrobić Menu

    Tak się dzieje jak stosujesz instrukcje Gosub, program idzie do procedury a tam znowu stosujesz Gosub i w tej na koncu nieszczęsne Retrurn. Program idzie w "krzaki" bo przepełniasz stosy i nadpisujesz w pamięci Ram zmienne. Poczytaj o procedurach i funkcjach w pomocy Bascoma, użyj Declare Sub a potem Sub: i END SUB. Stosuj też deklaracje ramki i stosu...

    Mikrokontrolery Początkujący   28 Kwi 2013 11:23 Odpowiedzi: 31    Wyświetleń: 9453
  • BASCOM - Atmega16 4MHz: Jak skonfigurować timer1 do przerwań co 100ms?

    Super dzieki, faktycznie teraz troszke lepiej :-) Dobrze rozumiem? I teraz stosując taka wersję: Poprawiłeś tylko 'syntax' , czyli sposób wpisywania wartośc początkowej do rejestu timera. Rachunek zliczania czasu masz jednak błędny !!!! Prz tym taktowaniu (4 MHz) nie masz żadnej możliwości odmierzenia 100ms przez Timer2; nawet przy zastosowaniu maxymalnego...

    Mikrokontrolery Początkujący   25 Lut 2014 16:13 Odpowiedzi: 12    Wyświetleń: 1641
  • ATmega32 - Odmierzanie 1 sekundy a zmiana rezonatora

    Load Timer0 = 144 ............... Jeśli tak napiszę kod w Bascom przy zastosowaniu kwarcu 7.3728 MHz to przerwanie odmierz_1s będzie faktycznie co 1 jedną sekundę? Tak jak to miało miejsce w przypadku kwarcu 8000000 MHz (patrz mój pierwszy post w temacie) Minął ponad rok od założenia tego tematu, ale teraz muszę to już zastosować w praktyce i w końcu...

    Mikrokontrolery AVR   22 Lis 2014 22:59 Odpowiedzi: 17    Wyświetleń: 2649
  • [Atmega32][Bascom] - Odtwarzacz *.wav z panelem dotykowym.

    Tak w ogóle to właśnie zauważyłem że masz błąd w podprogramie Odtwarzacz: [syntax=basic4gl]Odtwarzacz: ... ... ... Gosub Odtwarzacz Return[/syntax] Chodzi o to że ta procedura ciągle wywołuje samą siebie (rekurencja). I przepełnia stos. Tam na dole trzeba po prostu wywalić: [syntax=basic4gl]Gosub Odtwarzacz[/syntax] EDIT. No i drugi ogromny błąd: W...

    Mikrokontrolery Początkujący   12 Paź 2012 18:37 Odpowiedzi: 34    Wyświetleń: 4917
  • Jak ograniczyć zliczanie impulsów enkodera w Bascom na Atmega?

    Nie składam winy na bascom tylko proszę o pomoc kolegów. Problemu z zliczaniem impulsów już nie mam. Napisałem program lecz jest on napisany fatalnie dlatego że nie mam pomysłu w jaki inny sposób go napisać. Może koledzy wskażą mi jak to napisać lepiej dlatego że stos mi się przepełnia i program "wariuje". [syntax=basic4gl]$crystal = 8000000 'Deklaracja...

    Mikrokontrolery AVR   08 Mar 2014 20:32 Odpowiedzi: 11    Wyświetleń: 2229