W pętli za każdym razem wysyłaj najmłodszy bit i przesuwaj o jeden bit w prawo, nie zajmuj się znacznikiem przeniesienia, poprostu wybieraj najmłodszy bit. Jak kompilator jest mądry to może napisze podobny kod, ale raczej bym na to nie liczył.
Tak na szybko: Po pierwsze źle Ci się wylicza wartość, bo powinno być F8 a nie F3. Pierwsze odejmowanie umieszcza w rejestrze R0 wartość FB, następnie musisz jeszcze wyzerować akumulator bo odejmujesz wartość 3 od akumulatora w którym jest już FB (a powinno być 0) MOV R1,C jest bez sensu bo C to nie rejestr tylko znacznik przeniesienia (dziwne, że Ci...
W celu zwiększenia akumulatora o 1 gdy ustawiony jest znacznik przeniesienia (np przy dodaniu 2 liczb gdy wynik może nie mieścić się w jednym bajcie)
Pewnie chodzi ci o rejestr flagowy w procesorze, ale w jakim? W 8051 ten rejestr nazywa się PSW, poszukaj o nim na google. Znajdują się w nim takie znaczniki (flagi), jak: -RS0,RS1 - wskazuje aktualny bank rejestrów -C - znacznik przeniesienia -AC - wskaźnik przeniesienia pomocniczego -P - znacznik parzystości i pare innych
W sumie racja... umkło mi to. Faktycznie znacznik przeniesienia przyjmie wartość w zależności od tego co wyjdzie poza bajt. Dopiero zaczynam assembler na AVR przypominając sobie tłuste czasy programowania procesorów 6502 :)
To działa tak samo dla dowolnej ilości bajtów. Liczbę wejściową wysuwasz z najstarszego bitu najstarszego bajtu Czyli przesuwasz liczbę 32 bitową (mnożysz przez 2). Wysunięty bit (w znaczniku przeniesienia) wprowadzasz do najniższego bitu najniższej tetrady liczby BCD. Przed każdym kolejnym przesunięciem sprawdzasz każdą tetradę czy nie jest >=5...
Na temat adc wiem tyle co z książki wyczytałem czyli, ze dodaje 1 do wartości gdy znacznik przeniesienia C jest ustawiony. Ale jeszcze nie spotkałem się z tym w realnym programie więc nie bardzo wiem z czym to ugryźć. Jak masz czas i chęć to jakoś łopatologicznie wytłumaczyć to chętnie się dowiem kolejnej nowej rzeczy.
Nie znasz budowy procesora ani zasady jego działania, a zabierasz się za pisanie emulatora... Dowiedz się, co to jest jednostka arytmetyczno-logiczna, jak działa, poznaj rejestr znaczników i jakie mają znaczenie jego flagi. C - flaga przeniesienia - niektóre operacje na ALU ustawiają znacznik przeniesienia w zależności, czy nastąpiło przepełnienie....
Odpowiedz jest raczej prosta i zwarta w "Mikrokontrolery rodzina AVR" BRCC - skocz względnie, jeśli znacznik przeniesienia wyzerowany BRSH - skocz jeśli nie mniejszy Konstruktorzy AVR-ów raczej nie walneli by "babola" i nie wklepali w rdzeń CPU AVR takich samych skoków o różnej nazwie. Jeszcze raz polecam ww wydawnictwo :-) Oczywiście oba skoki są pochodnymi...
Jeśli tylko dodawanie i odejmowanie, to prosto, wykorzystujesz operacje dodawania z przeniesieniem i odejmowania z pożyczką. Jakbyś liczył w słupku: ; r16,r17,r18 - jedna liczba, kolejno od MSB ; r19,r20,r21 - druga, jak wyżej add r21,r18 adc r20,r17 adc r19,r16 ;wynik masz kolejno w C,r19,r20,r21 (C - znacznik przeniesienia).
To jakiś urywek zadania z którego niewiele wynika. punkt 1. Sumator 1-bitowy? To dosyć banalna sprawa. Łącząc kolejno X takich mamy sumator X-bitowy plus znacznik przeniesienia. punkt 2. jakie funkcje? Jakie numery? Nie rozumiem. punkt 3. Tablica w której są zanegowane binarne odpowiedniki kolejnych liczb 0..7. O co chodzi? punkt 3. Jakaś funkcja. Co...
Bo takich nie ma. Istnieje wiele procesorów, które w ogóle nie mają znaczników, np. MIPS. Jeśli już mają znaczniki, to te znaczniki czemuś muszą służyć - wtedy pewnie przydaje się znacznik zera, przeniesienia, znaku i nadmiaru. Nie pamiętam procesora, który, jeśli już ma znaczniki, nie miałby tych czterech. Tzn. jeden pamiętam - Intel 8080, ale ten...
Gdyby się nie dało zrobić takiej pętli w asemblerze, to nie dałoby się jej zrobić w żadnym innym języku. Więc odpowiedź brzmi - tak, da się. Jak? Dodaj kolejne dwa rejestry, czyli ADIW R24,R16 następnie ADC R26,R18, ADC R27, R19, przy czym R16-R19 zawierają 32-bitowy krok. Stosownie należy też zmienić operację porównania. Poza tym użycie BRNE nie jest...
Witam!!! Jestem początkujący w Assemblerze. Mam za zadanie napisać programik odbierający dane z i2c. Napisałem już programik wysyłający, ale nie umiem napisać programu odbierającego. Zamieszczam poniżej moje wypociny. Proszę o podpowiedź jak przesyłać kolejene bity ze zmiennej X do znacznika przeniesienia C, aby potem można było to rolować przez RLC....
Witam Na studiach zaczęliśmy początki programowania właśnie na takim procesorze jak w temacie na symulatorze pobranym z http://8085software.tripod.com/8085Setup... Czy mógłby mi ktoś pomóc z prostą rzeczą ale nie moge sobie poradzić: http://obrazki.elektroda.pl/3290372400_1... Dodaję dwie liczby, jeżeli wynik mieści się w 8 bitach to...
Kolego jeśli nie masz wiedzy jak działa programowe spi to proszę nie pisz o mnie lub do mnie . Żeby wysłać bit po bicie trzeba z bajta danych wyłuskać jakoś bit do wysłania najszybciej przez wysunięcie go do znacznika przeniesienia w tej samej operacji można wsunąć z drugiej strony bit odebrany z wejścia MISO, data in . wszystkie te operacje robi alu...
Jaki konkretnie procesor? ATMEL to dość ogólnie napisane :) Wysłanie sekwencji 0 na port B? Co to znaczy? Czy przy starcie wartość wysyłąna na port B to ff i co jakiś czas jest dekrementowana aż do wartości 0? Klawisze podłączone są do jakiego portu? D? Całego programu ci nie napiszę ale coś spróbuje pomóc. Dodano po 7 Treść zadania ;Silnik krokowy...
Do zadań gdzie musisz np. robić coś bardzo szybko i dokładnie móc wyliczyć zależności czasowe używasz asemblera. Ma on tę zaletę, że dokładnie panujesz nad sprzętem i wiesz dokładnie jak są realizowane poszczególne funkcje. Wadą jest jednak, że wszystkie wyższe formy (typu obliczenia zmienno przecinkowe, złożone formy zależności funkcyjnych, liczenie...
Cóż.. mało wiem o całym urządzeniu, ale proponuję następujące rozwiązanie (rozumiem, że klawiatura przesyła przez RS kod znaku ASCII). ljmp 100h ;skok do poczatku programu org 23h ;wektor odpowiadajacy przerwaniu UART ajmp odbior ;skok do obslugi przerwania org 100h ;poczatek glownego programu mov SCON,#050h ;zaladowanie ustawien do odpowiednich mov...
Przyjmujesz, że pierwsza wprowadzana cyfra to dziesiątki: {W nawiasach klamrowych wynik danej operacji } Pom=0; Wczytaj x1; {Mnożenie przez 10} pom:=x1; pom:=pom+pom; {pom=x*2} pom:=pom+pom; {pom=x*4} pom:=pom+x1; {pom=x*5} pom:=pom+pom; {pom=x*10} Wczytaj x2; pom:=pom+x2 {pom zawiera teraz x1*10+x2, x1,x2, wpisane cyfry} jeżeli pom jest jednym bajtem...
1. To ustaw kursor na ostatniej lini w RichEdit jakaś procedura i powinno się samo przewinąć dokładnie nie wiem o co chodzi koledze 2, Co do zawijania textu to podobnie jak np w Memo w inspektorze obiektów WordWrap na True A propo zawijania wierszy to zawijanie polega na przeniesieniu następnych znaków do następnej linii bez dodawania znacznika nowej...
Z tego co mi wiadomo, w PIC16 cykl rozkazowy składa się z czterech cykli maszynowych Tak, masz rację. Pisząc o 1 cyklu miałem na myśli AVR. Mój błąd, że tego nie zaznaczyłem. Co do rozleniwienia pewnie, że tak Freddie. Ale skoro mogęzrobić odtwarzacz mp3 na 51 za 40zł lub na armie za 20 zł to wybacz, jeśli ma to być projekt komercyjny... :] A jeśli...
Przeniesienie(flaga c) to znacznik procesora ustawiany po przeniesieniu, używany przy (min.)sumowaniu liczb dłuższych niż słowo maszynowe procesora. Przykładowo procesor 8-bit, dodajemy 2 liczby 16 bitowe, zawartość rejestrów B i C do H i L wynik umieszczamy w H i L(operacje wykonujemy na akumulatorze A). LD A, C | ADD A, L > Sumowanie mniej znaczącej...
No tak, zaczyna się komedia. Wszystko już ładnie śmiga, jeśli o samego RS'a chodzi. Teraz, że tak powiem, rozdzieliłem układ. Wygląda to w ten sposób, że 1 układ z działającym przetwornikiem ADC wysyła teraz te dane nie po RS'ie do kompa, ale (też za pomocą UART'u) do nadajnika radiowego, słynnego TX433. On wysyła dane do swej bratniej duszy, to jest...
Wyłącz firewalle, antywirusy oraz wszystko co korzysta z łącza i zrób dłuższy test programem WinMTR na adres serwera gry: http://www.elektroda.pl/rtvforum/topic25... Wyniki wrzuć do tematu w znaczniki "Code".
Obciążenie odłączałem całkowicie tzn. już po tym długim kablu po liczniku a licznik bardzo powoli się kręci Licznik energii elektrycznej jest tak zbudowany że po odłączeniu obciążenia, kręci się on w dalszym ciągu aż czarny znacznik na "tależu" nie znajdzie się z przodu tak by było go widać.
Może jakiś komunikat "Nie znasz C, nie zakładaj tematu. Jeśli już się zdecydujesz bierz pod uwagę, ze zostaniesz zeszmacony". Ty tak na poważnie? Na poważnie to zakładający temat w Arduino powinien byc informowany, że: 1. trzeba znać C 2. dołączyć kod i umieścić w znacznikach syntax 3. dołączyć schemat jeśli nie jest to shield do Arduino Pkt 1 nie...
Przejrzyj dokładnie krawędzie pasa świtłoczułego w module obrazu jeśli ma uszkodzenia to mogą być interpretowane przez czujnik położenia jako początek obrazu. Sprawdź bęben transferowy i rolkę czy ma możliwośc poprawnego przeniesienia ruchu z modułu obrazu ( opory mechaniczne brak fragmentu zębów na kołach) Ale bardziej stawiam na znacznik lub problem...
Witam Chcę skonstruować urządzenie, które oprócz zegarka mierzyłoby jednocześnie temperaturę i obydwie wielkości wyświetlałoby na wyświetlaczu LCD. Gdy programy napisałem osobno, obydwa działały, lecz gdy połączyłem je w całość, to czas odczytuję bez problemu, natomiast nie wyświetla mi się temperatura. Podejrzewam, że problem jest w przerwaniach. Poniżej...
Proszę o pomoc w rozwiązaniu zadań niżej moje rozwiązania: 1. Na wejście 8-mio bitowego przetwornika ADC podawane jest napięcie wzrastające liniowo od zera do wartości 10V z szybkością wzrostu 1 V / minutę. Proszę przyjąć, że ADC „próbkuje” sygnał co minutę i podać wartości rejestru odczytu ADC (binarnie, lub szesnastkowo) w kolejnych 10...
Witam, fajna praca, gratuluję wykonania. - ile impulsów na obrót ma wykorzystany przez Ciebie enkoder? - czy enkoder jest ze znacznikiem przejścia przez zero, który wykorzystujesz do synchronizacji ? - prędkość zadajesz z potencjometru umieszczonego na PCB sterującej? - jakie mosfety wykorzystałeś? - czy możesz opisać dokładnie, krok po kroku proces...
Witam. Jeśli Twój enkoder to przetwornik obrotowo-impulsowy inkrementalny (taki jak w myszce) to oznacza, że masz do dyspozycji 2 kanały licznikowe i/lub/może 1 kanał znacznikowy. Licznikowe dają określoną liczbę impulsów (najczęściej prostokątnych) na 1 obrót osi, znacznikowy 1 impuls na 1 obrót. Sygnały licznikowe (A i B) są przesunięte względem siebie...
Jestem początkujący w dziedzinie programowania Atmelków. Mam zamiar zrobić licznik impulsów , który w pierwszej linii wyświetlacza LCD 2*16 , będzie wyświetlał ilość impulsów , zaś w drugiej ma pokazywać ilość obrotów na minutę. Generalnie ma to rejestrować przebiegi wolnozmienne ok 1Hz nawet ciut mniej. Zaczerpnąłem kawałek kodu oczywiście z netu ,...
Witam wszystkich potrzebuje pomocy mam do napisania program który liczy iloczyn liczb BCD. Napisałem program w którym mnożna jest obojętnej długości natomiast mnożnik na razie jest z jednej liczby niestety ten program mi nie chce poprawnie działać.Bardzo prosił bym o pomoc poniżej wklejam mój kod. #include<iostream> using namespace std; void iloczyn(char...
Czy po przeczytaniu tego opisu można stwierdzić stopień skomplikowania procesorów ARM? Proste czy nie? ----------------------------------------... ADC{<cond>}{S} <Rd>, <Rn>, <shifter_operand> Instrukcja dodaje wartość operandu <shifter_operand> i flagi przeniesienia Carry do wartości...
z pomoca Zaquadnik-a wyszlo mi cos takiego: library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; library UNISIM; use UNISIM.VComponents.all; entity PWM is Port( clk : in std_logic; rst : in std_logic; preset : in std_logic_vector(7 downto 0); output : out std_logic );...
Cześć. Należy pamiętać, że w MODBUS'ie słowa zabezpieczające informacje zależą od trybu transmisji. Na początek może LRC, czyli Longitudinal Redundancy Check - jest on dołączany przez nadajnik jako ostatnie pole ramki, bezpośrednio przed znacznikami końca linii (Carriage Return i Line Feed) w trybie ASCII. Najkrótsza droga do osiągnięcia tego słowa...
Witam Dzisiaj znalazłem fajną stronkę gdzie był umieszczony super fajny ściemniacz sterowany pilotem i ręcznie na Tiny12 ( http://republika.pl/rejestr/strony/avr_r... ). I tu mam pare pytań: 1. Potrzebuje 2 takich układów w jednej puszce więc żeby mi się to zmieściło wymyśliłem że uwspólnie odbiornik podczerwieni, zasilanie, tranzystor odp....
Witam Mam ogromna prośbę. Potrzebuje przeanalizować 2 programy które niestety nie działają poprawnie. Programy pisałem sam lecz niestety sa w nich pewne błędy które niestety nie mogę znaleźć. Po asemblacji działają jednak w programie symulacyjnym nie wyświetlają tego co powinny, wiec s to programy bardziej wychodzące z tego co ma robi dany program niż...
Witam wszystkich Na wstepnie o tym co zrobilem...Zmontowalem ukladzik do zdalnej rejestracji temp, tzn. do Atmega8 podlaczylem 2 czujnik DS18B20 i siemensa s55...na sms'a o okreslonej tresci, pobierana jest temp. i wysylana nadawcy sms'a.... Uporalem sie z czujnikami i teraz siedze nad komunikcja z siemensem... Mam to zrobione na razie tak, ze kazdy...
Witam proboje skompilować kod PDU z pewnego ebooka według mnie brakuje tutaj makrodefinicji #include ... tylko jakiej prosze o pomoc code char CPIN[] = "AT+CPIN=1643"; //wprowadzenie numeru PIN code char CHOOSEMEM[] = "AT+CPMS="; //wybór domy lnej ś lokalizacji pamięci code char ECHOOFF[] = "ATE0";...
witam Napisalem sobie taki programik do zdalnej rejestracji temp.. problem tkwi w tym ze po skompilowaniu zajmuje 8232 bajtow czyli troche za duzo jak na atmega8 (8192 bajtow). Czy da sie cos uproscic w tym kodzie zebym go zmiescil?? Prosze pomozcie.... /***************************************... Title: example program...
Witam mam problem z kompilacją bibliteki uart.c Peter Fleury-ego którą wykorzystuje w moim programie. Probram uart.c dodałem do mojego projektu. Przypomnę że programu Petera nie zmieniałem a w pliku makefile dodałem uart.c do p-lików któr powinny podlegać kompilacji. Możeci mi pomóc i powiedzieć co jest grane gdy w wynku kompilacji dane są taki oto...
http://obrazki.elektroda.pl/6019169600_1... W dobie tanich nadajników radiowych coraz więcej miłośników elektroniki stara się zaimplementować inteligentne rozwiązania do swojego domu. Poniższy artykuł przedstawia urządzenie, które dokonuje pomiarów prądu sieciowego jak również odczytuje stan licznika energii i gazu. http://obrazki.elektroda.pl/1559167500_1...
przeniesienia napędu wskaźnik przeniesienia znacznik zapłonu
budowa magnesu pomiar prądu przez opornik simson kabel stacyjka
amica piekarnik generator ozonu
Pulsujący pomarańczowy przycisk Active Guard, Roomba, PS4 – co oznacza sygnalizacja LED? Audi A1 S-line – zamiana felg 17" 215/40 R17 na 15" stalowe: jaki rozmiar opon wybrać?