assembler pętla

Znaleziono około 222 wyników dla: assembler pętla
  • [assembler] [assembler][masm] Pętla z funkcją read w programie wypisującym tekst

    ecx jest rejestrem, nie zmienna lokalna. Jesli wolana funkcja korzysta z tego rejestru (a moge sie zalozyc, ze tak jest), to Twoja petla sie rozsypie.

    Programowanie Początkujący   26 Mar 2011 14:17 Odpowiedzi: 2    Wyświetleń: 1667
  • [prosba] Assembler: Pętla zmieniająca bit P1.0 co 4 cykle zegarowe, 8051 LED wąż

    witam ! potrzebuje pomocy z tematem ktory mam do opracowania ale nie mam najbledszego pojecia jak sobie z tym poradzic. pomyslalem ze tutaj znajde napewno kogos kto znalby odpowiedzi na ponizsze pytnia. oto one: 1) Napisz w asemblerze pętlę, w której będzie zmieniany bit 0 portu P1 (P1.0) na przeciwny dokładnie co 4 cykle zegarowe. Ten fragment programu...

    Mikrokontrolery   22 Sty 2006 23:14 Odpowiedzi: 1    Wyświetleń: 1220
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • Jak rozwiązać to zadanie? Programowanie w assemblerze.

    Witam potrzebuje pomocy z zadanie. Program ma dzielić 2 liczby z a i b. Nie mam pomysłu jak to zrocić by nie podawać wartości c [syntax=assembler] POB a pętla: SOM koniec POB c ŁAD b ODE c POB a DOD Jeden ŁAD a SOZ pętla koniec: POB c STP a: RST 12 b: RST 24 c: RST 2 Jeden: RST 1[/syntax][/code]

    Programowanie Początkujący   22 Sty 2016 14:42 Odpowiedzi: 3    Wyświetleń: 840
  • REKLAMA
  • [Assembler] Znaczenie symbolu $ w assemblerze - jak działa w pętli DJNZ?

    Witam. W A'51 (to zależy od wersji assemblera) oznacza adres pod jakim znajduje sie dany rozkaz !! W rozkazach skoku oznacz on skok do "samego siebie". przyklad podany przez ciebie to poprostu pętla opóźniająca (zatrzymuje program na jakis czas) ale możesz spotkać się z tym przy innych rozkazach skoku!! np. sjmp $ - służy do zatrymania programu "bez...

    Mikrokontrolery   25 Lis 2004 22:19 Odpowiedzi: 5    Wyświetleń: 2854
  • Assembler 80x86 - konwersja liczb na system szesnastkowy U2

    Po pierwsze, to musiałbyś zrobić wczytywanie liczb, a nie cyfr. Czyli pętla odczytująca cyfry i wynik zapisująca do rejestru/zmiennej. Potem wyświetlanie też najlepiej oprzeć na pętli, bo powtarzanie kodu jest po prostu bez sensu. Wygodnym tutaj może być użycie funkcji ROL w celu przerzucenia 4 najstarszych bitów na najmłodsze pozycje i wymnożenie przez...

    Programowanie   05 Lis 2018 20:12 Odpowiedzi: 28    Wyświetleń: 3774
  • REKLAMA
  • Proszę o sprawdzenie poprawności programu (assembler)

    ok sorry może się trochę rozszalałem ale denerwują mnie strasznie kolesie szukający tu zaliczeń. Tak więc w asemblerze dobrze jeste przede wszystkim porządnie przygotować sobie strukturę programu: początek: .cseg ; .org 0 ; rjmp RESET ; .org INT0addr ; reti ; .org INT1addr ; reti .org OVF2addr reti .org OVF1addr reti .org OVF0addr ; reti .org URXCaddr...

    Mikrokontrolery AVR   31 Gru 2008 11:25 Odpowiedzi: 21    Wyświetleń: 2628
  • Zrozumienie kodu assemblera dla 8051: zawartość akumulatora po programach

    a) A=1 movA,#1b Do akumulatora A wpisujesz wartość 1 (wartość binarna 00000001b), pozostałe instrukcje nie wpływają na wartość akumulatora. b) A=0 movA,P2 Do akumulatora A wpisujesz wartość z portu P2 (port P2 do masy – co daje wartość 00000000b) c) A=2 movA, #2h Ostatnią wartością wpisaną do akumulatora A jest 2 (wartość szesnastkowa 02h) d)...

    Mikrokontrolery   20 Maj 2012 11:04 Odpowiedzi: 7    Wyświetleń: 6801
  • Materiały do nauki pętli w Assemblerze dla mikrokontrolera 8051

    Witam, czy znacie może jakieś ciekawe materiały które w sposób wyczerpujący omawiają pętle w Assemblerze dla mikrokontrolera 8051. Napisałem już kilka prostych programów realizujących poszczególne rodzaje pętli,ale na pewno jest coś czego nie potrafiłbym zrobić. Z góry dziękuję za pomoc

    Początkujący Elektronicy   25 Paź 2019 19:12 Odpowiedzi: 3    Wyświetleń: 279
  • GPT4.0 czyli drugi wywiad ze sztuczną inteligencją ElektrodaBot 4.0 - zapraszam do zadawania pytań!

    Daj mi kod dla komputera Commodore C64 na cykliczną zmianę koloru ramki obrazu, osobno w języku basic i osobno w assemblerze Oczywiście! Oto prosty kod w języku BASIC i assemblerze dla komputera Commodore C64, który cyklicznie zmienia kolor ramki obrazu. **BASIC:** ``` 10 FOR I = 0 TO 15 20 POKE 53280, I 30 FOR J = 1 TO 1000 : NEXT J 40 NEXT I 50 GOTO...

    Tematy tygodnia   03 Kwi 2023 09:12 Odpowiedzi: 927    Wyświetleń: 22794
  • REKLAMA
  • Jak skrócić program w assemblerze do zapalania segmentów za pomocą pętli?

    Napisałem że mój kod jest napisany w x86 żeby pokazać ideę jak ma wyglądać pętla, co za problem wziąć list instruction do 8051 i poszukać odpowiedników do x86?

    Początkujący Elektronicy   24 Cze 2014 13:44 Odpowiedzi: 11    Wyświetleń: 1254
  • Mikrokomputer COBRA 1

    Na razie po staremu chciałbym zaprezentować uproszczoną grę TETRIS napisaną całkowicie pod assemblerem. Zawiera 16 losowo wybieranych kształtów klocków, które można obracać co 90 stopni w prawo lub lewo przez czas 20 sekund i przesuwać w prawo lub lewo przez kolejne 20 sekund. Podczas spadania nie ma luż możliwości korekcji upadku klocka. Jest to więc...

    DIY Konstrukcje   11 Lip 2025 09:36 Odpowiedzi: 2005    Wyświetleń: 276975
  • Assembler 8086 - Jak podzielić mantysy liczb double?

    Jedyny problem - to długość dzielnika. z tego powodu praktycznie nie możesz użyć dzielenia stałopozycyjnego i musisz zrobić je na piechotę, czyli przez przesuwanie i odejmowanie - pętla iterowana max. 53 razy. Przed dzieleniem do manytsy musisz dopisać bit części całkowitej. Na końcu czeka Cię jeszcze korekcja wykładnika.

    Mikrokontrolery   09 Mar 2013 21:10 Odpowiedzi: 8    Wyświetleń: 1695
  • AVR Assembler Ściemniacz - prośba o sprawdzenie kodu

    Możesz zbudować zewnętrzny zegar 4MHZ na bramce cmos i podać go do Attiny13 lub zamienić pętle opóźniające , jeśli się da oczywiście . Przy zegarze 4.8 będziesz miał do zliczenia o "kilka impulsów" więcej aby uzyskać ten sam czas. Przykładowo w programie autora jest : ldilicz1,0x32; początkowa wartość p1:ldilicz2,0x3B; odliczenie 2.25 msek p2:declicz2...

    Mikrokontrolery AVR   31 Sty 2010 20:38 Odpowiedzi: 16    Wyświetleń: 3041
  • potrzebna wstawka assemblerowa dla przerwania ATmega16

    nie jestem pewien czy w pętli dobrze odczytam enkoder, bo muszę wykrywać zbocze opadające ,a nie konkretny stan styków, poza tym w innych pętlach w programie też czytam enkoder łącznie z wyświetlaniem lcd ,ale już przy wolnych obrotach, chciałbym się głównie dowiedzieć co w bascomie przymula to liczenie, skoro jest tam niewiele linijek programu.

    Mikrokontrolery AVR   29 Maj 2009 09:08 Odpowiedzi: 34    Wyświetleń: 3276
  • Błąd w pętli opóźniającej kodu assemblera 51 - opóźnienia.

    lepiej: [syntax=asm] START: setb p1.7 mov r7,#X djzn r7,$ clr p1.7 mov r7,#X djnz r7,$ sjmp START [/syntax] Opóźnienie 1+1+2*x Swoją drogę C jest bardzo dobrym językiem ale nie na 51 niestety. Architektura nie jest zoptymalizowana pod kątem programowania w C.[/code]

    Mikrokontrolery   12 Cze 2012 10:47 Odpowiedzi: 6    Wyświetleń: 2204
  • [Attiny2313][AVRStudio] Komunikacja USI/SPI + żyroskop ADIS16100

    Trochę metodą prób i błądów udało mi się zrobić działający kod. [syntax=c] // Sotware SPI assmbler 1 ver 2 well working void Spi_8_bittransfer(unsigned char data) { asm volatile( \ "ldi r24, 8 \n\t"\ "LOOP%=: \n\t"\ "cbi 0x18, 2\n\t"\ "cbi 0x18, 1\n\t"\ "rol %0 \n\t"\ "brcc ZERO%=\n\t"\ "sbi 0x18, 1\n\t"\ "ZERO%=: \n\t"\ "sbi 0x18, 2\n\t"\ "dec r24...

    Mikrokontrolery AVR   16 Lut 2012 00:08 Odpowiedzi: 15    Wyświetleń: 4202
  • DSM 51 - Assembler: Jak działa opóźnienie z DJNZ w kodzie?

    LED-MASK EQU 10000000B LJMP START ORG 100H START: LOOP: ; początek pętli LOOP XRL P1 ,#LED-MASK ; funkcja exor na porcie P1 MOV A ,#10 ; tu przepisanie do A liczby 10 nic nie wnosi w pętli LCALL OPOZ LJMP LOOP ; koniec pętli LOOP OPOZ: ;poczatek petli opoznienia MOV R0 ,#0 MOV R1 ,#0 MOV R2 ,#0 X: DJNZ R0 ,X ; odejmuje od R0 liczbę 1 i sprawdza czy...

    Programowanie Początkujący   04 Paź 2016 23:04 Odpowiedzi: 2    Wyświetleń: 1983
  • Assembler a C++ czyli wybór szybciej czy taniej...

    Wiem że temat już nieświeży i że odejdę od ostatniego wątku, ale jak zobaczyłem to: dla bankow nie dosc ze pisze sie w C++ to jeszcze w kompilatorze M$ to po salwie śmiechu i wiążącej się z tym upadkiem z krzesła, naszła mnie pewna konsternacja i głęboka nadzieja że autorka postu tylko żartowała. Dziękuję za uwagę. EDIT: Jako że trochę późno zauważyłem...

    Mikrokontrolery AVR   08 Wrz 2010 14:25 Odpowiedzi: 144    Wyświetleń: 21130
  • Jak zrealizować przeskakiwanie między pętlami w Bascomie za pomocą przerwań?

    mozna tez inaczej, ale twoje bascomowe petle musialy by byc calkowicei assemblerowe metoda jest bardzo brutalna ale jednoczesnie bardzo efektywna.. polega na modyfikowaniu stosu w przerwaniu... powiedzmy ze jestes gdzies w drugiej petli i wystapilo przerwanie - przerwanie latwo "dowie sie" gdzie jest pc sprawdzajac adres powrotu, teraz tabelka gdzies...

    Mikrokontrolery   07 Wrz 2003 01:25 Odpowiedzi: 12    Wyświetleń: 1709
  • [ADUC842] [ADUC842][C] - Zawieszanie się uC przy jednoczesnym wysyłaniu danych RS

    Nie wiem jak to działa gdy kasujesz TI w przerwaniu. To już poziom assemblera czy wcześniej sprawdzasz warunek pętli while(TI==0) {}; czy też w obsłudze przerwania jest kasowana flaga TI. Włącz debugger w keilu ustaw breakpoint w przerwaniu i zobacz jak program działa. Sądze że skasowanie linii "if (TI) { TI=0; }" rozwiąże problem :) Korzystanie z funkcji...

    Mikrokontrolery   17 Kwi 2009 20:18 Odpowiedzi: 3    Wyświetleń: 1511
  • [SDCC] Pętla w AT89S8252 z SDCC - tylko 250 iteracji zamiast 504

    Zobacz co na to assembler wygenerowany z tego kompilatora.Nigdy nie spotkalem sie z takim przypadkiem.Byc moze jest to bug kompilatora (kilka w SDCC juz sam zglaszalem).Sprobuj tez innej petli np while i zobacz co sie stanie.

    Mikrokontrolery   25 Kwi 2006 23:39 Odpowiedzi: 7    Wyświetleń: 960
  • Sprawdzony kompilator assemblera do programowania AT89C4051 - polecane narzędzia

    Wielkie dzięki, A w MIDE-51 można pisać program w C i skompilować na hex zeby działał na tym atmelu? Bardzo ułatwiłaby mi napisanie programu pętla 'if' której nie ma w assemblerze i ciężko mi bez niej.

    Mikrokontrolery   24 Mar 2008 09:42 Odpowiedzi: 5    Wyświetleń: 1055
  • mik. 8051-prośba o pomoc w poprawieniu programu(assembler)

    Po co przekształcać na wartość, wystarczy porównanie leksykograficzne. Napisz odpowiednik funkcji strcmp, która porównuje 2 napisy kończące się spacją lub bajtem 0. Jeśli p1 i p2 to wskaźniki na znaki, to: p1 = początek napisu p2 = początek napisu pętla: pomiń_nie_litery(p2) jeśli (at)p2 == 0 -> koniec tmp = strcmp(p1, p2) jeśli...

    Mikrokontrolery   11 Sty 2010 19:35 Odpowiedzi: 9    Wyświetleń: 1915
  • Jak losowo wybrać podprogram dla diod w AtMega16 w Assemblerze?

    Czy to musi być assembler? Wbrew pozorom napisanie tego w języku wyższego poziomu może być znacznie prostsze, zwłaszcza dla początkującego :-) Osobiście uważam, że łatwiej jest się nauczyć podstaw C czy BASCOM'a na tyle ile się potrzebuje, niż nauczyć się pisać dobry i niezawodny kod w asemblerze. //Edit Poniżej, jak to by mogło wyglądać w C: //jakie...

    Mikrokontrolery AVR   18 Kwi 2010 01:29 Odpowiedzi: 8    Wyświetleń: 1468
  • Assembler 8051: Jak zabezpieczyć dzielenie 16-bitowe przed zerem?

    Nie od parady był ten uśmieszek. Dlaczego? Cóż kolega stworzył bardzo mądry programik :D No to wręcz przeciwnie. Gorszy. Dlatego napisałem że nawet on się nie zawiesza. Chodzi mi o to że klasyczny algorytm dzielenia to zwykła pętla przesuwająca bity. Nawet jak dzielna będzie równa 0 to pętla powinna się wykonać tyle samo razy co zawsze, w przypadku...

    Mikrokontrolery   19 Mar 2010 19:22 Odpowiedzi: 10    Wyświetleń: 3221
  • edsim51 -assembler - sterowanie motorem za pomocą klawiatury

    Witam, zmagam się z napisaniem programu, który będzie sterował motorem za pomocą klawiatury, cyfry odpowiadają liczbie obrotów, zaś gwiazdka i krzyżyk za kierunek obrotów. Wyobrażam sobie napisanie tego porogramu w nastepujący sposób. Pierwsza część programu wyszukuje, czy któryś z klawiszy został wciśniety, druga część to pętla, w której jeżeli gwiazdka...

    Mikrokontrolery   21 Sie 2012 16:05 Odpowiedzi: 1    Wyświetleń: 2541
  • Odliczanie sekund na wyświetlaczu 7-segmentowym w assemblerze

    Co dokładnie sekundę? Mniej więcej co sekundę? Tą pierwszą opcję trudno bez przerwań zrealizować. Drugą to robisz sobie pętlę która realizuje się w mniej więcej sekundę. Przecież w tytule wyraźnie jest napisane z timerami , po co więc pętla "mniej więcej". Trzeba w głównej pętli sprawdzać stan znacznika timera i podejmować odpowiednie działanie. Szczegóły...

    Mikrokontrolery Początkujący   19 Lis 2019 23:14 Odpowiedzi: 7    Wyświetleń: 408
  • Zabezpieczenie przed uszkodzeniem pamięci EEPROM w mikrokontrolerach ATMega podczas zakłóceń EMC

    WDT w programie jest włączony i działa bardzo dobrze, ale do znalezienia usterki trzeba było go wyłączyć. Program jest napisany w Bascomie. Pętla, o której mowa, jest w bibliotece obsługującej wyświetlacz. Nie ja pisałem tę bibliotekę, ja nie znam assemblera. Mi wystarczy dołożenie licznika obrotów tej pętli i wyjście po jego przekroczeniu. Transmisja...

    Programowanie   12 Gru 2023 01:07 Odpowiedzi: 17    Wyświetleń: 666
  • Jak zmienić stan pinu na przeciwny w Arduino IDE? Analogia do Toggle w Bascomie

    Bitwait S1, set Przepisz proszę na CC++. Zakładam, że przez "Bitwait S1, set" masz na myśli instrukcję, która czeka na ustawienie (set) konkretnej wartości bitu, np. oczekiwanie na to, aż przycisk (oznaczony jako S1) zostanie naciśnięty. W językach niskiego poziomu, takich jak assembler, operacje na bitach są bardzo często wykorzystywane...

    Arduino   18 Mar 2025 07:57 Odpowiedzi: 54    Wyświetleń: 1800
  • Podciąganie wewnętrznych rezystorów w assemblerze

    Bez wątpienia na wyjściu uzyskasz stan wysoki. Jeśli chcesz ustawić pin jako wejście z podciąganiem, to kasujesz odpowiedni bit DDRB (cbi) ale w PORTB ustawiasz odpowiedni bit (sbi). ps. brakuje pętli nieskończonej na końcu.

    Mikrokontrolery   03 Lis 2008 01:33 Odpowiedzi: 10    Wyświetleń: 1122
  • Prośba o sprawdzenie kodu w assemblerze AVR do generowania BCD na wyjściu

    Wg mnie przydałaby się jakaś pętla opóźniająca bo efektów pracy tego programu na procesorze chyba nie zauważysz. Chyba że analizator stanów logicznych podłączysz.

    Mikrokontrolery   04 Sty 2007 22:58 Odpowiedzi: 3    Wyświetleń: 2056
  • Jak wyliczyć dokładne opóźnienie 500ms dla ATMEGA128 16MHz w GCC?

    Jak wyliczyć (Wykonać) dokładnie opóźnienie np. 500ms Nie chcę tego robić na timerze ! Chodzi mi o to jak wyznaczyć taką liczbę cykli procesora które zajmie pętla for tak aby wykonała się dokładnie w 500ms Do dokładnego odmierzania czasu służą timery. Jeżeli nie chcesz, to masz złe podejście. Nie chodzi mi o czysty assembler tylko o wykonywanie pętli...

    Mikrokontrolery   15 Sty 2008 21:59 Odpowiedzi: 13    Wyświetleń: 1865
  • Jak ustawić opóźnienie 2s na mikrokontrolerze 89C2051?

    No właśnie może Wam się to wydać głupie, ale kumam assemblera nawet trochę ale pętle to moja zgroza :( Nie mówie że jestem specem ale swoje wiem. A w jaki sposób można wydłużać i skracać ten czas? I czemu zeruję rejestr np. R2?

    Mikrokontrolery   16 Lis 2003 22:59 Odpowiedzi: 9    Wyświetleń: 1491
  • 8051 - Wyświetlacz 4 cyfrowy 7 segmentowy + klawiatura + ASSEMBLER

    Właśnie jeszcze nie ogarniam przerwań - domyślam się o co chodzi ale jak się za to zabrać? Bo jak próbowałem zrobić "warunkami" to zdarzało się tak, że gdy raz nacisnąłem jeden klawisz np. "1" to na wszystkich segmentach pojawiało mi się 1 - domyślałem się, że pętla tak szybko za działa, że to moje jedno klikniecie odebrała jako 4 kliknięcia - wtedy...

    Mikrokontrolery   16 Sty 2014 20:40 Odpowiedzi: 2    Wyświetleń: 2460
  • Jaki język programowania wybrać po assemblerze dla AVR?

    W praktyce wychodzi, że znajomość asemblera + języka wyższego poziomu się opłaca. Ja w tej chwili dziobię głównie w C, ale do asemblera też sięgam. Najczęściej w dwóch przypadkach: 1. trzeba sprawdzić jaki kod generuje kompilator. AVR GCC na przykład lubi mi namieszać w pętlach opóźniających. W takich przypadkach bardzo przydaje się umiejętność czytania...

    Mikrokontrolery   17 Sie 2005 23:15 Odpowiedzi: 9    Wyświetleń: 2163
  • Jak zwiększyć jasność wyświetlaczy siedmiosegmentowych 8051 w assemblerze?

    Prowadzącemu być może chodziło o sterownaie wyświetlaczy w przerwaniach, Ty zrobiłeś to na pętlach opóżniających. Akurat te dwa klawisze możesz sprawdzać właśnie w tych przerwaniach obsługujących wyświetlacz albo całkiem śmiało po za przerwaniami. Bez sensu jest używać aż dwóch przerwań. Jeśli już, to podepnij klawisze pod jedno wejscie INT. DELAY:...

    Mikrokontrolery   18 Sty 2007 20:59 Odpowiedzi: 23    Wyświetleń: 3059
  • Pico Blaze (assembler) - jak zczytać stany wejść

    A mógłbyś mi wytłumaczyć znaczenie IN s0, leds , bo nie rozumiem tego i dalej nie mogę tego poskładać żeby działało. PBlazeIDE to program, na którym mam to wykonać, taki sobie wybrał wykładowca i jeżeli nie warto zagłębiać się w ten mikrokontroler to już nie będę ściągał innych programów. Dodano po 6 NIE!!, przepraszam, już mam [syntax=asm]leds dsout...

    Mikrokontrolery Początkujący   19 Lis 2014 14:20 Odpowiedzi: 2    Wyświetleń: 1047
  • LPC17xx NXP - ile cykli zegarowych trwa wykonanie pętli FOR?

    z tego co ostatnio liczyłem to taka pętla: Dodano po 1 A no i bez nop'a kompilator przy pewnych ustawieniach wytnie Tobie całą pętlę.

    Mikrokontrolery ARM   20 Maj 2011 10:03 Odpowiedzi: 9    Wyświetleń: 2183
  • [assembler] Migające znaki na wyświetlaczu 8051 - jak to zrobić?

    LJMP START ORG 100H START: LCALL LCD_CLR MOV A,#'D' PUSH ACC LCALL WRITE_DATA MOV A,#'=' LCALL WRITE_DATA MOV A,#'D' ; domyślam się, że tą linijkę trza dodać POP ACC LCALL WRITE_HEX CZEKAJ: ; pętla opóźniająca, znak się wyświetlił, chwile czekamy MOV A, #100 NOP NOP NOP DEC A JNZ CZEKAJ LCALL LCD_CLR ; pochwili czyścimy MOV A,#'P' ; i wyświetlamy...

    Programowanie   10 Mar 2006 13:09 Odpowiedzi: 1    Wyświetleń: 2023
  • Assembler - znaczenie *(_BYTE *)v5++ w kodzie programu

    v5 wygląda na wskaźnik na tablicę bajtowych elementów, które są indeksami dla tablicy dword_40F458 po wykonaniu operacji xor z bajtową zmienną i. Po każdym obrocie pętli wskaźnik ten jest przesuwany na następny element tablicy (v5++).

    Programowanie   11 Sie 2013 00:03 Odpowiedzi: 2    Wyświetleń: 816
  • Assembler AVR ATmega 8515 - Zliczanie bitów na portach A i B, wynik na C BCD

    Musze napisać program (opisać go komentarzami, napisać schemat blokowy a także pokazać co robi ten program) Prosze o pomoc! Z góry dziekuję! Treść projektu: Napisać program zliczający zapalone bity na portach A i B i wyprowadzający liczbę zapalonych bitów zakodowaną w formacie BCD na port C kolega z grupy wysłał mi ten program co robiliśmy na zajęciach...

    Mikrokontrolery   25 Lis 2007 09:48 Odpowiedzi: 8    Wyświetleń: 1589
  • [ATMEGA][ASEMBLER] - Długa pętla w asemblerze i dziwna matematyka.

    Może nie stricte z tematem, ale miałem podobną sytuację na początku swojej zabawy z mikrokontrolerami. Pisałem programy w bascomie na 51 i na Avr i dla przyśpieszenia działania robiłem wstawki w asm. Po pewnym czasie moje programy wyglądały tak [syntax=c] $ASM Kod programu $ENDASM [/syntax] Wtedy doszedłem do wniosku że używanie bascoma nie ma sensu...

    Mikrokontrolery AVR   11 Paź 2013 20:25 Odpowiedzi: 22    Wyświetleń: 3678
  • Assembler - Wczytanie liczby od 0 do 255 i sprawdzenie podzielności przez 7

    (at) JacekCz Jak tak się mądrzysz i peszysz to wstaw lepszą wersję CPP i Assembler ;] Ja się nie peszę (bo tak słowa użyłeś). Kryształowa kula i Pierwotny Pytający milczy, jaki assembler jest oczekiwany w szkole Pytającego. Cros kompilacja z C/CPP -> ASM jest totalnie bez sensu ze wszystkich względów (dydaktycznych, technicznych itd). Ostatni prawdziwy...

    Programowanie Początkujący   25 Sie 2016 09:31 Odpowiedzi: 8    Wyświetleń: 2631
  • DDS z wykorzystaniem ATMega88 i drabinki R-2R

    Z wykorzystaniem języka assembler można zredukować niezbędną liczbę cykli zegara do 7, co spowoduje zwiększenie liczby próbek do 15 przy 150 kHz. Nie jest to zbyt wiele, ale różnica w wyglądzie przebiegu jest wyraźna. W jednym z projektów generowałem przebieg sinusoidalny z wykorzystaniem drabinki R-2R i ATTiny 2313. Udało mi się zejść do generowania...

    Artykuły   09 Gru 2012 15:58 Odpowiedzi: 5    Wyświetleń: 24825
  • mega32 - Jak tworzyć pętle w języku ASM zamiast w C?

    http://www.avrbeginners.net/ a dalej: AVR Assembler --> Conditional Branches / Loops

    Mikrokontrolery Początkujący   17 Mar 2013 23:43 Odpowiedzi: 19    Wyświetleń: 2079
  • Generacja PWM w EdSim51 z Timer0 dla 8051 - jak ustawić parametry?

    Dla przebiegu o okresie 30 ms i współczynniku wypełnienia 20% w trybie przerwania [syntax=assembler] ORG 0 ; wektor zerowania JMP main ; bezwarunkowo skocz poza obszar wektorów przerwań ORG 000BH ; wektor przerwania po przepełnieniu timer0 CALL podpr RETI ; powrót z przerwania ORG 0030H ; początek programu głównego main: CLR P0.7 ; wlaczenie oscyloskopu...

    Mikrokontrolery Początkujący   11 Cze 2020 10:03 Odpowiedzi: 14    Wyświetleń: 1119
  • RC5 na 89s8252, jak zabrać się za pisanie programu?

    Zacznij od robienia opóźnień pętlami i w ogóle od obycia się trochę z assemblerem, pomigaj na początek LEDami, a jak już nabierzesz trochę wprawy, to wtedy zabierz się za obsługę liczników / timerów i pozostałych peryferiow. Najlepsi programiści kiedyś od tego zaczynali... Porywanie się na początku za coś bardziej skomplikowanego tylko Cię zniechęci....

    Mikrokontrolery   03 Lis 2006 23:01 Odpowiedzi: 1    Wyświetleń: 1109
  • Pętla for w #define w c#. Jak przerobić kod na C#?

    Eee i w czym ten język jest lepszy od C++ że go tyle się wałkuje... I java i c# i assembler a c++ to jakiś niepotrzebny czy co? I powiedzcie mi jeszcze, że nie da się używać bibliotek z C++, tzn. chodzi o coś takiego potrzebuje w C# użyć funkcji fillrectattr() z newconio: void fillrectattr(WORD attr, int xb, int yb, int xe, int ye) { CONSOLE_SCREEN_BUFFER_INFO...

    Programowanie Początkujący   25 Paź 2011 18:14 Odpowiedzi: 14    Wyświetleń: 2782
  • Bascom ATtiny2313: sterowanie LED i trybami przycisku – pętla nie wraca do początku

    Po co stosować tu przerwanie? Kardynalny błąd to stosowanie polceceń opóźnień w przerwaniach. W tym programie problem tkwi w: If Przycisk = 0 Then Waitms 100 If Przycisk = 0 Then Incr Sekwencja If Sekwencja = 0 Then Incr Sekwencja If Sekwencja = 4 Then Sekwencja = 1 End If End If End If End If Popraw na: If Przycisk = 0 Then Waitms 100 If Przycisk =...

    Mikrokontrolery   08 Mar 2008 19:05 Odpowiedzi: 2    Wyświetleń: 1733
  • Obsługa przerwań w AT90s2313 - migająca dioda co 1 sekundę w assemblerze

    to proste ; specjalnie dla urzytkowników forum elektroda :)Eagle ; przerwanie t0 z czestoliwoscą 1Hz ; dla kwarcu 4 MHz ; uC = 89s2313 .include "2313def.inc" ; definicje rejestrów ; trochę teorii ; 1 sek przy oscylatorze 4 Mhz to 4 000 000 cykle timer 0 jest 8 bitowy ; wiec 4 000 000 / 256 = 15 625 ; sprawdzamy czy prescalerem możemy coś zdziałać podział...

    Mikrokontrolery   15 Paź 2003 15:21 Odpowiedzi: 10    Wyświetleń: 2898
  • Jak obliczyć pierwiastek kwadratowy z liczby 16-bitowej w assemblerze 8051?

    Przy dłuższych liczbach bardziej opłaca się użyć agorytmu z przesuwaniem i dodawaniem a działa on tak (4 bajty x 4 bajty, wynik 8 bajtów): Przygotuj 8 bajtowy rejestr komórek w pamięci na wynik, w postaci: |Mnozna|00000000h| Gdzie 4 starsze bajty to mnożna a cztery młodsze to zera. Teraz wykonujesz pętlę 32 razy (4 bajty) Przesuwasz 8 bajtowy wynik...

    Mikrokontrolery   29 Lut 2004 10:51 Odpowiedzi: 19    Wyświetleń: 2648
  • Jak napisać program w Assemblerze na 8051 odliczający 99-0 z napisem KONIEC?

    Sczerze to dalej nie rozumiem> Niżej jest kod programu który napisałem, odlicza od 9-0 i wyświetla napis "koniec".Może komus uda się go tak zmodyfikowac żeby odliczał od 99 z góry dziękuję. SEG_ON EQUP1.6;włączenie wyświetlacza 7-segm. ;Stałe używane w programie ZEROEQU03FH ONEEQU006H ;kod cyfry 1 TWOEQU05BH ;kod cyfry 2 THREEEQU04FH ;kod cyfry 3...

    Mikrokontrolery   16 Kwi 2008 21:24 Odpowiedzi: 8    Wyświetleń: 2264
  • [Atmeag8] [Atmeag8][asembler] Czy rejestr R19 jest poprawnie użyty w pętli?

    Standardowa pętla zlliczająca X razy w assemblerze AVR to: ldi R16, X !Loop: nop nop nop nop dec R16 brne Loop Tylko że w Twoim przypadku trzeba zliczać o jeden raz więcej.

    Mikrokontrolery   12 Mar 2009 00:07 Odpowiedzi: 10    Wyświetleń: 1667
  • Czas przesyłu bajtu przez SPI przy zegarze 8MHz i podzielniku /2?

    Witam kolegów. Chciałbym, żeby ktoś pomógł mi zrozumieć skąd się bierze i ile jest cykli podczas wysyłania/odbierania jednego bajtu przez SPI? Z tego co zrozumiałem to przy podzielniku SPI / 2, dla 8MHz, powinienem móc wysłać trochę poniżej 500kB/s. Zegar SPI ustawiłem na Fcpu / 2. Robię: [syntax=c]SPDR = 0; while(!SPSR & (1<<SPIF)); [/syntax]...

    Mikrokontrolery AVR   25 Lip 2011 21:20 Odpowiedzi: 4    Wyświetleń: 1570
  • Jak napisać program w assemblerze do przesuwania napisu na LCD 2x16?

    W załączniku - przykład z dokumentacji DSM'a (Gałka). Wystarczy wyslac na wyswietlacz tekst, a potem wysylac zadanie przewiniecia w pętli.

    Programowanie   30 Lis 2006 13:02 Odpowiedzi: 5    Wyświetleń: 2623
  • [Asembler] Jak napisać program w asemblerze do dodawania 3 liczb 8-bitowych na 8051?

    Teraz już sprawy idą w lepszym kierunku. Problematyczny jest jeszcze sposób deklaracji zmiennych w programie. Proponuję pobrać z internetu dowolny assembler na 8051 (np. ASEM-51), wtedy wszystkie błędy składniowe można na bieżąco sprawdzać. Struktura programu (dowolnego) może wyglądać np. tak: - deklaracja zmiennych i stałych, - instrukcja skoku do...

    Mikrokontrolery   26 Cze 2010 22:23 Odpowiedzi: 11    Wyświetleń: 6381
  • STM32F4 Discovery - Dziwna częstotliwość działania

    Mnóstwo instrukcji assemblera nie może być wykonanych w jednym cyklu zegara... w sumie wszystkie wykonywane są w tej samej liczbie i zależy ona od PIPELINE'u... pobranie instrukcji, dekodowanie, wykonanie, zapis do pamieci, akumulacja wyniku. To jest taki najprostszy pipeline i umożliwia on właśnie wykonywanie instrukcji w "jednym" cyklu zegara.......

    Mikrokontrolery ARM   05 Wrz 2013 14:41 Odpowiedzi: 20    Wyświetleń: 3741
  • Jak zrealizować komunikację RS232 między dwoma 8051 na płytce Easy8051 v6?

    >dondu Autor tematu w pierwszym poście nic nie pisał o przesyłaniu komend assemblera a jedynie w następnym poście potwierdził sugestię Piotrus_999 która w tym przypadku jest błędna a autor wątku przyjął to za dobra monetę. Piotrus_999 nie wie jak jest skonfigurowany moduł Easy8051 więc pianie o rozkazie MOV P1,P2 nie ma żadnych podstaw merytorycznych....

    Mikrokontrolery Pozostałe   15 Maj 2017 20:14 Odpowiedzi: 9    Wyświetleń: 2502
  • Generacja PWM na 8051 z EdSim - jak ustawić TH0 i TL0?

    [syntax=assembler] ORG 0 ; wektor zerowania JMP MAIN ; bezwarunkowo skocz poza obszar wektorów przerwań ORG 000BH ; wektor przerwania po przepełnieniu timer0 JMP PODPR_L MAIN: MOV TMOD, #01H ; ustaw dla timer0 tryb 1 MOV TL0, #01110000b ; 65536-10640=54896 MOV TH0, #11010110b ; SETB EA ; globalnie zezwól na przerwania SETB ET0 ; zezwól na przerwanie...

    Mikrokontrolery Początkujący   14 Lip 2020 00:00 Odpowiedzi: 5    Wyświetleń: 798
  • Jak zaprogramować mikrokontroler? Wskazówki i materiały dla początkujących

    Język to ASM, Jeśli chodzi o samą składnię assemblera to raczej nie mam problemów, i też wiem co to pętla ;) Bardziej chodzi mi o zagadnienia bardziej teoretyczne w stylu metod rozbicia danego problemu w taki sposób aby pętla nie obracała się zbyt wolno żeby nie powodować zbytnich opóźnień w dalszych częściach programu które mogły by np powodować błędnych...

    Mikrokontrolery   22 Sty 2010 13:38 Odpowiedzi: 7    Wyświetleń: 1384
  • Jak ustalić wartości a i b w pętli opóźniającej dla AVR 4MHz?

    Witam! Napisałem w C taką funkcję opóźniającą void wait100ms(unsigned char x) { unsigned char a,b; for (;x > 0; --x) for(b=50; b>0; --b) for(a=100; a>20; --a) __asm("nop"); } Niestety nie wiem jakie wartości mają mieć dokładnie a i b by pętla trwała 100ms. Zaglądałem do listingu ale nie znam dobrze assemblera do AVR i nie mogę sobie z tym poradzić,...

    Mikrokontrolery   19 Wrz 2005 20:02 Odpowiedzi: 4    Wyświetleń: 3269
  • Jak działa _delay_loop_1 w delay.h AVR GCC? Wyjaśnienie wstawki asemblerowej

    Z opisu funkcji wynika, że pętla używa 8-bitowego licznika. Gdzie w tej funkcji jest odniesienie do licznika.? W tej linii: dec %0 Po prostu jeden z rejestrów jest używany do odliczania opóźnienia i dlatego został "przezwany" licznikiem. Nie ma to nic wspólnego z fizycznymi licznikami/timerami. O wstawkach assemblerowych możesz przeczytać w manualu...

    Mikrokontrolery   30 Cze 2009 08:40 Odpowiedzi: 2    Wyświetleń: 2507
  • AVR assembler – jak napisać procedury mnożenia 8x8, 16x8, 16x16 n-bitowych liczb?

    Masz napisać procedury mnożenia liczb: 1 bajtowej przez 1 bajtową (8x8) wynik będzie 16 bitowy (2 bajty) 2 bajtowej przez 1 bajtową (16x8) wynik będzie 24 bitowy 3 bajty 2 bajtowej przez 2 bajtową (16x16) wynik będzie 32 bitowy (4 bajty) Procedura przebiega tak w kodzie naturalnym binarnym: 1. Przygotowujesz rejestr wyniku o długości równej sumie ilości...

    Początkujący Elektronicy   23 Lis 2004 18:52 Odpowiedzi: 1    Wyświetleń: 1506
  • STM32 - Kompilacja w Eclipse i Sourcery 4.7.3, nieczytelny main.c

    Zaczynam przygodę z STM32 i na początku już schody z którymi nie mogę sobie poradzić. Mam zainstalowane Eclipse jak i Sourcery 4.7.3, ściągnąłem przykładowy projekt z strony Freddiego do mrugania diodą i tu kompiluje się bez problemu. Lecz nie bardzo leży mi ten przykład (bez obrazy). Lubię mieć wszystko poukładane a w tym przykładzie wszystko jakoś...

    Mikrokontrolery ARM   24 Paź 2013 11:09 Odpowiedzi: 6    Wyświetleń: 1962
  • Atmel at91sam7s256 - problem z konwersją kodu z C na ASM

    Napisałem funkcję obliczającą filtr FIR - 16 współczynników - w moim playerze mp3 na kontrolerze Atmel at91sam7s256. Wszystko działa super, ale po przepisaniu funkcji z C na assembler (kod w C oraz w asm poniżej) niestety nie działa poprawnie. pętla liczenia filtru dla kolejnych sampli smp_loop jest wykonywana bez przerwy, a nawet jeśli nie to i tak...

    Mikrokontrolery   24 Sie 2007 10:28 Odpowiedzi: 1    Wyświetleń: 948
  • Atmel at91sam7s256 - problem z konwersją kodu z C na ASM

    Napisałem funkcję obliczającą filtr FIR - 16 współczynników - w moim playerze mp3 na kontrolerze Atmel at91sam7s256. Wszystko działa super, ale po przepisaniu funkcji z C na assembler (kod w C oraz w asm poniżej) niestety nie działa poprawnie. pętla liczenia filtru dla kolejnych sampli smp_loop jest wykonywana bez przerwy, a nawet jeśli nie to i tak...

    DSP i Transmisja   24 Sie 2007 10:29 Odpowiedzi: 1    Wyświetleń: 1152
  • [Assembler] Jak napisać program do kopiowania pliku i uruchamiania exe?

    Ogólnie programik miał przetworzyć otwierany plik, nagarć go jako inny i odpalić. Assembler'em można by było w pętli... no i bym nad tym siedział niewiadomo ile :). "Czas to pieniądz." Qbasic fakt darmowy i mam go w jednym paluszku..Oj dawne czasy... Sprawa załatwiona, wszystko działa, tematu jeszcze nie zamykam, żeby nie za wcześnie popadać w zachwyt...

    Programowanie   25 Paź 2008 18:34 Odpowiedzi: 6    Wyświetleń: 3385
  • [Assembler] Jak efektywnie posortować dane od adresu ds 100 do ds 400?

    jak narazie to tylko umiem to zrobić sposobem kopiowania ale to za długo trwa Nie wiem czy istnieje sposób sortowania sposobem kopiowaniem. Sortować można same komórki lub w przypadku sortowania łańcuchów wskaźniki na te łańcuchy. Załączam materiały o sposobach sortowania. Żle się wyraziłem chodzi o to że ustawiam wartości np w adresie ds 0001 i je...

    Programowanie   08 Maj 2004 17:40 Odpowiedzi: 3    Wyświetleń: 2925
  • STM32F0 - Pętla while nie kończy się mimo dekrementacji timer_cnt do 0

    Witam, Bawie sie płytka STM32F0Discovery, napotkalem na dziwne zachwowanie prostej funkcji opozniajacej. Od razu mówie ze docelowo bedzie ona i tak uruchomiona na timerze, a to co ponizej traktuje jako swego rodzaju ciekawostke. Mianowicie zmienna timer_cnt schodzi do 0, a petla while sie nie chce zakonczyc. W tym czasie przerwania, DMA i Systick działa...

    Mikrokontrolery ARM   07 Mar 2015 01:11 Odpowiedzi: 11    Wyświetleń: 834
  • Wykrywanie pojazdów, pętla, generator? Co z praktyką ?

    Witam! Tak, to jest gotowiec na uPC. Ściągnij sobie wszystko z tego linku, który zapodał "avatar". Jest tam źródło do programu w assemblerze, a więc nie musisz pisać wszystkiego od nowa, wystarczy wprowadzić stosowne dla Twojego projektu poprawki. Pozdrawiam

    Projektowanie Układów   11 Lis 2007 02:12 Odpowiedzi: 10    Wyświetleń: 4703
  • Assembler - sekwencyjny odczyt tablicy na Atmega8 w AVR Studio 4.19

    Mi komenda lpm temp,Z zgłasza ostrzerzenie(komenda nie wspierana w tym procesorze) Asembler ma bardzo dużo tzw. "knyfów". Długo już w nim piszę i nie jeden program nie zadziałał. Czy oby na pewno wszyscy mówimy o ATMEGA8 bo ja odnoszę wrażenie że chyba każdy tutaj pisze pod inny procesor. Stos źle skonfigurowany. Chyba że kolega kompiluje pod zupełnie...

    Mikrokontrolery AVR   24 Sty 2012 20:32 Odpowiedzi: 18    Wyświetleń: 6184
  • Jak napisać algorytm emulatora minutnika w Turbo Pascal 7.0 na Windows XP?

    Mnie tam sysutils.time() bardziej przypomina Delphi niż TP, ale nie chcę się kłócić :P Wiele lat temu, w TP7.0 robiło się takie rzeczy w taki sposób :[syntax=pascal]program minutnik; uses WinDos,CRT; var czas,zostalo, alarm : TDateTime; zakoncz : boolean; czas_i,alarm_i,zostalo_i : longint; zmm_word : word; procedure HideCursor; assembler; //kosmetyka...

    Programowanie Początkujący   19 Kwi 2012 01:46 Odpowiedzi: 12    Wyświetleń: 2040
  • Jak obliczyć opóźnienie w C dla mikrokontrolera c8051f352 bez timera?

    Opóźnienia najlepiej realizować w postaci wstawek assemblerowych, bo wtedy możesz doliczyć się ile dana pętla pożera cykli. W C tego dokładnie nie zrobisz. Możesz sobie napisać funkcję, która będzie wykonywać pętlę for albo while wykonywała określoną ilość razy, ale jedynie metodą prób i błędów można dojść jakie faktycznie opóźnienie wykonuje. Możesz...

    Mikrokontrolery   12 Lip 2007 21:55 Odpowiedzi: 2    Wyświetleń: 4700
  • Jak generować dźwięki za pomocą mikrokontrolera 89C51?

    Możesz mi przybliżyć skrót PWN ? Czy dobrze rozumuję ? Zakładam,że chcąc kontrolwać częstotliwość generowango dźwieku muszę znać czas trwania cyklu maszynowego i brać pod uwagę ilość cykli, które tzajmuje wykonanie karzdej instrukcji zawartej wewnątrz pętli. Dopiero zaczynam dłubać w assemblerze i jakoś nie mogę wskoczyć. Wcześniej programowałem w językach...

    Mikrokontrolery   23 Lut 2005 21:23 Odpowiedzi: 7    Wyświetleń: 1278
  • Assembler: Zliczanie liczb parzystych i nieparzystych w adresach 200-500

    Napisać to nie ... ale mogę ci podpowiedzieć: Ja bym użył instrukcji test <adres>,1 i jak wynik jest zero to parzysta. Oczywiście wszystko to trzeba umieścić w jakiejś sensownej sprytnej pętli i podliczyć. (zakładam że chodzi o assembler x86)

    Programowanie   09 Sty 2007 12:58 Odpowiedzi: 1    Wyświetleń: 930
  • Komunikacja szeregowa - '51 - assembler - potrzebna pomoc

    Witam Mam pewien problem, potrzebuje napisać sterownik do 6 serw. Sterowanie serwami rozwiązałem (jeśli ktoś ma lepszy pomysł to chętnie wysłucham), problem tkwi w komunikacji z komputerem, sama komunikacja działa, dane wysyłane są raczej poprawnie. Jeżeli obsługuje RS'a w przerwaniach to serwa zmieniają położenie tak jak należy, ale strasznie przy...

    Mikrokontrolery   07 Mar 2008 21:45 Odpowiedzi: 5    Wyświetleń: 1106
  • Assembler 8051: Program sumujący liczby binarne i przenoszący wartość 10H

    Mój nauczyciel od ukladów mikroprocesorowych zadał nam dwa zadania, w których to należy napisać program w assemblerze pod 8051. Oto ich treść: 1. Napisz prosty program sumujący dwie liczby binarne w assemblerze dla 8051. 2. Napisz program przenoszący wartość 10H pomiedzy rejestrem R0 a zewnętrzną pamięcią danych w nieskończonej pętli (assembler dla...

    Programowanie   05 Wrz 2005 20:21 Odpowiedzi: 3    Wyświetleń: 1171
  • Wyjaśnienie użycia return, true, false w WinAPI i znaczenie #define w VC++

    off topic, ale po prostu musiałem... break - to jest bardzo niewygodna wada kompilatorów języka C. Mnie to bardzo kole w oczy. Na 99% to jest macro, które powoduje skok poza zasięg rozkazu masowego porównywania select lub swith break to nie makro, tylko normalna instrukcja Wada?! Zaleta! Pozwala programiście kontrolować przebieg programu. Tylko kwestia...

    Programowanie   09 Lut 2005 18:07 Odpowiedzi: 5    Wyświetleń: 1424
  • Mini DDS - prosty generator funkcyjny

    http://obrazki.elektroda.pl/6793166500_1... Mini DDS (Direct Digital Synthesis) Często potrzebny jest prosty generator funkcyjny dla wygenerowania określonej częstotliwości. Generatory komercyjne są drogie, więc najtaniej jest zbudować generator samemu. Niniejszy projekt przedstawia bardzo prosty generator typu DDS składający się z układu...

    DIY Zagranica   14 Lut 2011 10:19 Odpowiedzi: 6    Wyświetleń: 10766
  • [AVR Studio] Dziwny problem z przesunieciem bitowym

    Chciałem Wam bardzo podziękować za zainteresowanie i profesjonalne odpowiedzi. Dziękuję! Co do Assemblera - patrzyłem na jego kod. W pewnym momencie następuje pętla w której następuje 'przes'-krotne przesunięcie bitowe w lewo (za każdym razem o jeden - rozkaz LSL), następnie w pamięci umieszczana jest dziwna wartość rejestru R24 (nie wiem czy dobrze...

    Mikrokontrolery AVR   04 Sty 2012 16:17 Odpowiedzi: 14    Wyświetleń: 3540
  • Pętla nie skończona kończy sie - hmmm nie rozumiem ??

    witam. ja zaczynalem od assemblera, potem pisalem w c a ostatnio od kilku lat w bascomie. ten ostatni jest zdecydowanie najprostszy a dzieki temu ze wiele instrukcji ma wbudowanych stworzyc zeragek na pcf8583 to ok 10 min roboty co w asemblerze pewnie robilbym tydzien. moze i jest niedopracowany (szczegolnie w kwestii stosu - mialem dokladnie se same...

    Mikrokontrolery   25 Mar 2006 17:18 Odpowiedzi: 10    Wyświetleń: 1656
  • Assembler 51 - przykłady kodów do eliminacji drgań styków w 89C2051

    Co do odmierzania czasu to możesz to zrobić na wiele sposobów. W normalnych pętlach albo klawiaturę obsługiwać w przerwaniu, wtedy opóźnienie definiuje to przerwanie i nie angażuje zbytnio procesora. A z drugiej strony to poszukaj na forum, sam tu umieszczałem program obsługi klawiatury matrycowej.

    Mikrokontrolery   19 Gru 2006 08:50 Odpowiedzi: 9    Wyświetleń: 1779
  • C++: Pętla do while - warunek wyjścia nie działa poprawnie

    (at)p.kaczmarek2 , to: [syntax=cpp]b<0?-b:b[/syntax] nigdy nie będzie szybsze od abs() lub fabs() przynajmniej na x86 bo masz warunek zamiast jednej instrukcji assemblera. Natomiast: [syntax=cpp]((b >> sizeof(int) * 8 - 1)+mask)^mask[/syntax]: na 100% będzie wolniejsze (zdecydowanie zbyt dużo operacji) no i przestanie działać przy LittleEndian...

    Programowanie Początkujący   10 Maj 2015 23:46 Odpowiedzi: 17    Wyświetleń: 1536
  • AtMega - Jak obsługiwać równolegle 4 przełączniki w Bascom?

    Witam, nasunął mi się taki problem związany z programowaniem ;) Używam od jakiegoś czasu gotowca Arduino Nano, bo wychodzi najtaniej ;) Próbuję tworzyć w wolnej chwili różne różności ;) ogólnie fascynacja AVR zamiast z czasem zanikać to rośnie. Ostatnio powstał w mojej głowie i w realu projekcick obsługujący 4 dwustanowe przełączniki. Fajnie by było...

    Mikrokontrolery AVR   28 Mar 2014 10:44 Odpowiedzi: 9    Wyświetleń: 3249
  • Atxmega256A3BU - [assembler] termometr NTC przy użyciu CD4511be na wys. 7 seg

    Witam. To mój pierwszy post wiec proszę o wyrozumiałość. Wraz z kolegami z zespołu dostaliśmy zadanie aby zrobić termometr przy użyciu dekoderów cd4511be do które będą sterowały dwoma wyświetlaczami siedmio-segmentowymi które działają w ze wspólną anodą. Temperatura ma być podana z dokładnością do 1 stopnia C. Napisaliśmy program do terowania MC. Używamy...

    Mikrokontrolery AVR   26 Cze 2015 18:58 Odpowiedzi: 2    Wyświetleń: 1104
  • Assembler mikroprocesor 8051 liczenie na 4 wyświetlaczach 7 seg

    Kod jest bardzo nieoptymalny, zauważył kolega powtarzające się fragmenty? Od takich rzeczy są procedury. A całość powinna się wykonywać w pętli z inkrementacją (i wyjściem po uzyskaniu zadanej wartości czyli 9999)

    Mikrokontrolery Początkujący   27 Lis 2018 11:11 Odpowiedzi: 5    Wyświetleń: 468
  • Jak używać biblioteki procedur matematycznych w asemblerze AVR?

    double func( double A Hmm.. A jak 64-bitowa liczba double została zmieszczona w czterech 8-bitowych rejestrach? Magia się dzieje :) A co do pisania w ASM, moje zdanie jest takie, że dzisiejsze kompilatory są na tyle dobre, że przy włączonej optymalizacji naprawdę trudno jest samemu napisać lepszy kod. Oczywiście, tam gdzie jest potrzebna większa kontrola...

    Mikrokontrolery   27 Cze 2007 17:26 Odpowiedzi: 19    Wyświetleń: 3203
  • [AVR] AVR Studio debugger – jak na bieżąco podglądać zmienne nievolatile przy optymalizacji?

    Witam, problem nie tkwi w programie... Po "t2++;" nie masz żadnej instrukcji więc debugger wraca na początek pętli. Strzałka podczas debugowania pokazuje kolejną instrukcję do wykonania. ...i właśnie dlatego uważam, że naukę powinno się zaczynać od assemblera - żeby zrozumieć istotę działania(choćby przeskoków w tym przykładzie). Możesz włączyć disassember'a...

    Mikrokontrolery AVR   04 Wrz 2009 08:04 Odpowiedzi: 3    Wyświetleń: 1547
  • Jak napisać 4 programy w assemblerze dla mikrokontrolera 8051?

    Ad4.Wykorzystałbym to że można w pętli przekręcać akumulator na siebie i kopiować jego wartość na port P3.Wcześniej ustawić P3 w stan wysoki i wpisać odpowiednią wartość do A.

    Mikrokontrolery   04 Lis 2009 15:25 Odpowiedzi: 9    Wyświetleń: 4782
  • Assembler dla 8051 - Co to jest stos i jak działa? Szukam dobrego objaśnienia

    Ściślej mowiąc, na 8051 nie da się zrobić operacji push R2 (na przykład). Na stos można odkładać (i zdejmować z niego) tylko akumulator i rejestr B. Trzeba wtedy zrobić tak: mov A,R2 push ACC I tu uwaga, rozkaz push A też nie przejdzie. Nie pamiętam dokładnie, ale jest to coś z adresowaniem rejestrów w przestrzeni SFR. Podobnie zachowuje się rozkaz...

    Mikrokontrolery   10 Lis 2005 21:28 Odpowiedzi: 15    Wyświetleń: 15401
  • Re: Nie mogę zainicjalizować SPI na AVR - kod nie działa poprawnie

    (at)newtornus jeśli chodzi o podświetlanie kodu, to przechodzisz do "pełnej" odpowiedzi/edytora i tam jest "syntax" ja używam Arduino, ale jest cała lista do wyboru. Guzik Odpowiedź i Odpowiedź, to różne guziki :) Z tego opisu flagi wynika że twój sposób nie jest zły, czyszczenie jest opisane że następuje po odczycie ustawionej flagi i dostępie do rejestru...

    Mikrokontrolery Początkujący   07 Cze 2024 22:34 Odpowiedzi: 22    Wyświetleń: 546
  • Błąd przy uruchamianiu pierwszego programu na AVR Atmega16A z USBasp

    [syntax=avrasm]# Hey Emacs, this is a -*- makefile -*- #---------------------------------------... # WinAVR Makefile Template written by Eric B. Weddington, Jörg Wunsch, et al. # # Released to the Public Domain # # Additional material for this makefile was written by: # Peter Fleury # Tim Henigan # Colin O'Flynn # Reiner...

    Mikrokontrolery Początkujący   19 Lut 2017 21:05 Odpowiedzi: 62    Wyświetleń: 3651
  • STM32F4 - Czy GPIO na zegarze 180MHz obsłuży ADC 40MHz?

    Nawet gdyby same porty GPIO się wyrobiły, to nie wyrobi się cała reszta. Skoro chcesz wykonywać odczyt z częstotliwością 40MHz, to masz mniej więcej 4 takty zegara na wykonanie wszystkiego. W super-extremalnym przypadku pętla która by to realizowała ma 4 rozkazy assemblera: 1. odczyt GPIO do rejestru 2. zapis z rejestru do RAM z postinkrementacją wskaźnika...

    Mikrokontrolery ARM   28 Kwi 2016 21:00 Odpowiedzi: 6    Wyświetleń: 1362
  • Procedura opóźniająca 1s w assemblerze dla PIC 16F84A - nie działa poprawnie

    Witam Kiedyś podczas poszukiwania materiałów i gotowych przykładów na PICe znalazłem stronę na której jest skrypt generujący takie właśnie pętle. Wpisujesz kilka podstawowych parametrów i otrzymujesz gotowy kod do wklejenia. http://www.piclist.com/techref/piclist/c...

    Mikrokontrolery   24 Lip 2007 19:36 Odpowiedzi: 3    Wyświetleń: 1170
  • WINAVR na Windows 8.1 – błąd make.exe przy programowaniu przez USBasp

    Witam, Mam problem z początkiem nauki programowania mikrokontrolerów. Zakupiłem na Allegro programator USBasp oraz podstawkę do programowania. Taki jak w linku: <ciach> Na USBasp ustawiłem przycisk na 1-ON, 2-ON, 3-OFF. Sterowniki zainstalowałem libusb_0.1.12.1. Dodatkowo zainstalowałem WinAVR do pierwszego programowania. Następnie utworzyłem...

    Mikrokontrolery Początkujący   12 Mar 2015 07:52 Odpowiedzi: 7    Wyświetleń: 2001
  • [STM32] Czy memcpy w STM32 blokuje przerwania timera przy kopiowaniu?

    memcpy nie ma prawa blokować jakiegokolwiek timera. To jest zwykła funkcja biblioteczna, i na pewno nie sprawdza ktory akurat timer masz włączony i również nie ma kodu aby go wyłączyć. Memcpy jest najpewniej napisany w assemblerze i został odpowiednio zoptymalizowany. Kopiowanie duzej tablicy bajtów w pętli spowoduje kopiowanie się bajtu po bajcie,...

    Mikrokontrolery ARM   09 Mar 2011 11:36 Odpowiedzi: 6    Wyświetleń: 1939
  • Jak wyliczyć czas trwania pętli for na P89C51 z 11.0592MHz?

    a to nie lepiej zrobivc wstawke assemblerowa i zrobic taka petle w assemblerze? bedziesz mial wtedy o wiele lepsza dookladnosc, no chyba ze takiej niepotrzebujesz

    Mikrokontrolery   18 Sie 2004 15:35 Odpowiedzi: 6    Wyświetleń: 2595
  • Jak napisać program zegarka 7-segmentowego na ATtiny26 w asemblerze?

    Przerwania podstawowe muszą być z częstotliwością 4*minimalna częstotliwość wyświetlania pojedyńczej cyfry. Spróbuj np. przerwania o częstotliwości 100 Hz. Co przerwanie wyświetlasz kolejną cyfrę. Co 100 przerwań zwiększasz stan zegara o 1 sekundę. Modyfikację czasu robisz po pełnym cyklu wyświetlania (4 cyfry). To co ci podałem to zasada działania...

    Nauka Elektroniki, Teoria i Laborki   20 Lut 2009 12:00 Odpowiedzi: 8    Wyświetleń: 3354
  • [C] Atmega8 przerwania INT0/INT1 – wielokrotne zliczanie naciśnięć przycisku (debouncing)

    Kwestia czy to się opłaca czasowo... Wszystko zależy od tego, co chcemy osiągnąć. Nie próbuję tutaj forsować używania na siłę przerwań, ich zagnieżdżania i maskowania. Niemniej uważam, że to cenna umiejętność. ... ja wyznaję zasadę: im krócej w przerwaniach tym lepiej Myślę, że to dobra zasada, jednak nie zawsze się da tak krótko, jak by to było pożądane,...

    Mikrokontrolery AVR   09 Lip 2010 21:11 Odpowiedzi: 25    Wyświetleń: 2481
  • [C] - Optymalizacja funkcji liczącej sumę kontrolną

    Jeśli zachodzi potrzeba takiej optymalizacji to chyba czas najwyższy zmienić procesor na lepszy :-) Nie ma znaczenia jaki procesor, na każdy chciałbym tą funkcję zoptymalizować bo chodzi o czas odpowiedzi, im mniejszy tym lepszy. Wydaje mi się, że wpadasz w płapkę permanentnej optymalizacji. Gdyby tak było to męczyłbym Was assemblerem. Sam wiesz dobrze,...

    Mikrokontrolery   27 Wrz 2013 19:08 Odpowiedzi: 23    Wyświetleń: 2076