Ogólnie pod windowsem... Windows blokuje przerwania, na pewno w XP i wyżej. 95,98 Me itd. pewności nie mam ale pewnie też. Bajdewej ten kod jest poprawny i pod VS działa: char c; __asm { mov AH, 0x31 mov c, AH } cout << c << endl; Wypisuje na ekranie "1", więc ok.
Może chodzi to różne tryby pracy procesora jak tryb uprzywilejowany oraz tryb użytkownika. Gdzie zmienia się zestaw rejestrów przy zmianie trybów dzięki czemu aplikacja nie ma dostępu do rejestrów których używa system.
Jest taka książeczka - Anatomia PC (Helion bodajże wydaje). Gdyby Ci się udało ją zrobyć (w wersji papierowej lub elektronicznej) - znajdziesz tam wszystko co Ci potrzebne (a nawet wiecej).
To samo. Musisz najpierw odczytać wartość z rejestru I/O instrukcją IN, a później sprawdzić bit już w rejestrze procesora.
Do wyprowadzeń CAN L i CAN H nie można podłączać nic oprócz rezystorów terminujących, sygnalizację za pomocą diod LED można zrobić odczytując programowo znaczniki odebrania ramki CAN, każda transmisja na magistrali CAN uruchamia flagi w rejestrach procesora. Programowo można uruchamiać przez port procesora diody Led w zależności o odebranych danych,
http://physinfo.ulb.ac.be/cit_courseware... polecam google :)
Tu masz do atmegi16, powinien wystarczyć. http://chip.ict.pwr.wroc.pl/pliki/ATmega... Pozdrawiam.
Log.txt jest plikiem tworzonym przez Bochs. Zapisane są w nim dane startowe i kończące pracę systemu. W przypadku błędów w kodzie zostają w nim zapisane: rodzaj błędu, rejestry procesora itp. Plik ten znajduje się w katalogu Bochs'a.
RLO to bit w rejestrze procesora. Tak w dużym uproszczeniu jest on wynikiem operacji logicznych typu A, O, itp. Instrukcje typu =, JC sprawdzają stan RLO i w zależności od jego stanu odpowiednio reagują. co do drugiego i trzeciego pytania to nie bardzo o rozumiem
DPTR - to dość specjalny rejest - jest jakby łącznikiem między procesorem, a zewnętrzną pamięcią R0 - R7 - to rejestry procesora http://izi-creth.w.interia.pl/89_pam.htm... - szerszy opis Szczegóły kopiowania 8/16 bitów znajdziesz w necie, z tego co pamiętam, to jest kilka sposobów.
Proponuję zacząć od [url=http://www.st.com/stm8]http://www.s...
Witam Zaczynam zabawe w programowaniu w assemblerze (masm 8.0) i mam pytanko - wie ktoś może jakie są najlepsze debuggery? Chodzi mi o taki, w którym można krok po kroku, instrukcja po instrukcji uruchamiać mój program źródłowy i na bieżąco mieć podgląd na wszystkie rejetry procesora. Dzieki i pozdrawiam
Czy ktoś zna jakąś dobrą ściągawkę do "gdb" (GNU debugger)? Czasem potrzebuję tego użyć - zbyt rzadko, by pamiętać jego polecenia, a przeglądanie helpa, żeby coś znaleźć, jest bardzo czasochłonne. W szczególności: nie wiem, czy można zobaczyć wybrane rejestry procesora ("info registers" pokazuje wszystkie, i to dużo miejsca zajmuje), i jak oglądać pamięć;...
ADC10MEM to nie komenda. To rejestr procesora. Poczytaj w dokumentacji jak on działa. Bo przypisanie mu wartości to operacja bez sensu. Pomiary nie wpadają do tablicy. To Ty je tam wkładasz. Ale musisz włożyć w konkretne miejsce, z którego potem chcesz brać. Zasada jest mniej więcej taka: Konfigurujesz pomiar pierwszego wejścia Mierzysz Zapisujesz wynik...
Zadałeś pytanie: Jak działa mój kompilator C ? 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. Natomiast jeśli jest pamiętana w SRAMie to czas dostępu do niej nie powinien różnić się od czasu dostępu do zmiennej globalnej....
To przy budzeniu przerwaniem przy pierwszym sygnale przerwaniu wykona się przerwanie i w nim kod? Tak. Warto zapoznać się z: https://www.nongnu.org/avr-libc/user-man... znacie jakieś sposoby na resetowanie mikrokontrolera oprócz wykorzystania sprzętowego. Skok pod adres 0 nie resetuje rejestrów procesora (np. DDRx) i trzeba to...
Mam jeszcze pytanie co to kurcze własciwie jest to DMA ? DMA (z ang. Direct Memory Access) czyli bezpośredni dostęp do pamięci. Chodzi o to, że dane przesyłane są z np. urządzenia I/O jakim jest nagrywarka do pamięci z pominięciem rejstrów mikroprocesora. Dzięki temu zapis jest duzo szybszy niż gdyby używać metody standardowej czyli poprzez rejestry...
Pierwszy serwis jest standardowy służy do pobierania informacji o urządzeniu. Nie jest istotny. Podobnie jak ostatni. Te dwa środkowe są specyficzne dla tego produktu. Jeden z nich służy więc do sterowania. Tak jak już napisałem dany serwis zawiera jedną lub więcej charakterystyk. Charakterystyki to coś podobnego do rejestrów procesora. Mogą być tylko...
No chyba to co w każdym: ustawiają parametry taktowania procesora.
Wez pierwszy kod i popatrz na niego uważnie. To jest kilka linijek. Jeżeli nie znajdziesz błędu, to odpuść. Nie ma in nic wspólnego z procesorem, rejestrami itp.
w zasadzie co tam wyjasniac?? program jest jasny i klarowny no ale jak juz chcesz to pokusze sie o przeanalizowanie paru linijek function PCI_FIND_DEVICE(var CARD_INFO:PCI_CARD_INFO) :boolean; begin r.ah:=$B1; // przypisanie rejestrowi procesora AH wartosci 0xB1 r.al:=$02; // przypisanie rejestrowi procesora AL wartosci 0x02...
Czyli adres procesora w trybie i2c-slave wpisuję do rejestru TWAR? Adres i2C - procesor nie ma adresu. Działając jako slave staje się urzadzeniem i2c.
Te procesory się aż tak nie różnią. Dodatkowe funkcjonalności pinów nie przeszkadzają w niczym dopóki ich nie uruchomisz. (PCINT - Pin Change Interrupt trzeba wiedzieć jak włączyć). Jest duża różnica jeśli chodzi o Timery właśnie. Mega8 ma na przykład tylko jeden rejestr Compare dla Timer2 dlatego inaczej się nazywają. Opisałem to u siebie na stronie...
Jest ok, tylko emitery tranzystorów są niepodłączone do zasilania. Podobnie piny AGND i AVcc procesora. Rejestr szeregowy ciągle nie podłączony do interfejsu SPI. Na wyjściach rejestru muszą być rezystory ograniczające prąd.
http://hell.pl/agnus/slowniczek.html context storage -- pamięć kontekstowa - zapamiętywanie kontekstu. w systemach pamięć kontekstu to wyznaczony przez jądro fragment pamięci, w którym procesor przechowuje rejestry procesu, zawartość FPU (floating point unit - koprocesor - procesor arytmetyczny), rejestry segmentowe, itd.. tz wszystko co określa aktualny...
Sprawa jest chyba trochę bardziej skomplikowana niż myślisz. Dla większości osób przesyłanie danych przez Bluetooth kojarzy się z portem szeregowym i profilem SPP. W przypadku BLE takie pojęcia w zasadzie nie mają sensu. Smartfon po połączeniu z modułem będzie mógł zapisywać/odczytywać dane do/z tzw. charakterystyk. Te charakterystyki przypominają trochę...
Chyba pokręciłeś rejestry peryferiów z rejestrami procesora. To nie jest to samo i to że masz jedną linijkę zapisu wartości stałej do jakiegoś adresu, nie oznacza, że jest to jedna instrukcja procesora.
Witam !!! Osobiście zrobiłbym to na timerze i sterował wyjściem w przerwaniu ale do tego musiałbym wiedzieć jaki masz kompilator aby odpowiednio napisać funkcję obsługo przerwania. Jeżeli jednak chcesz zrobić to liniowo to kod powiniem wyglądać mniej-więcej tak. ////////////////////////////////////////... #include "89S52.h"...
Jeśli wymieniasz VisualStudio to zapewne chodzi o system Windows. Tak jak już wspomniałem BLE obsługiwane jest od wersji Win 8.1. W VS znajdziesz kilka funkcji służących do odczytywania i zapisywania danych. System sam nawiąże połączenie i je zakończy. Zobacz na co pozwala obiekt Windows.Devices.Bluetooth.GenericAttribu... Zapewne na początku...
Witam, Pierwszy błąd, który wychwyciłem to brak zachowania i odtworzenia rejestru stanu procesora SREG we wszystkich obsługach przerwań. Należy również zadbać o zachowanie używanych rejestrów (R0-R31). Zobacz ci się stanie np. w takim przypadku: CPI R16,10 ; tutaj przychodi przerwanie które zmienia stan SREG (znaczniki Z,C ...) BRNE xxx LDI...
Generalnie we wszystkich nowych procesorach Atmela, do nich tez nalezy ten procesor, rejestry 16 bitowe maja buforowanie rejestru H To znaczy, aby przeczytac rejestr TCNTnH nalezy najpierw przeczytac rejestr TCNTnL co powoduje jednoczesne zapisaniem rejestru TCNTnH w niewidocznym rejestrze TEMP dla programisty. Dopiero kolejna operacja odczytu rejestru...
Zacznij od ustalenia przyczyny resetu za pomocą rejestru MCUSR.
W C sprawa wygląda tak samo .... No tu kolega troszkę przesadził chyba? ;) .... w C sprawa nie wygląda tak samo chociażby z uwagi na to, że byle makro ISR() nie odkłada i zdejmuje ze stosu absolutnie wszystkich rejestrów procesora co standardowo robi Bascom. A takich kwiatków jest znacznie więcej niestety :( tylko że kompilator C nie sygnalizuje błędu....
Krótko mówiąc, rejestr PINx jest aktualizowany pośrednio przez zatrzask (ang. latch), co wprowadza opóźnienie pomiędzy 1/2 a 1+1/2 taktu procesora.
Hej, Nie no chyba nie wyraziłem się jasno. To co podałeś to oczywiście banał i nie trzeba by korzystać nawet z makra. Funkcje podałem, jako przykładowe...chodzi mi o funkcję, która operuje na rejestrze procesora, ale adres tego rejestru podany jest jako parametr funkcji z pamięci Flash... R
1.Wejście clear jest do takiej pracy układu niepotrzebne . Połączenie tego wejścia z mikroprocesorem byłoby niepotrzebną komplikacją układu , ponieważ procesor i tak nadpisuje poprzednie dane nowymi. Gdyby czas między pojawieniem się sygnału clear a wprowadzeniem kolejnych danych był zbyt długi to zauważalne byłoby świecenie segmentów wyświetlacza i...
Chodzi o to, że operacja |= generuje (najczęściej) sekwencję R-M-W (read - modify - write). Czyli rejestr konfiguracyjny jest odczytywany do rejestru ogólnego procesora, na tym rejestrze jest dokonywana operacja arytmetyczno/logiczna (OR) a na koniec wynik jest zapisywany nazad w rejestrze konfiguracyjnym. Przykład: PORTB |= 1<<PB1 | 1<<PB6;...
... Problem błahy, ale rozkładam ręce, pewnie zapomniałem o jakiejś oczywistej rzeczy ... Witam Tak, problem jest błahy i wynika ze specyficznego sposobu konfigurowania portów w bascom-ie. O ile instrukcje: Config Pinc.2 = Output Config Portc.2 = Output dają równoważne wyniki (chociaż poprawny zapis w/g helpa to PINx.y dla konfiguracji pojedynczego...
Nie analizowałem dokładnie kodu, ale na pierwszy rzut oka brakuje mi ustawienia częstotliwości taktowania magistrali (rejestr TWBR i bity TWPS1:0 w rejestrze TWSR). Maksymalna częstotliwość taktowania SCL układu PCF8583 to 100kHz. Nie napisałeś jaką częstotliwością jest taktowany procesor. Po starcie procesora te rejestry są ustawione na wartość 0 i...
0xFFFFFFFF * 0x200 = 2 TB-1 sektor. I to ograniczenie przewija się nie tylko w MBRze, ale też w rejestrach procesora, wartościach obsługiwanych przez system operacyjny itd. Rozmiar dysku może ucinać np. 32-bitowa przejściówka choćby i podłączona do 64-bitowego komputera z 64-bitowym systemem. Ograniczenie 128 GB, to ograniczenie 28-bitowej adresacji...
Chodzi tutaj o tzw z angielskiego glitch filter, tzn jezeli na wejściu portu pojawi się zakłócenie o czasie krótszym niż 0.5 cyklu głównego zegara to sygnał ten jes odrzucany. Generalnie chodzi tu o niereagowanie na zakłócenia na wejściach PIO. Szczególnie ważne przy oblłudze przerwań. Jest to opisane w danych technicznych procesora. Pozdrowienia.
W obecnych czasach nauka asemblera jest marnowaniem czasu Nieprawda. Assembler potrafi zrobić rzeczy, których C/C++ zwyczajnie nie obsługuje, jak np. zmiana kontekstu. Polega to na tymczasowym zatrzymywaniu działania programu, całość rejestrów procesora jest kopiowana do RAM, a zaraz po tym z innego miejsca w RAM kopiowane są rejestry zapisane wcześniej....
Mam pytanie do fachowców - którzy juz przetrawili troche ten mikrokontroler. Czy istnieją jakieś bardziej kompaktowe i alternatywne srodowiska uruchomieniowe dla mikrokontrolera RP2040? CHciałbym troche popisać w assemblerze tych mikrokontrolerów(nie trawię jakoś wszechobecnego i na siłę narzucanego języka C/C++ a micropython jest po prostu za wolny)....
Jeżeli chodzi o symbole, to gdb "rozumie" tylko tyle, ile kompilator mu przekaże poprzez tablicę symboli w pliku elf. Sam z siebie gdb wie tylko o pamięci (adresy numeryczne) i rejestrach procesora (CPU), bo to jest częścią wsparcia konkretnej architektury procesora, ale już np. o rejestrach peryferiów nie ma bladego pojęcia. Ponieważ widzę, że w pliku...
standard file kill ale" never mind" kolobos podał ci lepszy sposób tak odinstalowany kasperski zostawi mniej śmieci w rejestrach zastosuj jego rady
Trochę trzeba pozmieniać bo to zupełnie inne procesory, inne rejestry. Cała obsługa portu szeregowego do przepisania. W AVR nie ma też takich poleceń jak _CONFIG Łatwiej to napisać na nowo niż się zastanawiać co robi, które polecenie.
do rejestru procesora SP wpisz odpowiednia (?) wartosc
Mogę gdzieś się pomylić, ale opiszę jak ja to rozumiem. A. Ten drugi jest projekt jest wspólny dla wszystkich projektów na tą rodzinę procesorów (lpc17xx). Podobnie było na AVR, z tym że tam się takie pliki dołączały automatycznie (np m8.h). Tak jak w AVR nazwy rejestrów np UBR, TMISK itd były zdefiniowane w plikach nagłówkowych, dołączonych automatycznie....
Czy ktos moze mi powiedziec co to jest pamiec kontekstowa??? Wydaje mi się że to jest dodatkowy zestaw rejestrów procesora identyczny z tymi podstawowymi, przy czym można wybrać który z zestawów rejestrów ma być w danej chwili uzywany. Coś takiego się nazywa Hyper Threading u Intela.
Ale podglądanie rejestrów procesora oraz portów I/O to ja już nie wiem jak zrobić, a w AVR znalazłem od razu.
Wolę uczyć się rejestrów z manuala procesora niż pól struktur z manuala biblioteki. Tego drugiego jest na sztuki więcej, więc fundujesz sobie powolną "jazdę po strukturach z dokumentacją biblioteki w dłoni", a w efekcie i tak nie wiesz, jak został zaprogramowany peryferial. Kod źródłowy w C programów z użyciem bibliotek jest znacznie (min. 1.5 raza,...
Mamy rozumieć że ty przy starcie programu inicjalizujesz wszystkie rejestry procesora na domyślną wartość po resecie ?
Co do pierwszych dwóch uwag - zgadzam się, dodałem konkretne cytaty w odpowiednie miejsca. Co do ostatniej, tak, wyjaśniam już, że zwykle jest to początek pamięci flash, jednak w specyficznych przypadkach (konkretnie przy ustawieniu bitu IVSEL w rejestrze MCUCR w procesorach, w których ten bit jest dostępny) przenosi początek tej tablicy pod adres w...
http://www.totusoft.com/lanspeed.html -> pewnie ten program to testowania kart sieciowych. program wymaga rejestracji jeśli tego admin w szkole nie zrobił lub nie da wam kluczy to dupa ! nie odczytacie prędkości :( rejestry procesora -> http://pl.wikipedia.org/wiki/Rejestr_pro... Dodano po 2 U mnie było zupełnie co innego, mialem dzisiaj na ósmą...
Wystarczy naciskać F8 idąc po swoim kodzie w głównym oknie i patrzeć na wartości rejestrów procesora po prawej. Pokaż co masz bezpośrednio po funkcji 7 przerwania 21h bo to coś dziwnego aż, że wszystkie rejestry są ciągle zerowe.
No, ok. Więc musi zatrzymać transmisję, podać ponownie adres rejestru który zamierzasz odczytać i go odczytać. Czyli robisz tak samo, jak podczas odczytu godziny ale nie podajesz adresu rejestru sekund, a adres rejestru z którego chcesz odczytywać swoje dane. A swoją drogą, to przecież takie porównanie możesz wykonać w programie procesora.
Witam, chcę zbudować procesor, zacząłem go projektować i chciałem dodać obwód do wykonania instrukcji przesunięcia wszystkich bitów w rejestrze A w lewo, ale kompletnie nie mam pomysłu jak to zrobić, pomoże ktoś ? PS. Każdy rejestr w moim procesorze będzie mógł pomieścić jedną liczbę 4-bitową
Mikrokontrolery można programować bez szerszej wiedzy o ich działaniu, Arduino jest chyba naczelnym przykładem, ale nie trzeba aż za to się łapać. Jeśli ten podręcznik do MSP430 tak faktycznie wygląda, to go lepiej nie ruszaj, chociaż na pierwszy przykład kodu do wklejenia i uruchomienia wpisane na sztywno 0x40 nie jest jeszcze koszmarnie złe. Drążąc...
po co w niektórych implementacjach takich 'rozbiegówek' mamy kod assemblerowy który kopiuje adres stosu do rejestru SP procesora? STM32 może używać dwóch stosów - jednego dla przerwań (nazwanego wyjątkowo myląco "main stack") i drugiego dla wątków (nazwanego "process stack") - a więc i dla "main()". To co jest w tablicy wektorów ląduje w MSP ("main...
W zasadzie program do testowania wymaga tylko kilku zmiennych. A więc napisany w assemblerze mógł by się zmieścić w rejestrach procesora a więc nie używać ani jednego bajta pamięci RAM.
Witajcie Mam dość prostą funkcję ISR, która korzysta z kilku zmiennych statycznych (flag typu uint8_t) oraz sprawdza stan (switchem) jednej zmiennej globalnej (oczywiście volatile) by sterować swoim działaniem w wyniku którego ustawia (lub odczytuje) poszczególne bity kolejnych bajtów niewielkich tablic globalnych (typu uint8_t) oraz wachluje portem...
i mam tutaj coś co mi się nie podoba a mianowicie sidebar.exe Jest to problem systemowy który właśnie zakłóca wykorzystywanie zasobów komputera może byc spowodowany obecnością wirusa bądź błędami rejestru
No,ale nie podałeś jaki procesor. W Bascomie można ustawić rejestry Timera "ręcznie"- a nie przez config. Zamiast czegoś takiego: "TCCR1A = &H00 'See datasheet for details "TCCR1B = &H0C 'See datasheet for details można ustawić to po "bascomowemu"- patrząc w DS. set TCCR1A.cs12 set TCCR1A.wgm12 Itp. Zamiast config ustawiasz poszczególne bity w rejestrach...
Uproszczonego FET'a można kupić w kicie za 20zł. Symulować można wszystko wpisując wartości bezpośrednio do rejestrów procesora.
Dla mnie to jest jakiś "hardcore". Kto ma pilnować rejestrów procesora, stosu etc. ? Wykonując kod z całkowicie innej kompilacji wszystko będzie OK?
No właśnie - w końcu dla nieznanego mechanizmu modyfikującego zmienne nieznany rejestr procesora nie jest ani trochę bardziej nieznany niż nieznana lokacja na stosie. :)
OK, ale czy jest to taki sam reset jak reset ręczny czy tylko skok na początek programu a rejestry procesora nie zerują się ???
Witam. Posiadam jtag usbScarab2. Do debugowania procka używam eclipse i openocd 0.4., moja platforma to stm32. Nie wiem czy to tylko u mnie tak jest ale nie działa mi podgląd rejestrów procesora. Czy jest możliwość ustawienia, wgrania listy rejestrów do eclipse aby można mieć podgląd w jakim stanie jest procek? Pozdrawiam
jest do rejestru procesora d0 A co to za rejestr? Nie słyszałem o takim Dodano po 9 za kolegą grko proponuję jednak użycie sprintf
W C goto jest lokalne, tj. działa jedynie wewnątrz danej funkcji. Największy problem to "zwijanie" stosu i przywracanie rejestrów zachowywanych przez funkcje. Tą funkcjonalność implementuje para funkcji setjmp/longjmp. Na AVR setjmp/longjmp zachowuje/przywraca: rejestry r0, r2-r17, r28-r31 stack pointer SPH,SPL rejestr stanu procesora SREG Można zrobić...
Z tego co jest napisane wynika że jest to wpisywane do rejestru procesora odpowiedzialnego za wzmocnienie itd. Zawsze można spróbować. Tabelka w specyfikacji: Input channels and gain selections.
Mówimy o tym co gwarantuje volatile. A to wynika bezpośrednio ze standardu języka C. Volatile nie gwarantuje niczego. Po porzemyleniu uważam że nie może być w rejestrach procesora, chyba że rejestry mogą być dostępne i zmienione z poza procesora. Zmienna volatile może zmienić się niekoniecznie poprzez działanie procesora - np poprzez dostęp przez dma...
astosowanie watchdoga tylko że skończyło mi się miejsce na nowe linie kodów. Masz miejsce wystarczy, że wywalisz: Na początku programu następuje zerowanie programowe wszystkich rejestrów procesora, ustawianie rejestrów portów Pokaż ten kod realizujący programowy reset. Może wiem w czym problem.
64bajty dla całej aplikacji? Kurde ja mam chyba teraz ustawione na 1 albo 2kB... 64 bajty to jest odłożenie 8 rejestrów procesora... To jest nic. 4\/3!!
warto sobie uświadomić ze najczęściej na rejestrach procesora operuje się tylko operatorami &=, |= i operacja : rejestr_x = a; rejestr_x = b; jest bez sensu, bo w zasadzie ta pierwsza moglaby sie nie wykonac (no chyba ze mamy tam delay miedzy tym to jeszcze moze czemus sluzyc).
to instrukcja np OPEN "com1:" for binary as #1 ale odnosnie szczegołów transmisji to pozostają odpowiedznie rejestry procesora pdf od strony 344 (są nawet przykłady w C) ;)
Po pierwsze - zobacz, jakie są dostępne rejestry procesora. Ja nie słyszałem o EEX ani EFX, choć może w Pentium V się pojawią. Po drugie, nie wiem, co chcesz osiągnąć podając jakieś wartości w innych rejestrach. Funkcje systemowe mają ściśle określone argumenty.
w C konieczne jest załączenie biblioteki, korzystam z <reg52.h> - definiuje rejestry procesora, ale nie wiem może to zła biblioteka i dlatego nie działa..
ale to nie niebieski ekran i bład OE tylko numerki z rejestru procesora - z tego przeciez nic nie wynika mam pytanie czy ta drukarka wogole w sieci drukuje na USB?
Mam dziwny problem. Kompilator nie "widzi" rejestrów odpowiedzialny za PWM w dsPIC33F. Np. PWM1CON2 (lub PWM1CON2bits). Środowisko zaznacza je na czerwono i program się nie kompiluje. Zakładam że to brak biblioteki ale nie wiem jakiej. W pwm.h i pwm12.h nie ma definicji tych rejestrów. W pliku procesora (p33FJ64GP804.h) również nie ma nic podobnego...
Witam. Na stronie Atmela pod adresem http://www.atmel.com/devices/atxmega32d4... Są dokumenty opisujące interesujący mnie procesor. Jednak, że nie znajduję w nich opisu rejestrów procesora, a konkretnie co który bit robi i za co odpowiada. Nie ma, źle szukam, nie wiem. Wydawało mi się, że w Compit datasheet powinny być ale nie ma, więc...
Jestem człowiekiem leniwym, celem makra było i jest jedynie skrócenie składni. Uważam, że póki używa się go jedynie do ustawiania wartości rejestrów procesora, domyślnie się co ono robi nikomu nie powinno sprawić trudności.
Każdy "normalny" procesor ma dodatkowy rejestr statusu, w którym są te wszystkie "dodatkowe" bity przechowywane. Są one oczywiście obsługiwane sprzętowo. Jest też zestaw rozkazów warunkowych korzystających z tych bitów. Prawie na pewno jest to opisane dalej w tej książce.
(at)kankos5 Wnioskujesz nieprawidłowo. Z poziomu arduino IDE masz również dostęp do rejestrów procesora. I jeżeli samo API nie udostępnia funkcji do obsługi PWM to możesz śmiało wpisać odpowiednie wartości do rejestrów ręcznie. Nie będzie się to różniło niczym od pisania po rejestrach w czystym C.
Znajomosci takich rzeczy wymagaja w Technikum na pracowni elektronicznej do zaliczenia i przystapienia do odrobiania Cwiczen... O Jezu... Wymaganie pamięciowego dublowania katalogów zawsze mnie zastanawiało. Inna rzecz, że pytania są banalne i dla każdego choć trochę 'siedzącego w temcie' doskonale znane, ale IMO i tak bezsensowne. Co do pytania Co...
Z reguły zmienne lokalne w avr-gcc są lokowane w rejestrach procesora Czy dziwi mi jedno zjawisko jakie zaobserwowałem przy deklaracji dużego bufora. zmieści się w rejestrach? Notabene wskaźnik stosu jest w czasie resetu sprzętowego inicjowany przez hardware Nie w każdym uC.
Strobe powoduje zapamiętanie stanu przerzutników rejestru przesuwnego w przerzutnikach rejestru równoległego. STROBE=1 -> przerzutniki układu równoległego są przezroczyste i na wyjściu widać bezpośredno stan przerzutników rejestru przesuwającego. STROBE=0 -> rejestr równoległy pamięta stan wyjść rejestru przesuwającego z chwili gdy STROBE zmieniało...
GPR to rejestry wewnątrz procesora. Takie bardzo lokalne (dla procesora) miejsce przechowywania danych. Na tych rejestrach procesor może wykonywać szybko operacje. Inne dane zazwyczaj musi ściągnąć z pamięci sram do rejestrów GPR żeby na nich operować - a potem ponownie je zapisać do pamięci. Zmienne lokalne, które występują krótko i nie są później...
Datasheet opisuje dostępne funkcje i rejestry konfiguracyjne procesora w GCC ?
Ciężko odpowiedzieć na tak zadane pytanie. To tak jakbyś zapytał jak sprawdzić wartość jakiejś komórki pamięci RAM (czyli powiedzmy jakąś zmienną). No po prostu odczytując ją :D Tak samo różne opcje zabezpieczeń. One są zapisane w pamięci, tyle że FLASH. Żeby je sprawdzić to trzeba je odczytać. No inaczej się nie na napisać. Ale mała podpowiedz: Option...
Witam, No trochę jaśniej jest. Ram który przeznaczyłeś na stos jest prawie całym obszarem RAMU mikrokontrolera. 0x1FE4 - wielkość twojego stosu (obliczone wierzchołek stosu(0x1FF0) - początek sterty(0xc). Stosu Ci zapewne nie zabraknie. np. wywołujesz w mainie moja_funkcja(int param1, int param2, char tab[20]) to musisz przy wywoływaniu z przekazaniem...
Oczywiście że się nie da. Można tylko CH1 i CH2. Po rejestrach procesora w datasheecie od razu widać że się da użyć tylko te. Ale jak się używa tej durnej biblioteki zamiast zajrzeć do datasheeta i zrobić normalnie to takie są efekty.
Witam przy okazji chciałbym się zapytać,czy zewnętrzny kwarc zaczyna działać w momencie włączenia zasilania procesora czy dopiero ,kiedy ustawimy w rejestrze procesora odpowiednie bity (które mówią ,że procek ma korzystać z zewnętrznego kwarcu) ? Pozdrawiam !
Witam, może to jest absurdalne pytanie ale jak zaprojektować shemat elektroniczny prostego procesora z 2 rejestrami i zegarem 1h tak zeby dodawał, odejmował, monozył, dzielił wartosci np. jezyk podobny do asm:-) REJ A, 3; USTAW WARTOSC REJ B, 3; USTAW WARTOSC ADD A, B; SUMUJ MIN A, B; ODEJMUJ INC A; INKREMENTUJ DEC A; DEKREM... MUL A, B; MNÓŻ DIV A,...
Niestety jak używam w konfiguracji słowa PCINT4 to kompilator generuje błąd i twierdzi że to nieznane źródło przerwania. To dlatego, że w tym procesorze są tylko 3 przerwania tego typu (w innych raczej nie będzie lepiej). Piny oznaczone PCINT0...PCINT7 mogą ustawić tylko pierwszą z wspomnianych 3 flag przerwań (o numerze 0). Kolejne osiem pinów PCINT8...PCINT15...
No dobrze, a da się to w domowych warunkach zaktualizować, przywrócić do poprzedniej wersji, albo chociaż sprawdzić czy jest odpowiednia? Raczej nie liczyłbym na to, a kombinowanie z mikrokodem nie znając assemblera i rejestrów procesora to żonglerka odbezpieczonymi granatami.
Powszechnie wspominane "volatile" nie jest lekarstwem na w/w zagadnienia. To zaledwie życzenie aby zmiennej nie cachować w rejestrach procesora, a wymusić odkładanie do RAM. Właściwe jest rzeczywiście mówienie o synchronizacji. ALE. Zależnie od klasy zagadnienia, można się zasynchronizowac na śmierć, para pójdzie w gwizdek nawet 50% jednego CPU . Powinno...
Bootloader w 89C51? Czy masz jakiś gotowy układ z procesorem, programowany szeregowo? Końcówka RST wywołuje reset procesora, czyli ustawienie rejestrów procesora na wartości domyślne i start programu od adresu 0, czyli zamiast resetu zewnętrznego możesz powpisywać wartości do rejestrów i wykonać skok do adresu 0.
Owszem MCUCR = &b10101011 MCUCR.1 = 1 itp. Ale to wymaga znajomości rejestrów procesora lub conajmniej przeczytanie dokumentacji procesora. A te czynności dużo poczatkujacych pomija. Zestaw rejestrów które rozpoznaje Bascom AVR są helpie do bascoma w dziale: "Rejestery specjalne"
.. Złożyć układ na takiej płytce to jednak coś innego, niż używać symulatora - szczególnie na poczatku. Nie twierdzę, że to jakiś problem, ale chyba łatwiej jest nie wstając od komputera w ciągu kilku minut uruchomić coś co działa niż wydawać pieniądze, zamawiać i czekać na wysyłkę czy samemu jeździć po części? A czym niby się różni migająca dioda...
rejestr cd4094 thunderbird rejestr uszkodzony rejestr
napięcie świetlówki laptopa cordoba pompa paliwa projektor telefonu
sterownik hulajnoga elektryczna hulajnoga sterownik
Jak zrobić płaszcz wodny do kominka - porady i wskazówki Jak wykonać uziemienie w starej instalacji elektrycznej?