zmienna rejestr

Znaleziono około 1286 wyników dla: zmienna rejestr
  • AVR kompilator Microchip XC8 - zmienna w rejestrach I/O (GPIOR)

    Może coś w stylu Dodano po 1 XC8 jest opracowaniem Microchipa pierwotnie dla architektury PIC a ostatnio rozszerzonym o AVR. Dokumentacja XC8 pod AVR do złudzenia przypomina tę na AVR-GCC więc hmmm....

    Mikrokontrolery   13 Gru 2020 16:24 Odpowiedzi: 9    Wyświetleń: 759
  • Jak odczytać dane szeregowe z enkodera AD2S90 w Bascom?

    robisz to za każdym razem tak : 1. Zerujesz rejestr/zmienna w której chcesz miec wynik. 2. Przesuwasz rejestr/zmienna o 1 bit w lewo bez rotacji. 3. Jeśli P1.1 = 1 to ustawiasz najmłodszy bit w rejestrze/zmiennej, jeśli nie to zerujesz (poprostu dodajesz zawartość pinu do rejestru/zmiennej) 4. Jesli ni eodebrałes jeszcze 8 bitow to skocz do 2. Pozdrawiam...

    Mikrokontrolery   25 Kwi 2006 17:52 Odpowiedzi: 14    Wyświetleń: 2655
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • [STM32] [SPI] Problemy z komunikacją z żyroskopem L3G4200D przez SPI1

    Jeśli zmienna / rejestr jest volatile to działa, używam takich zapisów już od dawna i nie ma z tym problemów.

    Mikrokontrolery ARM   14 Paź 2024 17:50 Odpowiedzi: 36    Wyświetleń: 10719
  • REKLAMA
  • [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
  • [C]Zmienna lokalna vs globalna, a szybkość wykonywania programu przerwania

    Zatem jeśli zmienna lokalna (ulotna) jest pamiętana w rejestrze procesora, po odłożeniu na Stos jej początkowej wartości, to będzie ona dostępna szybciej niż zmienna globalna. Czyli, generalnie zmienna lokalna zadeklarowana w przerwaniu , też będzie odłożona przez kompilator do rejestru i potem wszystkie operacje będą wykonywane na tym rejestrze? A...

    Mikrokontrolery AVR   08 Lis 2017 22:39 Odpowiedzi: 14    Wyświetleń: 2571
  • Obsługa kodu RC5 na ATMELKU(AT89C...) tylko, że w ASM

    W bascomie rzeczywiście prosto gdyż mozna dać cos takiego: zmienna.zmienna_pomoc=p3.2, a w asm gorzej bo taki zapis nie przejdzie. Mało tego polecenie setb tez nie akceptuje adresu jako zmienna (rejestr czy cokolwiek) tylko wartość stała. Myślałem nad tym i chyba tylko rrc lub rlc i "wsówanie" bitów poprzez flagę C. Innego sposobu narazie nie widze.

    Mikrokontrolery   24 Mar 2006 14:26 Odpowiedzi: 4    Wyświetleń: 1293
  • Avr-gcc: Optymalizacja pętli for (i<1024) na BREQ - jak obejść?

    po dodaniu volatile jakos lepiej poszlo ale widze ze wczesniej zmienna w rejestrach siedziala a teraz gdzies w ramie ja umiescil. To jest dość oczywista konsekwencja użycia tego kwalifikatora - efektywnie zabrania on jakichkolwiek optymalizacji zmiennej i pozostaje ona na stosie. Wydaje mi się, że walczysz z niewłaściwym problemem - szukasz dziury...

    Mikrokontrolery   07 Gru 2007 14:06 Odpowiedzi: 15    Wyświetleń: 1552
  • [ATmega32] Jak napisać procedurę obsługi przerwania timera0 dla diody LED na ATmega32?

    Ale jeśli mniejsze, to już po 1 takcie zliczania powinno wyskoczyć z przerwania a tak nie jest. Taktowanie timera to 16MHz/1024 = 15625Hz. Pojemność timera to 256, więc przerwanie pojawia się z częstotliwością 15625/256 = ~61Hz. Aby uzyskać opóźnienie ok. 1 sekundy przerwanie musi pojawić się 61 razy i dopiero za 62 zapalić lub zgasić diodę. I tak...

    Mikrokontrolery AVR   27 Paź 2011 11:19 Odpowiedzi: 8    Wyświetleń: 2552
  • REKLAMA
  • Jak ustawić piny w rejestrze 74HC595 bez zmiany stanu pozostałych pinów?

    Nie można. Pole unii rejestr zawiera wszystkie 16 bitów widziane jako jedna zmienna 16-bitowa. Pole bit udostępnia je jako 16 indywidualnych zmiennych 1-bitowych b0, b1 itd.

    Mikrokontrolery AVR   13 Lis 2016 22:53 Odpowiedzi: 24    Wyświetleń: 1503
  • Programowanie sterownika oświetlenia motocykla z Atmega8 i eliminacja drgań styków

    Kiedyś widziałem jak ktoś programowo niwelował drgania poprzez "puszczenie sygnału przez rejestr". Nawet to dosyć dobrze działało. Działało to w taki sposób że przy każdym kolejnym wywołaniu pętli programu, na początku rejestr (np. 8 lub 16 bitowy), przesuwany jest o jeden w prawo, a na najmłodszą pozycję wpisywany jest stan z wejścia (przycisku). Dalej...

    Mikrokontrolery Początkujący   11 Wrz 2013 14:18 Odpowiedzi: 8    Wyświetleń: 1794
  • Przykładowy program w Bascom do sterowania silnikami krokowymi w robocie

    czy tak trudno zerknąć do helpa PWM1A = wartość zmienna = PWM1Aalias rejestru Compare 1A licznika TIMER1 (Word) używany gdy licznik pracuje w trybie PWM PWM1B = wartość zmienna = PWM1Balias rejestru Compare 1B licznika TIMER1 (Word) używany gdy licznik pracuje w trybie PWM PWM2 = wartość zmienna = PWM2rejestr Compare 2 licznika TIMER2...

    Robotyka Modelarstwo i CNC   02 Gru 2007 17:14 Odpowiedzi: 16    Wyświetleń: 2739
  • Plik wsadowy - Odczyt do zmiennej wartości klucza rejestru za pomocą pliku wsadowego

    Plik bat [syntax=dos](at)echo off for /f "tokens=3" %%a in ('reg query "HKEY_CURRENT_USER\Software\Microsoft\Wi... Shell Folders" /v "Personal"') do set zmienna=%%a echo %zmienna% pause[/syntax]

    Software serwis   29 Kwi 2023 09:27 Odpowiedzi: 2    Wyświetleń: 297
  • Implementacja funkcji liniowej w asemblerze na 8051 z parametrami A, B, x

    czy dzobrze zrozumialem o co Ci chodzilo ? jesli tak to moje rozwiaznie : ;zmienna zm_x (rejestr r0) osiaga wartosci 0-50 ;zmienna wyjsciowa (rejestr r1) min=1 max=100 mova,r0 jnzdalej movr1,#1 ret dalej:rla movr1,a ret

    Programowanie   30 Sie 2008 19:44 Odpowiedzi: 12    Wyświetleń: 1159
  • [avr-gcc] Kiedy używać zmiennej volatile w programowaniu mikrokontrolerów AVR?

    Juz tlumacze :-) Zmienne volatile to takie, ktorych uzycia nie chcemy by kompilator optymalizowal. Zalozmy, ze uzywasz jakiejs zmiennej. Za chwilke chcesz cos na niej wykonac. Kompilator wyprodukowal kod, w ktorym ta zmienna jest w jakims rejestrze. Wiec stwierdzi, ze odwoalnie do pamieci jest niepotrzebne i je usunie, zakladajac, ze rejestr posiada...

    Mikrokontrolery   14 Lis 2005 12:26 Odpowiedzi: 6    Wyświetleń: 7924
  • REKLAMA
  • Dlaczego VHDL (EPM240T100) jest lepsze od rysowania schematów?

    Czyli ma to wyglądać mniej więcej tak Wygląda ok. Podłącz tylko któryś z najstarszych bitów do portu LED. mam jeszcze jedno pytanie, czym są zmienne w takim scalaku? To zależy od tego, jaką funkcjonalność ma dana zmienna. Trzeba pamiętać, że to tylko twór w języku VHDL. Dopiero w procesie syntezy tłumaczone jest to na syntezowalny element logiczny....

    Programowalne układy logiczne   18 Paź 2020 20:06 Odpowiedzi: 19    Wyświetleń: 1293
  • Asembler DOSBox - Błąd przy czytaniu i wypisywaniu wektora znaków

    Nie, jeśli przenosisz zmienną do segmentu data, to rejestr DataSegment musi wskazywać właśnie na niego. Najbezpieczniej jest użyć SEG [zmienna]

    Programowanie Początkujący   29 Lis 2013 21:54 Odpowiedzi: 4    Wyświetleń: 1233
  • Framework AVR GCC do tablicowego sterowania pinami Atmegi jak w Arduino

    (at)ElektrodaBot Czy istnieje metoda, aby wyświetlić model mikroprocesora, na którym skompilowany jest program w AVR GCC? Może istnieć zmienna globalna lub możliwość odczytu rejestrów.

    Mikrokontrolery Początkujący   07 Lut 2024 13:34 Odpowiedzi: 71    Wyświetleń: 1038
  • Kod w C do jednorazowej konwersji AC na Atmega8 i zapis do zmiennej

    Witam... Tak można... Ale pamiętaj o sumie przy ustawianiu inaczej wyzerujesz sobie cały rejestr... Tak w tym przypadku nie musisz (ale możesz) się martwić odczytem osobnych rejestrów (H i L) i ich kolejnością... Oczywiście zmienna do której wczytujesz musi mieścić 10-bitów... Zabawa w czytanie rejestrów ADCH lub ADCL ma sens jeżeli przesówasz wynik...

    Mikrokontrolery   10 Sty 2012 20:48 Odpowiedzi: 14    Wyświetleń: 2937
  • Czy inkrementacja w warunku logicznym C jest zawsze wykonywana?

    BoskiDialer -> nie masz racji. Instrukcje arytmetyczne ZAWSZE muszą zostać wykonane. Przypadek, o którym piszesz dotyczy porównania. Co jest niebezpieczne, jeśli zmienna jest rejestrem jakiegoś urządzenia, i odwołanie do niego w przypadku porównania może nie mieć skutku.

    Mikrokontrolery   06 Sty 2012 20:45 Odpowiedzi: 10    Wyświetleń: 1414
  • Jak przesłać dane z DL (ASM) do int (C++)? Przykład kodu.

    Jeżeli masz na myśli platformę x86 gdzie DL to część rejestru EDX, to piszesz: int zmienna; __asm { ; mov dl, cośtam movsx edx,dl ; int jest ze znakiem więc movSx mov zmienna,edx } Jeżeli zmienna ma przyjmować wartości bez znaku (0-255), to zmień movsx na movzx.

    Programowanie   03 Sie 2010 19:55 Odpowiedzi: 11    Wyświetleń: 1387
  • GE Fanuc - Zliczanie w rejestrze ilości kliknięć na przycisku

    Witam, Mam prosty problem: Jak inkrementować zmienną za każdym załączeniem ? Chodzi o to żeby był jeden marker pomocniczy (%M) który na starcie będzie przesyłał wartość zero do rejestru (%R) kiedy zmienna %M przejdzie w stan wysoki do rejestru powinna zostać wysłana jedynka kiedy zmienna ta przejdzie w stan niski w rejestrze powinna widnieć nadal wartość...

    Automatyka Przemysłowa   08 Paź 2015 14:41 Odpowiedzi: 2    Wyświetleń: 960
  • Zmienne globalne wykorzystywane przez przerwania i inne.

    Inkrementacja zmiennej 8-bitowej to też operacja atomowa. No nie za bardzo. Może być atomowa o ile jest to zmienna przechowywana w rejestrze procesora. Normalnie masz 3 operacje: 1. R=zmienna 2. INC(R) 3. zmienna=R Jeśli w przerwaniu jest tylko odczyt, to nie ma większego problemu zazwyczaj - możesz widzieć poprzednią wartość zmiennej. Jeśli jednak...

    Mikrokontrolery Początkujący   28 Kwi 2021 13:48 Odpowiedzi: 47    Wyświetleń: 2841
  • Zmienna nieulotna w funkcji. [C]. Jak ją zadeklarować?

    Jeśli zmienna "globalna" w danym pliku jest statyczna, to nie jest ona "exportowana" poza moduł (czyli plik) - żadne extern w tym momencie nie pomoże i będzie skwitowane błędem kompilacji. Dzięki takim niby nic nie znaczącym zabiegom można pokazać komuś (np sobie w przyszłości), że taka zmienna nie jest przeznaczona do użytku na zewnątrz modułu (odpowiednik...

    Mikrokontrolery   16 Sty 2010 23:38 Odpowiedzi: 56    Wyświetleń: 5591
  • AVR/ATmega8 - Gdzie stosować volatile przy tablicach i strukturach?

    (at)BlueDraco A jak byś chciał to fizycznie zaimplementować w kompilatorze / linkerze Przykład jak zewnętrzna funkcja miałaby operować na takiej zmiennej w rejestrze? Rozumiem że trzeba byłoby przerabiać kod bibliotek np. Tak jak pisałem w poście 7 można sobie taką protezę wyobrazić. problemem jest C/C++ - zmienna typu rejestr nie ma adresu. To jak...

    Mikrokontrolery AVR   28 Sty 2017 07:43 Odpowiedzi: 40    Wyświetleń: 2532
  • Takt, taktowanie, częstotliwość,cykl procesora, timety prośba o wyjaśnienie.

    Co do taktów i cykli - Takt to czas w którym procesor wykonuje pojedynczą czynność. Nie zawsze jest to pojedynczy rozkaz, chociaż bywają procesory z rozkazami nie za bardzo rozumiem pojęcie "czynność" Ta pojedyńcza czynność to linijka kodu w programie np inkrementacja? (zmienna= zmienna +1) Nie. Pojedyncza instrukcja w kodzie maszynowym często dzieli...

    Mikrokontrolery Początkujący   28 Lis 2022 19:41 Odpowiedzi: 18    Wyświetleń: 1617
  • [C#] Jak utworzyć globalne stałe i zmienne w C# dla wielu plików .cs?

    Rozwiązanie kiepskie: Zadeklaruj zmienną statyczną przed stworzeniem pozostałych klas (formatek itd). Zmienna statyczna w tym zakresie będzie widoczna wszędzie, ale musisz przekazać do niej wskaźnik (przy tworzeniu innych klas/formatek) - bo jakże inaczej byś się do niej "dobrał". Rozwiązanie lepsze: Jeśli to ma być zmienna do ustawień programu - lepiej...

    Programowanie Początkujący   08 Wrz 2012 00:16 Odpowiedzi: 19    Wyświetleń: 4134
  • Tworzenie zmiennych w pętli while vs poza nią: wpływ na pamięć i wydajność (C++)

    To rozumiem to tak że zmienna "i" jest już na stałe w pamięci i zadanie tej funkcji jest wykonywane najszybciej jak to możliwe Tak zmienna ma swoje stale miejsce w pamięci. Nie koniecznie wykonanie jest najszybsze bo najszybciej to działa jak zmienna jest w rejestrze procesora a globalną trzeba zapisać do pamięci przynajmniej przed wyjściem z funkcji...

    Programowanie   06 Sty 2023 20:56 Odpowiedzi: 4    Wyświetleń: 267
  • Jak podłączyć kontraktron do ATmega8515 i ustawić pull-up?

    wszystkie AVR'y mają wewnętrzne pullupy. załącza sie je programowo poprzaez ustawieniu pinu jako wejście i wpisanie 1 do rejestru wyjściowego czyli ddrx=0 portx=&hFF zmienna=pinx 'czytamy cały port pozdrawiam

    Automatyka Przemysłowa   19 Gru 2005 09:20 Odpowiedzi: 4    Wyświetleń: 975
  • [STM32][C] RCC_Configuration - czy o wszystkim pamiętałem?

    "Wtedy program zacina się w momencie kiedy wpisuje do rejestru gotową zmienna konfigurującą pętle PLL (RCC->CFGR = tmpreg;):" Sprawdź i wrzuć tu może wartość tego rejestru w tym momencie.

    Mikrokontrolery ARM   08 Cze 2012 11:34 Odpowiedzi: 13    Wyświetleń: 3037
  • Brak migania diody na mikrokontrolerze STM32 C011: konfiguracja pinów GPIO i rejestry

    Czy działa Systick to łatwo sprawdzić w debuggerze. Zresztą wiele spraw można sprawdzić. Ja bym zaczął od tego czy właściwe rejestry podlegają zmianom. To nie jest nic trudnego, w krokowym trybie Też jaka wartość jest SystemCoreClock, to zmienna globalna. Może ląduje gdzieś w HardFault, zaraz po uruchomieniu. EDIT. Często problemem przy kopiowaniu plików,...

    Mikrokontrolery   21 Lis 2023 12:49 Odpowiedzi: 29    Wyświetleń: 750
  • Jak w C przypisać zawartość rejestru r16 do zmiennej na AVR?

    Zamiast pytać o to jak odwołać się do tego rejestru (co prawda można tworząc zmienną przez jakas_zmienna >>= 1; if(PS_WEJ&0x01) jakas_zmienna |= 0x80; nie tracąc na szybkości (3 cykle przy rejestrze IO dostępnym przez sbic/sbis, 3 przy innym rejestrze [sbrc/sbrs], 5 przy komórce pamięci). Ze względu na skrajny bit można to zoptymalizować,...

    Mikrokontrolery AVR   02 Sty 2009 13:07 Odpowiedzi: 3    Wyświetleń: 1847
  • ARM Keil: Błąd #549 przy wstawce asemblerowej MOV R1,R3 w C

    tego typu instrukcje sa niewskazane we wstawkach, bo nie pozwalaja kompilatorowi dokonac dobrej optymalizacji. niemniej jednak akurat ta instrukcje powrotu mozna wykorzystac i nie powinno z tym byc problemow. pytanie pierwsze: mozna uzyc lekkiego helpa ze strony tworcow assemblera. nalezy najpierw zaladowac wartosc zmiennej do jakiegos tam rejestru:...

    Mikrokontrolery   25 Kwi 2008 18:40 Odpowiedzi: 5    Wyświetleń: 1923
  • Jak zmienić pojemność bufora strumienia cin w C++?

    Tylko co niby wydłużeniu bufora cin (w przypadku wejścia z klawiatury) miałoby dać? Odczyt do tego bufora nie jest asynchroniczny, tylko synchroniczny z wywołaniem funkcji wejściowej w programie. Zatem jaki długi ten bufor by nie był, jeżeli program nie czyta danych na bieżąco, to i tak maksymalna ilość zbuforowanych znaków jest ograniczona długością...

    Programowanie   05 Maj 2008 14:33 Odpowiedzi: 6    Wyświetleń: 3209
  • [AS7][Debuger] - ciągle nie radzi sobie z long int - czy to ja coś knocę?

    To ty się mylisz. rejestr to nie zmienna.

    Mikrokontrolery AVR   15 Gru 2015 14:19 Odpowiedzi: 18    Wyświetleń: 1407
  • TDA8425: Błąd sterowania w Bascomie, jak poprawnie użyć ack/nack?

    Możesz przetestować Funkcję BIN() A = 25 C = 14 D = 14 B1 = switch functions Sub Write I2cstart I2cwbyte 130 I2cwbyte 0 I2cwbyte A ; Głośność kanał L ; zakres 0 - 63 I2cwbyte A ; Głośność kanał R ; zakres 0 - 63 I2cwbyte C ; Bass ; zakres 0 - 15 I2cwbyte D ; Treble ; zakres 0 - 15 I2cstop Waitms 10 I2cstart I2cwbyte 130 I2cwbyte 8 I2cwbyte B1 ; switch...

    Programowanie   12 Sty 2007 21:50 Odpowiedzi: 10    Wyświetleń: 3836
  • Jak porównać liczby i sprawdzić zero w asm dla PIC?

    Nie podałeś ja są przechowywane te dowolne liczby (chyba myślałeś o zmiennych). Dla jednobajtowych (8-bit) użyteczny jest skutek uboczny rozkazu "movf x,x" w postaci ustawienia bitu Z w rejestrze stausowym jezeli ruszony rejestr ma wszystkie bity równe 0. Jeżeli zmienna jest wielobajtowa to wystarczy wykonać "or" na wszystkich jej bajtach i jeżeli w...

    Mikrokontrolery   13 Lut 2007 22:52 Odpowiedzi: 3    Wyświetleń: 1685
  • Versa Max PID w Proficy Machine Edition - zakresy SP, PV i CV

    A jak kopiujecie bloki programowe które są bardzo podobne funkcjonalnie ? Jest mechanizm który zmieni adres i nazwę zmiennej ? Bo ten co znam to dobrze zmienia tylko nazwe przez dopisanie prefixa , ale problem pojawia sięz adresami. Jeśli natrafi na np: %R20 którego długość to 10 słów to pozwala utworzyć zmienna w rejestrze %R21 ... a powinien w %R31,...

    Automatyka Sterowanie PLC   05 Wrz 2016 17:40 Odpowiedzi: 8    Wyświetleń: 1194
  • Rejestry call-clobbered w AVR, zachowanie gcc przy -O2 vs -Os, asm(r3)

    Niestety musze cie zmartwić , ale jest to kod bezpośrednio przekopiowany z kompilacji. Kod if jest tutaj 268: 81 fd sbrc r24, 1 , a ten out, to inicjacja stosu jaka nastepuje w procach avr. OKi, nie można uzywać zmiennych rejestrowych, i to będzie ta odpowiedź, nie doczytałem sie tego niestety, musze poprzewertować jeszcze mana. Ten kod jest poprawny...

    Programowanie   12 Kwi 2007 15:46 Odpowiedzi: 10    Wyświetleń: 1589
  • Jak zrozumieć rozkazy MOV dla mikrokontrolera 8051?

    Witam. Rn oznacza nazwę rejestru np. R1, R2, R3. Rejestr znajduje się pod jakimś adresem w pamięci uC. MOV Rn, #dana powoduje wpisanie do rejestru o nazwie Rn danej o nazwie dana np. Mov R5, #22h. A to akumulator, symboliczna nazwa rejestru tak samo jak R1. Nie jest to zmienna Mov A, Rn oznacza wpisanie do rejestru A (akumulatora) zawartości rejestru...

    Początkujący Elektronicy   16 Cze 2007 21:18 Odpowiedzi: 5    Wyświetleń: 2396
  • ATmega 8 - Jaką wartość osiąga ADCW przy przekroczeniu napięcia odniesienia VREF?

    Witam, chciałbym się Was zapytać jaką wartość osiąga zmienna ADCW (rejestry ADCH + ADCL), przy podczas pomiaru przetwornikiem ADC w mikrokontrolerze przekroczymy wartość napięcia odniesienia (w moim przypadku 2,56V). Chciałbym przekroczenie wartości napięcia na pinie pomiarowym ująć konkretnie w programie, ale nie wiem nawet jaką wartość wtedy osiąga...

    Mikrokontrolery AVR   25 Mar 2015 08:17 Odpowiedzi: 3    Wyświetleń: 1302
  • ATtiny13 - Timer CTC, preskaler 1024, nie reaguje po dodaniu kodu

    Uruchomiłeś: TIMSK0 |= (1<<OCIE0A); przerwanie od porównania a obsługujesz: ISR(TIM0_OVF_vect) przerwanie od przepełnienia. A tak przy okazji: - zmienne zsyp1 i 2 to gdzieś zerujesz? Czy tylko je inkrementujesz aż się przekręcą? - zmienna "CZAS_NA_test" jest niepotrzebna. Równie dobrze mógłbyś w main sprawdzać czy zmienna i>=75 a w przerwaniu...

    Mikrokontrolery AVR   29 Gru 2019 13:48 Odpowiedzi: 9    Wyświetleń: 519
  • AVR attiny2313A - Programowy PWM, brak automatycznego zerowania TCNT0.

    Ok, zastosuję się do wskazówek. Ale dlaczego właściwie zrobienie zmiennej tymczasowej i późniejsze jej używanie zamiast volatile jest szybsze? Chodzi o to, że zmienna volatile cały czas odczytywana jest z pamięci i ładowana do rejestru a zmienna bez volatile, ładowana jest tylko raz? Czy dobrze myślę?

    Mikrokontrolery AVR   27 Lip 2015 13:14 Odpowiedzi: 9    Wyświetleń: 1077
  • Bascom, Rs232, input, przesyłanie znaku z PC do avr

    Czyli mam rozumieć że jak wyślę cos na port RS to te dane pojawią się w rejestrze UDR. I teraz if zmienna=0 then <nic> else <zapisz te dane do rejestru np. I i potem wyświetl> I jak wyświetlę na LCD tą zmienna to powinien wyświetlić te dane?

    Mikrokontrolery AVR   01 Lip 2008 12:42 Odpowiedzi: 35    Wyświetleń: 5558
  • Dość kłopotliwy pomiar czasu - dokładność 1 us

    A na co Ci zewnętrzne liczniki , jeśli sprawę załatwi licznik 16-bitowy + rejestr/zmienna 8-bitowa. Poza tym , ja mówię o bramkowaniu licznika/timera w mikrokontrolerze , przez impuls/sygnał , którego "długość" chcesz zmierzyć :D Piotrek

    Mikrokontrolery   14 Maj 2008 19:10 Odpowiedzi: 15    Wyświetleń: 2359
  • Własności mikrokontrolera a jakość kodu asemblerowego

    Na pewno na pierwszym miejscu jest zestaw instrukcji. Na przykład możliwość łatwego adresowania tablic obiektów o rozmiarze większym niż 1 bajt powiedzmy w ARM, czy w MC68020 i wyższych, lub na przykład wykonywanie operacji na 16 i więcej bitach za pomocą instrukcji operujących na danych ośmiobitowych (dodawanie, odejmowanie, porównanie itd. z propagacją...

    Mikrokontrolery   25 Cze 2008 13:31 Odpowiedzi: 8    Wyświetleń: 1373
  • [GCC] -Os - czyli jak zrobic, zeby gcc nie zjadalo funkcji?

    szelus : nie w tym problem - zmienne w pamięci i tak muszą zostać zaktualizowane, chciaż dodanie volatile powinno zapewnić kolejność aktualizowania zmiennych. Bardziej obstawiał bym na błąd z czasem istnienia zmiennych - zmienna checksum jest tworzona na stosie (zmienne lokalne, których adres jest potrzebny nie są umieszczane w rejestrach), więc jej...

    Mikrokontrolery AVR   12 Lis 2008 13:53 Odpowiedzi: 10    Wyświetleń: 2337
  • [STM32F3] - USART1 działa, USART2 i USART3 nie działają oraz przerwanie

    Czy pamiętałeś o włączeniu portów w ODPOWIEDNIM rejestrze APBENR? volatile nie ma nic wspólnego z AVR. Tego atrybutu używa się np. wtedy, kiedy zmienna modyfikowana przez obsługę przerwania jest testowana przez inny fragment kodu. Pokaż kod procedury przerwania, bo coś tam narozrabiałeś.

    Mikrokontrolery ARM   15 Sie 2013 22:36 Odpowiedzi: 3    Wyświetleń: 1131
  • [atmega8] [atmega8][c] - Jak obsłużyć czujnik Mobot przez I2C i wyświetlić wynik w mm?

    Problem leży w sposobie działania biblioteki TWI_Master i miejsca, skąd jej pośrednio używasz. TIMER0_OVF_vect, jak i każde inne przerwanie, uruchamia się z czasowo wyłączonymi przerwaniami, dlatego ani sonar_request, ani sonar_gets_distance nie zadziała z tego miejsca. Polecenia zostają zakolejkowane, i może tylko TWI::START zostaje wykonany. Możesz:...

    Mikrokontrolery AVR   14 Sie 2014 17:16 Odpowiedzi: 5    Wyświetleń: 1191
  • Program wykrzacza się, gdy zmienna nie jest zadeklarowana jako static.

    IMHO przyczyna leży całkiem gdzie indziej. Może procek się nie wyrabia. W przypadku zmiennej globalnej, na etapie konsolidacji jej adres jest znany, a więc dostęp może być przez adresowanie bezpośrednie. W przypadku zmiennej na stosie prawdopodobnie (nie wiem, domyślam się, nie chce mi się sprawdzać) zachodzi adresowanie pośrednie. Być może z dodatkowym...

    Mikrokontrolery AVR   10 Mar 2021 15:49 Odpowiedzi: 31    Wyświetleń: 1473
  • [STM32F4] Konfiguracja przerwania AWD dla ADC1 na STM32F4 w CoIDE - brak reakcji

    Przesuń wynik z rejestru o 4 bity w prawo i będziesz miał wartość okej. Po prostu masz wyrównywanie tych 12 bitów do lewej w 16 bitowym rejestrze. czyli zmienna = zmienna >> 4;

    Mikrokontrolery ARM   03 Cze 2013 14:50 Odpowiedzi: 8    Wyświetleń: 1932
  • ATMEGA8 przerwania, dioda świeci zamiast być zgaszona po uruchomieniu

    Każda zmienna wykorzystywana w przerwaniu i pętli głównej lub w 2 przerwaniach musi być typu volatile. Normalnie zmienna jest kopiowana do rejestru i program operuje już na ty rejestrze. Przerwanie może zostać wywołane w każdej chwili wobec czego program nadal wykorzystuje ten rejestr mimo zmiany wartości zmiennej w przerwaniu. Jeśli zmienna jest typu...

    Początkujący Naprawy   07 Lut 2011 22:30 Odpowiedzi: 10    Wyświetleń: 1277
  • Jak utrzymać aktualny czas w STM32f103 RTC po odłączeniu zasilania?

    Masz funkcje RTC_GetTimer i RTC_SetTimer które odczytują i zapisują ten licznik oczywiście można to zrobić też bez tej biblioteki. A jesli jednak 32 bity to za mało to zawsze można dodać dodatkową zmienna przechowywaną w rejestrach podtrzymywanych bateryjnie i zwiększać ją gdy licznik przepełni się ;) Jak już bedę w domu to coś dokładniej Ci napiszę...

    Mikrokontrolery ARM   03 Lis 2011 18:03 Odpowiedzi: 7    Wyświetleń: 2743
  • Komunikacja komputera z mikrokontrolerem przez LPT.

    Po drobnych modyfikacjach w/w programu udało! mi się jednak zestawić tą transmisję :D Zastanawiam się jednak po co robię takie kombinacje alpejskie skoro transmisja z lpt do uP może działać na dwóch liniach na zasadzie podobnej do spi - na jednym int (clk) i dowolnym porcie (miso). Wystarczy przerwanie i badanie stanu drugiego pinu. Jedna zmienna robiąca...

    Mikrokontrolery   04 Lut 2007 01:01 Odpowiedzi: 41    Wyświetleń: 5600
  • Kinetis - eclipse - przekazywanie zmiennych z C do asm i odwrotnie

    witam, potrzebuję zrobić kilka wstawek asmemblerowych do programu napisanego w C. Kompilator to CodeWarrior oparty o eclipse. Mam problem z przeniesieniem zmiennej z języka C do asm i odwrotnie. Od dłuższego czasu szukam rozwiązania w sieci, ale nic sie nie kompiluje... mam takie coś: i = 67; __asm(" mov r0, i "); Co robię źle, co...

    Mikrokontrolery ARM   12 Sie 2013 19:51 Odpowiedzi: 3    Wyświetleń: 1620
  • atmega128 - bascom konfiguracja timera 1 oraz 3 w trybie CTC

    .Czy ktoś może wie w czym tkwi problem/spotkał się z taką sytuacją? A zmienna, której wartość kopiujesz do OCR3A/PWM3A nie jest przypadkiem zadeklarowana jako BYTE ? Jeżeli to nie to, to spróbuj zapisywać rejestry OCR3 osobno - OCR3AH, OCR3AL.

    Mikrokontrolery AVR   19 Sie 2014 21:21 Odpowiedzi: 4    Wyświetleń: 1320
  • Jak wysłać char szeregowo przez pin w AVR za pomocą ASM?

    daną ładujesz do rejestru w ten sposób, że po prostu tworzysz zmienną na stałe przypisaną do rejestru: register char zmienna asm("r5");

    Mikrokontrolery   23 Cze 2004 06:57 Odpowiedzi: 9    Wyświetleń: 1721
  • [ASSEMBLER] Rzutowanie PTR w TASM - problem z wartościami w rejestrze AX

    PTR to nie jest rzutowanie, jakie występuje w językach wysokiego poziomu, tylko traktowanie. Po prostu jest spod adresu wskazanego zmienną pobierane WORD danych. Jako, że sama zmienna jest tylko typu bajt, to w rzeczywistości zostaną pobrane wartości ze zmiennej Byte1 i Byte2 w kolejności.

    Programowanie   01 Gru 2011 22:03 Odpowiedzi: 3    Wyświetleń: 2424
  • Xmega serii 128A1 i AT45DB321D - Czy ASM, czy też ...

    Czy ten zapis jednoznacznie świadczy o fakcie pisania w ASM ? Usartc0_data = zmienna Gdyby to było w asemblerze, to zapisałbyś to jakoś tak: [syntax=asm] LDS R24,ZMIENNA STS USARTC0_DATA,R24 lub z użyciem rejstrów indeksujących: LDIZL,LOW(USARTC0_base) LDI ZH,HIGH(USARTC0_base) LDI XL,LOW(ZMIENNA) LDI XH,HIGH(ZMIENNA) LD R24,X STD Z+0,R24[/syntax]...

    Mikrokontrolery AVR   14 Mar 2014 18:29 Odpowiedzi: 7    Wyświetleń: 1518
  • STM32F4 - Zmienne lokalne szybsze niż zmienne globalne.

    Zmienna może być w rejestrze i chyba żadnych wymagań standardu to nie pogwałci. c.b.d.o. No... słowa "może" i "chyba" podkreśliły wagę Twojego dowodu (; 4\/3!!

    Mikrokontrolery ARM   26 Lut 2014 12:09 Odpowiedzi: 34    Wyświetleń: 4734
  • ATMEL 89c51cc01 Assembler - Zamek szyfrowy na rejestrach - kod sortujacy

    Od pewnego czasu tylko piszę w C i to zupełnie na inne mikrokontrolery, lecz naskrobałem takie "cóś": [syntax=asm] liczba equ 72h ; przechowywana liczba podana przez uzytkownika czy_kod_poprawny equ 73h ; zmienna "flaga", jesli wartosc 0 to kod poprawny org 0h; start: mov R0, #3 ; ilosc cyfr mov R1, #0 ; offset w tablicy mov DPTR, #haslo mov czy_kod_poprawny,...

    Mikrokontrolery Początkujący   08 Maj 2014 16:35 Odpowiedzi: 5    Wyświetleń: 1473
  • [ASM dla ATMELi] Problem z RET - "Invalid opcode"

    Stos nie jest ustawiany na r16. Rejestr r16 służy do zapisania w rejestrach wskaźnika stosu SPH i SPL (jeden odpowiada starszemu bajtowi, drugi młodszemu) odpowiednich wartości. RAMEND to zmienna zadeklarowana w plikach *.inc dla każdego procka. Oznacza ona ostatni adres w pamięci RAM. HIGH(RAMEND) i LOW(RAMEND) służą do 'wyciągnięcia' z tej wartości...

    Mikrokontrolery   14 Mar 2006 16:24 Odpowiedzi: 3    Wyświetleń: 2728
  • [STM32] [STM32][C] - USART z DMA nie działa po przeniesieniu do funkcji

    To co wpisujesz do rejestru MOAR to jest "adres adresu" (wskaźnik na wskaźnik) a raczej nie o to Ci chodzi... Tym bardziej że w tym kontekście tab to zmienna lokalna, więc i tak nie zadziała jak trzeba. DMA1_Stream6->M0AR = (uint32_t)&tab; 4\/3!!

    Mikrokontrolery ARM   04 Paź 2012 11:21 Odpowiedzi: 4    Wyświetleń: 957
  • Dlaczego zmienna alarm resetuje się po przerwaniu na Atmedze16?

    dawid512 : ?. "CLI" blokuje wywoływanie przerwań, ale nijak nie przekłada sie na równoważność z wyjściem z funkcji. dreidel : Funkcji obsługi przerwania napisanej w C nie opuszcza się przez reti - wtedy tylko możesz spowodować przepełnienie stosu (na stosie zawsze są odkładane co najmniej 2 rejestry), zresztą powracasz nie do miejsca, w którym nastąpiło...

    Mikrokontrolery AVR   19 Maj 2009 22:05 Odpowiedzi: 3    Wyświetleń: 1707
  • Wyświetlanie zmiennej na 4-cyfrowym wyświetlaczu LED w Bascom AVR

    wyswielic stale ktore juz miale przypisane do poszczegolnych wyswietlaczy tez mi sie udalo natomiat nie wiem jak wyswielic zmienna z jakiegos rejestru ktora jest czterocyfrowa (dziesietnie) i wyswietlic odpowiednio jednosci na 1 wys, dziesiatki na 2 itd z tego co czytalem to trzeba uzyc dzielenia z reszta ale nie wiem jak to ma wygladac

    Mikrokontrolery   13 Mar 2006 09:52 Odpowiedzi: 20    Wyświetleń: 2495
  • Jak zapisać i odczytać bajt danych z rejestrów w BASCOM '51?

    jesli koledze chodzi tylko o zapis i odczyt z rejestrow to nie ma zadnego problemu wystarczy jedynie uzyc zwykledo assemblerowego mov. np. chcesz zapisac do rejestru r0 ze zmiennej to piszesz mov r0,{zmienna} a przy odczycie odwrotnie mov {zmienna},r0

    Mikrokontrolery   08 Gru 2003 14:07 Odpowiedzi: 4    Wyświetleń: 1303
  • Szybkie przesyłanie liczby 16-bitowej na porty w AVR mega8 w C

    W czystym C mozesz zrobić tak: Załóżmy, że liczba do wysłania to A. Deklarujemy wskaźnik: unsigned char *p p=&A; PORTB=A; //pierwszy port (można uzyc PORTB=*p; PORTC=*(p+1); //drugi port Jednak niekoniecznie bedzie to szybkie. Wszystko zależy od rodzaju kompilatora, jak jest realizowana zmienna - czy w rejestrach czy w pamięci, jak są realizowane wskaźniki....

    Mikrokontrolery   25 Lut 2007 17:47 Odpowiedzi: 4    Wyświetleń: 1683
  • Jak odczytać i modyfikować zmienne Timer1 i Timer2 w różnych plikach?

    Bo to bardziej skomplikowane jest - ty chcesz od tyłu wprowadzić multitasking. A to nie takie proste. Albo zrób obsługę silnika na przerwaniach, a w programie głównym modyfikuj tylko flagi sterujące wykonaniem kodu w przerwaniu, albo zmień menu tak, aby wysyłało komunikaty do kolejki. Zawsze przy takiej okazji polecam: http://www.sics.se/~adam/pt/...

    Mikrokontrolery   01 Sie 2011 11:54 Odpowiedzi: 52    Wyświetleń: 3750
  • Różnice między `int` a `volatile int` w AVR - jak to działa?

    witajcie ,w asemblerze nie bardzo wiem co i jak wiec kiepsko będzie z analizą kodow w c przydąłyby się jakieś rysunki , mam nadzieje że ten post stanie się pomocny dla takich jak ja początkujacych , zdefiniowana zmienna volatile- nie wedruje do rejestru ale operacjie na niej są przeprowadzane na niej z poziomu ramu tam też zachodzą zmiany które zachodzą...

    Mikrokontrolery   25 Kwi 2011 11:29 Odpowiedzi: 6    Wyświetleń: 2319
  • Przykłady zastosowań unii i struktur w języku C (embedded)

    Często stosowane w dostępie do rejestrów gdzie są oddzielne pola bitowe czy bajtowe o różnych funkcjach. [syntax=c] typedef union { uint32_t wartosc; struct { uint8_t bt0; uint8_t bt1; uint16_t wr0; }bajty; }moj_rejestr_a; .............. // zmienna lokalna do modyfikacji rejestru moj_rejestr_a loc_rej_a; // wczytanie całego rejestru jako wartości 32...

    Mikrokontrolery AVR   26 Cze 2022 12:44 Odpowiedzi: 19    Wyświetleń: 1074
  • problem z programem na pic18f2455[pierwszy program]

    ADRES to nie jest "zmienna", to rejestr (AD_RESult, w skrócie ADRES), w którym jest przechowywana wartość z po konwersji AD (wartość rejestru ADRES jest zapisywana wewnętrznie przez uC a nie przez soft), w poniższym kodzie: [syntax=csharp] int ReadTEMP(unsigned char Channel){ ADCON0=(Channel<<2) | 1; ADCON2=0b10110101; //Right justify - Fosc/16...

    Mikrokontrolery PIC   25 Maj 2011 06:36 Odpowiedzi: 21    Wyświetleń: 2252
  • XMega 128 - odczyt danych z tablicy w pętli - problem z ADIW i zmiennym adresem

    Kolega wyżej podał bardzo fajną pętlę [syntax=avrasm] lpm R0,Z+ ;odczyt st Y+,R0 ;zapis dec R16 [/syntax] Jeśli chcesz kopiować od jakiegoś adresu w tablicy to do Z dodajeszsz offset przed rozpoczęciem petli a w r16 masz ilosc elementów do skopiowania. Jeśli chcesz więcej niz 256 to musisz zrobić licznik na dwóch rejestrach które będziesz dekrementował...

    Mikrokontrolery AVR   29 Paź 2015 15:26 Odpowiedzi: 7    Wyświetleń: 1452
  • Skok do etykiety w programie po wykonaniu przerwania - jak?

    Oto przykładowy programik, który nic nie robi ale ma obsługę od przerwania INT0 i w zależności od stanu zmiennej o nazwie "zmienna" wykonuje tą obsługę albo nie. Dla urealnienia problemu zakładam, że używam w programie "akumulatora" R16 (czyli rejestru do wszystkiego) oraz rozpoczynam obsługę przerwania od zabezpieczenia tego "akumulatora" i rejestru...

    Mikrokontrolery   16 Paź 2004 19:34 Odpowiedzi: 36    Wyświetleń: 4047
  • Stm32 Nucleo - Generowanie sygnału o zadanej ilości impulsów.

    (at)excray, (at)es2, w stm32 jest coś takiego jak rejestr powtórzeń licznika - więc zmienna / licznik stanu nie ma sensu ;) Dygresję nie na temat usunąłem.

    Mikrokontrolery ARM   03 Sty 2018 08:54 Odpowiedzi: 4    Wyświetleń: 1227
  • ATtiny 12: asembler - zwiekszanie zmiennej w przerwaniu

    Chcę kożystać z przerwania INT0, a w nim o jeden powiększać zmienną zapisywaną w rejestrze np.: r20. Niestety po powrocie z przerwania zerowany jest stan rejestrów, awięc zmienna znika. Komend Push i Pop nie ma w ATtiny12. Jak operować na zmiennych? Jak odkładać je na stos?

    Mikrokontrolery   06 Sie 2006 02:24 Odpowiedzi: 11    Wyświetleń: 2095
  • dsm i 8-bitowy sumator, klawiatura matrycowa, asembler.

    no przeciez juz to sam napisales... rotacja sobie wrzucasz bit do Carry, nastepnie przerotowywujesz owe Carry dalej do jakiegos (wyczyszczonego wczesniej) rejestru na dowolna pozycje, choc najlepiej na LSB. dokladnie to samo robisz dla drugiej zmiennej, tyle ze wykorzystujesz jako adres drugi rejestr. czyli ze jesli akurat twoim bitem aktualnym jest...

    Mikrokontrolery   17 Sty 2008 08:16 Odpowiedzi: 35    Wyświetleń: 3893
  • [AtMega16] [AtMega16][C] - Implementacja multitaskingu dla odczytu ds18b20 i sterowania GPIO

    Powrócę jeszcze do tematu. Timery programowe to objaśnił Mirekk36 w swojej książce oraz artykułach i wideo poradnikach, bardzo dobrze je się stosuje. Jest to proste, wystarczy ustawić jakiś timer w tryb CTC i wywoływać przerwanie co jakiś zamierzony czas (stosuje około 10ms). F_CPU/Prescaler/100 Zaokrągloną wartość wpisujemy do rejestru OCRx. W przerwaniu...

    Mikrokontrolery AVR   13 Kwi 2013 20:38 Odpowiedzi: 24    Wyświetleń: 2646
  • Budowa i kalibracja czujnika światła z wykorzystaniem BASCOM i m328p

    To akurat nieprawda. Tutaj to taka histereza bo nie porównujemy czy jest mniejsze czy nie, tylko do dwóch różnych wartości . (W Zajete oblicza Prog_gorny a w Wolne na odwrót) Niestety ten zapis jest jednak nieefektywny bo za każdym IF`em zmienna musi być ponownie załadowana do rejestrów celem porównania. Jeśli jest to ta sama zmienna to efektywniej...

    Mikrokontrolery AVR   22 Kwi 2021 19:40 Odpowiedzi: 38    Wyświetleń: 1770
  • AVR - jak radzić sobie z fusebitami i ograniczeniami 8-bit?

    są identyczne i tożsame. Nie są tożsame ani identyczne. Chodzi mi tylko o końcowy efekt pracy programu. Dla rejestrów volatile ma ogromne znaczenie kolejność i rejestr (druga zmienna) może nie być w ogóle odczytany (i np. flagi/statusy sprzętu nie zostaną ustawione/wyzerowane), w zależności od wartości pierwszej zmiennej. I to nie z powodu optymalizacji,...

    Projektowanie i Tworzenie Po godzinach   30 Sty 2020 18:45 Odpowiedzi: 368    Wyświetleń: 17283
  • Jak połączyć rejestry ADCL i ADCH w ATMega16 dla 10-bitowego ADC?

    Zaraz za zmienna wysyłaj kilka spacji, bez żadnych warunków.

    Mikrokontrolery   04 Cze 2007 21:23 Odpowiedzi: 20    Wyświetleń: 2551
  • [atmega] Jak odczytać stan pinów PB.1, PB.2, PD.6, PD.7 do zmiennej byte w Bascom?

    Tak tego nie zrobisz. Zmienna X jest zamazywana nowym stanem rejestru PIN. Próbuj dalej.

    Mikrokontrolery AVR   10 Lut 2009 19:09 Odpowiedzi: 9    Wyświetleń: 2429
  • Przenośna konsola z kolorowym TFT - DMA -wydzielone

    Optymalizacje :D No właśnie. A BASCOMowi są one obce. Wciąż nie wiem jak działa bascom...;] BASCOM wszystko robi na pamięci RAM. Nawet zmienną licznikową pętli For za każdym razem pobiera i powtórnie odsyła do pamięci. W rejestrach tylko operuje. Było to nawet wygodne bo w takiej wersji zawsze wiadomo było gdzie jest dana zmienna (w którym rejestrze,...

    Mikrokontrolery AVR   21 Lip 2015 16:25 Odpowiedzi: 124    Wyświetleń: 8541
  • Przykładowe kody na rejestrach dla STM32F3 Discovery – gdzie znaleźć dokumentację?

    Żadnego sensu, ale też sensu nie było robić wersji z buforem jak mam problemy z przerwaniami. warunek [syntax=c] if (isr & USART_ISR_RXNE) {...} [/syntax] jest uruchamiany automatycznie mam rozumieć i jeżeli nie mam bufora to zmienna data_rx jest cały czas nadpisywana?

    Mikrokontrolery ARM   23 Cze 2015 22:26 Odpowiedzi: 45    Wyświetleń: 3117
  • AVR-GCC - Jak znaleźć nazwy rejestrów dla ATxmega16A4 w Atmel Studio?

    Bo nie ma to żadnego znaczenia, gdzie jest spacja? Dodano po 3 BTW, zapis typ *zmienna, to nie deklaracja, a definicja zmiennej. Deklaracją byłoby np. extern "C" typ *zmienna.

    Mikrokontrolery AVR   03 Lis 2012 14:17 Odpowiedzi: 24    Wyświetleń: 2865
  • Operatory bitowe w Bascomie - jak używać do odczytu rejestru CSD MMC?

    W bascomie można tak: 'zmienna_long = (zmienna_byte & 3) << 10; Zlong = Zbyte And 3 Shift Zlong , Left , 10 'zmienna_long |= (zmienna_byte <<2) & 3; // ???????? Shift Zbyte , Left , 2 Zbyte = Zbyte And 3 Zlong = Zlong Or Zbyte Pozdrawiam Piotrek

    Mikrokontrolery   07 Cze 2005 19:37 Odpowiedzi: 3    Wyświetleń: 1056
  • Dynamiczna zmiana wartości wypełnienia PWM w Timer3 [stm32f103]

    1. Biblioteki ST są do d... (wszyscy to piszą, to ja też) 2. Żeby zmienić wartość jednego rejestru niekoniecznie trzeba wywoływać cała inicjalizację timera (patrz post powyżej) 3. Popatrz w Swoją pętlę główną. Zanim zdejmiesz paluch z klawisza, pętla obróci się kilkaset (kilka tysięcy?) razy i zmienna c pójdzie poza zakres.

    Mikrokontrolery ARM   17 Wrz 2012 04:27 Odpowiedzi: 4    Wyświetleń: 1782
  • Zmiana obsługi przerwania CAN w nowych wersjach CubeMX dla STM32F4

    Bawiłem się ostatnio CAN'em na STM32F103. Program "demonstracyjny" nie został w pełni ukończony ale działa. Można by poeksperymentować z filtrami bo na początku konfigurowałem wszystkie (albo więcej niż wszystkie). Załączam ważniejsze pliki. Cube nie robi niestety wszystkiego. Sama konfiguracja jest w Cube (nowym). W programie używałem rejestrów. STM...

    Mikrokontrolery ARM   10 Lut 2020 18:07 Odpowiedzi: 9    Wyświetleń: 1047
  • Jak użyć przerwań do wykonywania procedury co sekundę w AVR?

    Mozesz zrobic tak: Tajmer ustawiasz tak zeby liczyl powiedzmy 50ms. W procedurze obslugi przerwania po pierwse przeladowjesz go zeby liczyl znowu 50ms, nastepnie zwiekszasz jakis rejestr (zmienna) i sprawdzasz czy jest 20, jesli jest to masz juz zliczona sekunde wiec robisz to co chciales, zerujesz rejestr i od nowa (najlepiej to zorganizowac w ten...

    Mikrokontrolery   05 Lip 2005 15:56 Odpowiedzi: 12    Wyświetleń: 1581
  • Jak odczytać stan 4. bitu rejestru R6 w Attiny 13 w Bascom?

    Niestety: If R6.4 = 0 Then nop End If ani nawet: If R6 = 0 Then nop End If się nie skompiluje. Pozostaje odczyt rejestru do zmiennej i testowanie zmiennej (O zgrozo - odczyt rejestru do zmiennej :D. Żeby potem i tak zmienna była odczytywana do rejestru i tam sprawdzana.), albo assembler: sbrc R6, 4 jmp Zrob_to nop nop nop nop jmp Zrob_tamto !Zrob_to:...

    Mikrokontrolery AVR   25 Paź 2009 11:03 Odpowiedzi: 7    Wyświetleń: 2774
  • WinAVR: Jak efektywnie używać tablicy pól bitowych?

    W twojej pierwszej deklaracji jest nieszczęście. Spróbuj tak: struct TPole{ unsigned char bit_0:1; unsigned char bit_1:1; . . unsigned char bit_7:1; } bit_field; zdefiniuj dodatkowo takie coś: #define Get_bit(adr) (*( (volatile bit_field*) (adr) ) ); Teraz chcąc wyłuskać jakiś bit piszesz: zmienna = Get_bit (i tu adres właściwy bajtu na którym ci zależy...

    Mikrokontrolery   02 Cze 2005 17:52 Odpowiedzi: 4    Wyświetleń: 2033
  • Jak odblokować Windows CE6 na nawigacji Lark 50.9?

    Najczesciej Rejestr jest jakby podzielony jest na czesc zapisana na stale w ROM, mozesz ja sobie zbackupowac, ale ponownemu zapisaniu podlega TYLKO pdczas wgrywania od nowa Firmware (nie mylic z zawartoscia pamieci residentFlash) Druga czesc Rejestru jest zmienna i zapamietywana w ten sam sposob jak pliki na Flashu - jak zmodyfikujesz, tak bedziesz...

    Nawigacje Software   20 Mar 2016 18:34 Odpowiedzi: 18    Wyświetleń: 23352
  • 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ń: 3738
  • Rejestracja temperatury maksymalnej i minimalnej w Node-Red: funkcja i wartości ujemne

    Skrypt w ogóle nie zadziała. Powód taki, że najpierw czytasz zawartość np. flow.get("tempMax"), a jeśli takiej nie ma to zmienna przypiera postać undefined. Po drugie by działały poprawnie operatory porównania to obie strony muszą być liczbami i to typu float (ujemne dane) [syntax=javascript]var t = parseFloat((msg.payload*1).toFixed (1)); var Tmax...

    Smart Home IoT   12 Mar 2021 16:46 Odpowiedzi: 6    Wyświetleń: 1209
  • atrybut "volatile" dla struktury danych - niezgodność

    Zgadza się, jeśli zmienna jest volatile, to kompilator musi bezwzględnie realizować wszystkie dostępy bez buforowania odczytu ani opóźniania zapisu. Jak by nie patrzeć, kompilator optymalizuje kod zakładając liniowy(sekwencyjny) sposób wykonywania: w obrębie danej funkcji (jaka by ona nie była: program główny, przerwanie czy cokolwiek innego) można...

    Mikrokontrolery   28 Sie 2011 09:32 Odpowiedzi: 23    Wyświetleń: 3667
  • Pomiar odległości ultradźwiękami BASCOM - zobaczcie do kodu

    Zamiast Bitwait Pinc.3 , Set wpisz: Blad=0 Do If Timer0 > 200 Then Blad=1 Exit Do End If Loop Until Pinc.3=1 Wyskok z petli nastepuje kiedy warunek Pinc.3=1 albo kiedy Timer0 > 200. Wartosc 200 to oczywiscie przyklad :-) Drugie pytanie. Mozna dokladniej zmierzyc, choc to jest Timer0 8-bitowy. Robisz nastepujacy prosty trick: 1. deklarujesz zmienna...

    Mikrokontrolery   30 Wrz 2006 22:29 Odpowiedzi: 6    Wyświetleń: 3186
  • Wykorzystanie stosu w AVR do przechowywania rejestrów w asemblerze

    Oczywiscie ze mozesz nuzywac nazw rejestru w roznych czesciach programu. A do przechowywania zmiennych zdecydowanie uzywaj RAM-u. Zreszta stos jest czescia RAM-u tyle tylko ze dostep do niego jest przez inne instrukcje i trzeba dbac o kolejnosc. Czytelniej chyba jest gdy napiszesz tak: .equ rTemp1=R16 zmienna1: .BYTE 1 lds rTemp1, zmienna1 ;laduje...

    Mikrokontrolery   28 Wrz 2006 00:59 Odpowiedzi: 9    Wyświetleń: 5329
  • Jak poprawnie odczytać 10-bitową wartość ADC z rejestrów ADCL i ADCH w C?

    Dobrze. Zmienna value_adc0 nie musi być volatile , chyba, że odwołujesz się do niej jednocześnie w programie głównym i w przerwaniu (przerwaniach).

    Mikrokontrolery   22 Wrz 2007 09:14 Odpowiedzi: 3    Wyświetleń: 1092
  • Zmienne w C i ASM. Unsigned int - 16 bit. 8 bitowy procesor.

    Wszytskie zmienne daklarowane w C są przekazywane do ASM poprzez rejesrty R0-R7. W opisie kompilatora powinno to być opisane jaka zmienna w jakich rejestrach. C działa na funkcjach gdzie do funkcji są przekazywane oraz odbierane zmienne. Funkcja może być napisana w całości w ASM i wtedy z języka C przekazuje się zmienne właśnie poprzez rejestry. Robienie...

    Programowanie   30 Sty 2007 20:56 Odpowiedzi: 8    Wyświetleń: 2340
  • Bascom: Silnik krokowy obraca się o ten sam kąt na PinD.0 i PinD.1

    Portb = Mem_wiert ustawia na porcie odpowiednią kombinację stanów Mem_wiert = 1 - Końcówka 0 stan wysoki; reszta niski Mem_wiert = 2 - Końcówka 1 stan wysoki; reszta niski Mem_wiert = 4 - Końcówka 2 stan wysoki; reszta niski Mem_wiert = 8 - Końcówka 3 stan wysoki; reszta niski portb=0 wyłącza zasilanie silnika. Łatwiej jest sterować portem za pomocą...

    Mikrokontrolery   23 Paź 2006 20:22 Odpowiedzi: 6    Wyświetleń: 1883
  • Brak możliwości odczytu/zapisu parametru 0x0005 falownika LG iG5A po Modbus RTU

    Nie chce mi się czytać instrukcji, napisz konkretnie jaki rejestr chcesz odczytać z falownika, tutaj masz błąd w Adres 4 to zmienna Ineger czy Dint jeżeli Dint to zaznaczasz 4xbit za rejestrem nie może być # tylko zapisujesz jako ciąg rejestru 01305 rejestr 13 bit 5 w screnie masz podpowiedz, jeżeli jest to Integer to i tak nie może być # https://obrazki.elektroda.pl/7175554800_...

    Automatyka Falowniki   13 Sty 2022 09:00 Odpowiedzi: 4    Wyświetleń: 774
  • [AT91SAM7X] [AT91SAM7X][Eclipse][C] Rozbieżność wartości zmiennych w debugowaniu

    Drugie co się nasuwa to że PDC_TCR to jakiś rejestr, a nie zmienna, którego wartość odczytana nie jest taka sama jak zapisana lub którego zawartość zmienia się sprzętowo niezależnie od tego, że zastopujesz procesor (np. timer) Ale mogę się mylić bo ARM'y Atmela omijam z daleka. Albert

    Mikrokontrolery ARM   17 Wrz 2008 11:01 Odpowiedzi: 4    Wyświetleń: 3021