1. Jak klucz będzie zawsze taki sam jak dana wejściowa, to wystarczy na wyjście dekodera wyprowadzić klucz, ale chyba nie o to chodziło. 2. Aby odtwarzać wartości danej wejściowej na wyjściu, musisz zagwarantować, że każdej wartości wejściowej kodera odpowiada inny kod na wyjściu. Dla przykładu bit podlegający operacji AND, jeżeli w kluczu będzie 0,...
Cześć Program działa następująco Zmienna pomocnicza jest zerowana następnie ze zmiennej DM47 i 48 przesyłana jest zmienna podwójne BCD do DM58 i DM59 ponieważ zmienna jest typu podwójne BCD to składa się z ośmiu cyfr. Najbardziej znacząca cyfra w tej liczbie reprezentuje znak. funkcja ANDW służy do odfiltrowania właśnie najbardziej znaczącej cyfry (dlatego...
Może postawmy inne pytanie: jaki pożytek jest z operacji logicznej na SMPR lub SQR (to samo dotyczy większości rejestrów sterujących peryferiali)? Jaką to nieznaną Ci i ważną zawartość chcesz zachować w tych rejestrach, bez której Twoje urządzenie nie będzie działać poprawnie? Kasowanie znaczników opisanych w dokumentacji jako w1c lub w0c przy użyciu...
[syntax=c]DDRF |= 1<7;[/syntax] Sprawdza czy 1 jest mniejsze od 7 i wynik operacji logicznej sumuje logicznie z DDRF. Nie sądzę, aby taka była intencja. Popraw również pozostałe.
Konwersję koloru z różnych formatów, np. 565 na 888, alfablending, blending przy antyaliasingu, operacje logiczne pomiędzy maską i obrazem. Nieprzypadkowo nawet na PC spore części sterownika grafiki są napisane w asemblerze.
Witam Obojętnie w jakim języku piszesz możesz skorzystać z "maski bitowej": Jeśli na którymś miejscu chcesz ustawić 1 to należy tą liczbe potraktować operacją logiczną OR z liczbą która na ineresującym miejscu (-ach) będzie miała 1 a na pozostałych 0. Np. 1010 OR 0100 ________ 1110 Jeśli na którymś miejscu (-ach) chcesz ustawić 0 to należy tą liczbe...
ten kod nie zawiera niczego, co by sugerowało 2 minuty. Na pewno wgrywasz ten? PS. Operacje logiczne (na typie boolean) się ortodoksyjnie pisze tak [syntax=c]if ( listy ) {digitalWrite(led,HIGH);} if ( !listy ) {digitalWrite(led,LOW);}[/syntax]
Można, chociaż tego akurat nie nazwałbym operacją logiczną (nie wykluczam, że może istnieje terminologia, w której jest to właściwe). Operator & to iloczyn bitowy, w wyniku dostaniesz 0 lub 4. Ale to nic nie szkodzi, można potem traktować key_state jako wartość logiczną i wtedy ważne jest tylko, czy jest 0, czy nie 0.
Przesuń w lewo (SHL) i złącz (OR). Podstawowe operacje logiczne są dostępne w każdym języku. [syntax=delphi]wynik = (czesc_pierwsza shl 8) or czesc_druga[/syntax] Dostosuj tylko typ zmiennej.
Operatory bitowe: http://www.java2s.com/Tutorial/C/0100__O... Operatory (wszystkie): http://www.java2s.com/Tutorial/C/0100__O... No i trochę praktyki: http://mikrokontrolery.blogspot.com/2011... [syntax=c]PORTB &= 0x0F; to samo co PORTB = PORTB...
To jakiś cud, biorąc pod uwagę, że pokazany program nic przez UART nie wysyła. Czy zweryfikowałeś częstotliwość zegara procesora (np. miganie diodą w przerwaniu timera)? Na rejestrach BSRR i BRR nie wykonuje się operacji logicznych, bo nie ma to żadnego sensu.
No to rozumiem, ale czy to oznacza, że ORI jest podobny do OR? Czy też czym się różnią?
- Programowanie w C - proste programy command line na PC. - System binarny, kody NKB, U2, BCD. - Podstawy algebry Boola i logiki cyfrowej - operacje logiczne, bramki. - Podstawy elektroniki. A potem już tylko przeczytać manual mikrokontrolera i można zaczynać zabawę.
Witam. Jestem początkującym programistą sterowników PLC. Mam do czynienia z urządzeniem firmy Omron ale ten sam problem miałbym pewnie dla produktów innych firm. Chciałbym jako argument funkcji logicznej ustawić wejściowy bit sterownika. Nie jest to możliwe w bezpośredni sposób, ponieważ funkcja operuje na całych słowach. Jak to obejść ? Będę bardzo...
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
Diody świecą w określony sposób. Chcesz działać na 5 diodzie (liczymy od zera - 4 bit, sygnał D4, wartość 16). Zapalenie 5 diody: b:=portreadb(LPTdata); {odczyt portu} b:=b or 16; {operacja logiczna na bitach - ustawienie 1 na 4 bicie} portwriteb(LPTdata,b); {zapis wartości do portu} - 4 bit został...
GPIOA->CLR = 0x44444411; Jest bardzo czytelne, bo dokładnie wiesz, co po takiej instrukcji masz w rejestrze. Jeszcze bardziej czytełnie byłoby, gdybyś zamiast wartości liczbowej w instrukcji podstawienia użył stałych symbolicznych. Użycie operacji logicznych na rejestrach ma tę wadę, że czytając jedną instrukcję nie wiesz, co jest na pozostałych bitach...
>A ile cykli zegarowych przypada na jeden cykl maszynowy? 4 cykle >A prztwarzanie potokowe - podstawowa cecha procesorów RISC? ma dwupoziomowy pipeline (tak piszą w dokumentacji) >A te zawieranie adresów w słowie to jak w nich wprowadzono? >Rozszerzająć słowo do dziwnych rozmiarów 12, 14 bitów... Architektura Harvard, z poziomu programisty...
"Program i założenia są błędne". ;) Przycisku nie obsługuje się przy użyciu przerwania portu - należy to robić przy użyciu przerwania timera. Ponadto w programie jest jeszcze jeden paskudny błąd: z powodu operacji logicznych na portach w obsłudze przerwania, opercje na portach w pętli głównej muszą być wykonywane w sekcji krytycznej - przy zablokowanych...
Z tego co pamiętam robi się to tak: [syntax=c]LPC_GPIO0->MASKED_ACCESS[1&... = 1; // stan wysoki na P0_2 LPC_GPIO0->MASKED_ACCESS[1<<2] = 0; // stan niski na P0_2[/syntax] Zalety takie, że aby ustawić port na wysoki/niski wystarczy zapisać bajt do jednej komórki w pamięci. Nie trzeba robić operacji logicznych. Podobnie przy odczycie....
/* Podaje na piny danych, index rejestru do którgo zapisujemy */ Modyfikując przy tym 8 pozostałych bitów. /* Ustawiam PIN CS w stan niski */ ILI9325_CTRL_GPIO->BSRRH |= ILI9325_CS; Rejestry BSRR nie wymagają używania operacji logicznych. LCD_DATAPIN_IN; Skąd mamy wiedzieć co robi to makro? 4\/3!!
Zaczynam swoją przygodę z mikrokontrolerami Lepiej powiedz czy potrafisz bez zaglądania do internetu powiedzieć co robi ta funkcja: int foo(uint32_t x) { const uint16_t plt = 0b0110100010101100; x ^= x >> 16; x ^= x >> 8; x ^= x >> 4; return (plt >> (x & 0xF)) & 1; /* lub inna wersja */ int bar(uint32_t...
Implementacja już jakoś idzie, gorzej jeszcze z optymalizacją oraz przewidywaniem wszystkich sytuacji, ale myślę, że to przyjdzie z czasem. I mam nadzieję, że nikt nie będzie miał nic przeciwko, jeśli powiem, że możesz zamieszczać kolejne proste programy w celu weryfikacji. Ale tylko pod warunkiem, że będziesz oczekiwał wskazówek i uwag, a nie gotowych...
co może to nie jest zapis binarny panie kolego :-) tylko taki trochę prowizoryczny (już n-lat temu taki był) przeczytaj jeszcze raz moją odp wyżej. związek może być rózny, nie znam systemu więc trudno mi odpowiedzieć, nr pracownika jest na pewno zapisany na karcie, mogą to być jakieś operacje logiczne każdej z lini, na pewno jest jakaś procedura odczytu,...
Witam, oto co wyczytałem w instrukcji do tego sterownika : 1. Można go programować programatorami Siemensa od 610 do 670 na pewno. 2. Do programowania on-line jest potrzebna karta A500 3. Na sterowniku dwa dolne LEDy to STATUS i RLO. Służą do podglądania Stanu bitu oraz RLO(wynik operacji logicznej) dla adresu programu ustawionego na "wybierakach" poniżej....
W WinAVR możesz też robić operacje logiczne na bitach. ;) Jeśli chcesz ustawić bit, to musisz do niego dodać 1. Jeśli chcesz bit wyzerować, to musisz go pomnożyć przez 0, czyli np. PORTD |= (1<<2) // pin 2 w stanie wysokim PORTD &=~(1<<3) // pin 3 w stanie niskim Jak czegoś nie rozumiesz to pytaj. ;) Edit: Nie zauważyłem,...
czyli chodzi o to ze stany d7-d4 opadaja razem z E i wyswietlacz ich nie rozpoznaje? tak mi wyszlo w symulatorze to najprosciej polaczyc linie danych do jednego portu a reszte do innego? LCD może być na jednym porcie , tylko Ty musisz nauczyć się zmieniać stan bitu (lub grupy bitów) nie ingerując w pozostałe , a to oznacz "zbratanie" z operacjami logicznymi...
1. Rejestry BSRR i BRR wymyślono po to, żeby NIE używać operacji logicznych na portach, a Ty piszesz np.: LCD_PORT->BSRRL |= (1<<DB4); - kompletnie bez sensu 2. Nie miałem nigdy problemu ze sterowaniem wyświetlaczy 5V zasilanych z 5V z STM32 zasilnych z 3.3,a nawe z 3.0 V. Szukaj błędu w połączeniach lub definicjach/konfiguracji portów. Sprawdź...
Obojętnie jakim. Chociażby wbudowanym w DMDE. chodzi o zweryfikowanie, czy masz upośledzony zapis, czy to problem na poziomie struktur logicznych. Hex-edytor pozwala wykonać operację bezpośrednio na sektorze niezależnie od struktur logicznych, więc jeśli operacja się nie powiedzie, możesz być prawie pewny, że problem ma charakter sprętowy.
A mógłbyś jeszcze napisać jak zrobić aby na M0.0 była 1 podczas trwania czasu timera (przez te 10 sekund) Jeżeli chcesz koniecznie żeby merker M0.0 miał wartość "1" przez czas trwania impulsu to musisz zrezygnować z pierwszego networka. A I0.0 = M0.0 Możesz przecież bezpośrednio używać timera w operacjach logicznych np.: A T1 AN M1.0 = M1.1 lub też...
Witam. Na moje oko tego już bardzo nie zoptymalizujesz w C. Pokaż może do czego to Tobie kompilator tłumaczy na asm (plik z rozszerzeniem *.lss). Będziesz miał pojęcie jak takie coś wygląda w asm. Jedyne co widzę na C, to: PORTB |= PORTB_MASK; Masz wykorzystany cały port, więc powineneś napisać: PORTB = 0xFF; Zaoszczędzisz jedną operację odczytu z pamięci...
Warto zauważyć, że w klasycznych sterownikach PLC wyjście (fizyczne) zmienia swój stan dopiero po zakończeniu całego cyklu programu. W tym przypadku najpierw wykonują się instrukcje z sieci 1 (w pseudokodzie można to zapisać jako Q0.1 := I0.1 OR I0.0), a następnie – z sieci 2 (Q0.1 := I0.2 AND I0.3), stąd ostateczna wartość wyjścia Q0.1 jest wynikiem...
Witam, Ostatnio wziąłem się za budowę sumatora 4 bitowego na bramkach logicznych (74LS08; DM74LS32; DM74LS86). Układ nie działał poprawnie więc zacząłem sprawdzać elementy czy są dobre i za uwarzyłem, że bramki logiczne dobrze wykonują operacje logiczne tylko że same dają sobie na wejścia napięcie około 2V czyli stan logiczny 1. Żeby uzyskać na wejściu...
No, ale Kolega pytał o S5, a nie S7. Jakie procesory masz na obiekcie? I która wersję Stepa? Oczywiście, rozumiem, że maszyny mają co najmniej 7 lat. Jeżeli są młodsze, to ktoś, kto włożył w nie S5 a nie S7 delikatnie mówiąc upadł na głowę... S5 jest systemem rodem z początku lat 80-tych ub. wieku i wtedy był systemem bardzo nowoczesnym i funkcjonalnym....
Jak to zrealizowac w kodzie? dokladnie tak jak napisal mietekn - porownujesz stan portu ze stanem z poprzedniego porownania - jesli sie zmienil (XOR) - to cos sie stalo - przycisk zostal puszczony/nacisniety. inne operacje logiczne pozwola wykryc tylko wcisniecie, albo tylko puszczenie przycisku. przykladowy kod, tym razem na ARMa, pracujacy nie w...
To nie jest schemat działania, tylko schemat budowy... Bufory chyba nie wymagają wyjaśnień, akumulator służy do przechowywania argumentu/wyniku operacji, ALU czyli jednostka arytmetyczno-logiczna służy do wykonywania operacji arytmetycznych i logicznych (jak wynika ze schematu - na tym co jest w akumulatorze), PC to program counter, czyli licznik programu...
... Niestety nie rozumiem tego zapisu return( ((PINB & (1<<PB5|1<<PB4))... ); Załóżmy , że wcisnąłeś P1 ... ... { unsigned char tym; tym = 1<<5 | 1<<4 // 00110000 tym = PINB & tym // 00100000 tym = tym >> 4 // 00000010 tym = tym ^ 0x03 // 00000001 return( tym)...
sprawa jest bardzo prosta, jesli masz do uzycia rotacje bitow w dwie strony i wolne 8 bitow tymczasowe. rotujac jedna zmienna w kierunku 1 (np prawo) pakujesz jeden ze skrajnych bitow do Carry, teraz musisz wiec wrotowac owe Carry do innej zmiennej, tyle ze w kierunku 2 (np lewo). dla prawo - lewo w Carry znajdzie sie najpierw LSB, i wyladuje nastepnie...
Siemens przy CPU podaje prędkość np. 0,1ms/kAW czyli procesor "przerobi" tysiąc operacji logicznych w czasie 100ns. Czas przebiegu całego programu jest więc zależny od jego wielkości (ilości operacji logicznych).
Czyli w tych routerach tylko to byś wpisał i by działało ? Spotkałem się właśnie z tym, że się tak stosuje, ale nie do końca rozumiem jak to działa, ponieważ jak przeglądałem tablice routingu dynamicznego, to zawsze nawet te routery, które są podłączone tylko z jednym inny to tak samo miały opisane połączenia jak każdy inny w sieci. Na przykład dla...
Co do TIM3->SR &=~TIM_SR_UIF; przyznam, że dalej nie rozumiem jaka jest różnica w obydwu przypadkach kasuje tylko JEDEN bit nie CAŁY rejestr. W jednym przypadku zeruje jeden bit, w drugim przypadku zmieniam jego stan na przeciwny. Operacja logiczna na którą się tak uparłeś i zamierzasz bronić do ostatniej kropli krwi generalnie ma same wady i zero...
w książce która poleca siemsens i która podałem wcześniej wszytko masz napisane czarno na białym na stronie 36 masz przykłady jak zamapować porty I/o na stronie 264 specyfikacje wejścia analogowego 10bitow 0..10V, word 27648 max wartość na stronie 266 przykłady jak to przeliczać dla tych co nie wiedzą wejścia bedą dostępne pewnie pod AI 0.0 i AI 0.1...
jaki jest binarny wynik operacji sumy logicznej PRAWDA i NEIN TRUE? Niein to niemieckie słowo oznaczające "nie", ale w logice stosujemy angielskie słowo "false", co oznacza "fałsz". Operacja sumy logicznej (OR) wynosi 1 (true) wtedy i tylko wtedy, gdy przynajmniej jeden z argumentów jest równy 1 (true). W tym przypadku...
WE1 typ4 bez akcji alarmowej WY1 typ24 przełącznik mono czas działania 15min wyzwalanie WE1 włączony ptaszek - aktywny podczas naruszenia polaryzacja - wyłączyć ptaszka WY1 będzie aktywne w czasie do 15min od zakończenia naruszenia WE1, jeżeli w tym czasie naruszy się WE1 to czas będzie liczony od nowa od momentu gdy WE1 przejdzie w stan nieaktywny....
Witam! RLO jest najczęściej tłumaczone jako rezultat operacji logicznych. Obrazowo jeśli masz np bramkę AND lub OR to jest to wynik jej działania. W dokumentacji znajdziesz informacje które instrukcje modyfikują RLO (głownie bitowe operacje logiczne) które są zależne od RLO np =,SET, RESET itp. oraz które nie zależą od stanu RLO.
Jak odwrócić te bajty? 1. Jaką operację (matematyczną/logiczną) masz na myśli pod hasłem "odwrócić bajty"? 2. W jakiej technologii potrzebujesz to zrealizować (jakiś język programowania, bramki logiczne, specyficzny mikrokontroler, itp.)?
A miałeś zmienić operację logiczną na BSRR na podstawienie... Znów prosisz się o błędy, nie wykonuj operacji logicznych na ODR, bo kiedy zaczniesz używać przerwań, odbije się to czkawką. Ja podejrzewam coś trywialnego, np. brak sterowania linii SS.
Dwie przetwornice, po 4 kanały z każdej, możesz wysterować z liczników TIM1 i TIM8, bez zbędnych komplikacji i bez konfliktów z elementami na płytce. Z trzecią będzie trochę trudniej, ponieważ liczniki TIM2..TIM5 nie mogą sprzętowo generować dead-time i będziesz musiał wykonać dodatkowe operacje logiczne lub kombinacje sprzętowe. Przy częstotliwości...
Witam :) Żeby poprawnie zainicjować kartę musisz postępować wg. schematu :) A oto i on: /*czyszczenie*/ ustawiasz CS karty w stan wysoki; wysyłasz 10x 0xFF; ustawiasz CS karty w stan niski; /* koniec czyszczenia*/ wysyłasz komende IDLE_STATE (0x00); po wysłaniu komendy sprawdzasz co odpowie karta, jeżeli odpowiedź jest różna od 0x01 przechodzisz...
Wykorzystując operacje przesunięć bitowych (>> lub <<) ale nie tak jak to zrobiłeś, bo w twoim przypadku zmienna dane jest przesuwana o wartość PD2 bitów w lewo, a następnie wykonywana jest operacja sumy logicznej z wartością PORTD. Ten fragment powinien mniej więcej wyglądać tak: Dodano po 44 Oczywiście to czy przesuwasz w lewo czy prawo...
Zainteresuj się operacjami logicznymi
no to uzywaj sobie jej dalej [; nie wiem jaki to ma sens, zeby uzywac dwoch operacji logicznych, skoro wystarczy jedna. widac tak bardzo odrzuca cie od poszukania informacji o tych operacjach logicznych, ze wolisz stosowac cos czego w ogole nie rozumiesz. 4\/3!!
BSRR i BRR zmieniają stan dowolnie wybranych bitów w wyniku samego zapisu jedynki, bez operacji logicznych. Odczyt z tych rejestrów zwraca wartość nieokreśloną, więc wynik operacji logicznej też jest nieokreślony. Z tymi dwiema linijkami ciut przesadziłem. To, co robi ta funkcja da się zapisać w jednej linijce: GPIOB -> BSRR = 0xffff0000 | ((1 <<...
Moim zdaniem to będzie tak (jako rozwiązanie zadania): Wariant z operatorem && : Wariant z operatorem || : [syntax=jquery]$('#myList li.current' || 'li.bar')[/syntax] W porównaniu OR jeśli lewy łańcuch nie jest pusty, zostanie zwrócony, a jeśli jest pusty zostanie zwrócony prawy łańcuch. W przypadku powyżej zostanie przekazany selektor '#myList li.current',...
Jak nie ma co optymalizować? Operacje logiczne powodują automatycznie promocję do integer. Stąd mimo, że EECR jest 8-bitowy, to pewnie suma jest wykonywana na 16-bitach. Potem kolejny odczyt EECR, znowu operacja logiczna. Gdybyś tylko zapisywał do EECR to może by przeszło. Co do optymalizacji - jazdy to są w programach, które są tak napisane, że najlepiej...
key= troszke logiczny operacji (logika ujemna) No tylko jakich konkretnie operacji logicznych trzeba użyć? Bo już próbuje i nie mogę znaleźć poprawnego rozwiązania.
Dobry zwyczaj: 5 V do wejść układów 3V podłącza się przez rezystory. Rejestry BRR i BSRR wymyślono właśnie po to, żeby nie wykonywać na nich operacji logicznych! źle: GPIOE->BRR |= 0x00008000; dobrze: GPIOE->BRR = 0x00008000; Operacje logiczne kończą się źle, gdy ktoś używa ich w różnych procedurach działających na różnych priorytetach (np. przerwanie...
Nie myl przekazywania obrazu wyjść na fizyczne wyjścia z rezultatem operacji logicznej (RLO). Rozpatruj program linijka po linijce. Dla procesora po wykonaniu pierwszego Networku Q0.0 jest "1"(nie mówimy o fizycznym wyjściu) jeśli I0.0 jest "1". W związku z tym wynik operacji logicznej w Networku 2 jest "0" więc Q0.1 nie będzie ustawione na "1". Pozdrawiam
Generalnie w AVR-ach nawet mających te nowoczesne rejestry nie da się tego zrobić jedną operacją. Musisz zapisać rejestr ustawiający i zerujący (będą to dwa zapisy) albo musisz odczytać wartość, dokonać operacji logicznych i następnie zapisać. W STM32 da się jako że jeden rejestr zawiera część zerującą i ustawiającą i da się jedną operacją zapisu można...
Nie wiem co jest błędnego w mojej składni. Dyrektywa #define ze znakiem równości lub bez, a kompilator wali błędami. Czy jest coś zamiast low () i high () bo tego też się czepia. #define ma być bez znaku = :!: Co w tym jest źle? #define mc32u1 r17; multiplicand byte 1 #define m32u5 r25; result byte 5 adc m32u5,mc32u1 ; Chyba nie bardzo wiesz , jak...
Ta gałąź z wyłącznikiem jest dość nieszczęśliwie zrobiona... cóż... Jeśli nie zależy Ci na pewności działania a LED nie jest biały ani niebieski podłącz do portu A.0 rezystor pull-down sporej wartości, wyzeruj bity DDRA.0 i PORTA.0. PINA.0 może zostanie ustawiony po przyciśnięciu przycisku. Ale nie na pewno, bo producent gwarantuje stan niski dla napięć...
Czy w ogóle goła płyta główna z podpiętą ładowarką, RAMem, procesorem i układzikiem z diodami (kontrolki ładowania, zasilania i pracy dysku) ma szansę odpalić? Tak. Komputer jako urządzenie logiki cyfrowej i matematycznej potrzebuje do działania wyłącznie zasilania, płyty głównej, procesora i RAMu. Dysk, klawiatura, monitor jest zbędne by uruchamiały...
Witam, Abstrahując od układu odniesienia - ponieważ nie dostarczyłeś kodu owej funkcji do której przekazujesz te tablice. To cytuję: "Nie rozumiem tylko dlaczego gdy wrzucam do tej funkcji tablicę tab[8], której wartościami są powyższe tablice, program działa również dobrze i wyświetla mi po jednej diodzie w odstępach np. 100ms. Przecież funkcja sprawdza...
To jest bufor :wink: Bufor to chyba najprostsza forma bramki – nie wykonuje żadnych operacji logicznych, wyłącznie powtarza na wyjściu sygnał z wejścia. :spoko:
if (((PINC && 0b00100000))) - błędem jest && - to operacja logiczna and, a ty chcesz zrobić maskowanie, czyli tylko jeden &.
Popatrz na parametry tDSW i PWEH w dokumentacji HD44780. Wcześniej przeczytaj, jak działa zapis do FIOSET i FIOCLR i pomyśl, jaki sens mają operacje logiczne na tych rejestrach.
rozumiem, że lepiej zrobić to w bloku always, np tak nie, nie o to chodzi; rzecz w tym, by specjalny sygnal, jakim jest zegar nie bramkowac, nie uzywac w logice, chyba ze ma sie ku temu dobry powod i wie sie, co co sie robi; chodzi o to, by zegar docieral do wszystkich zatrzaskow w tym samym momencie, kazda logika wprowadza dodatkowe roznice w propagacji...
Użycie operacji logicznych na BSRR jest błędem, i to podwójnie. Nie ma to nic wspólnego z "ostrożnością". Ciekawe, co to za "Delay", skąd go wziąłeś i co oznacza jego argument.
Mam takie szybkie pytanie jak to jest w C/Arduino z wartościami logicznymi. Czy false jest tylko i wyłącznie w przypadku gdy wszystkie bity zmiennej są ustawione na 0? W różnych językach programowania są krzaczki w operacjach logicznych. Nie chciałbym mieć jakiejś niespodzianki.
( PORTC & ~0x3f ) Operator ~ powoduje dopełnienie jedynkowe liczby 0x3f - zamienia bit 1 na 0 i odwrotnie. Wynik tej operacji to 0xc0 = 0b11000000 & realizuje iloczyn logiczny wartości w rejestrze PORTC i ~0x3f Oprócz tych działań tak jak napisałeś ustawiana jest jedynka logiczna na PC1 1 << PC1 oznacza przesunięcie logiczne w lewo 1 o...
Dlaczego stosujesz następujący zapis: WDTCR |= (1<<WDTOE | 1<<WDE); WDTCR |= (1<<WDP1 | 1<<WDE); ? Mam wrażenie, że powinno być: WDTCR = (1<<WDTOE | 1<<WDE); WDTCR = (1<<WDP1 | 1<<WDE); Weź pod uwagę, że takie ustawianie w procesorze AVR wymaga odczytania rejestru, wykonania...
Nie zainicjujesz dysku, bo masz zerową pojemność. Problem lezy głębiej, nie da się go rozwiązać operacjami na poziomie struktur logicznych, nie da się wykona ć operacji na poziomie struktur logicznych, bo nie masz dostępu do strefy adresacji LBA. Wyjmuj dysk z obudowy i podaj jego model.
Co gorsze, nie mam na to żadnego pomysłu. Jeśli zrobiło się coś ręcznie to prawdopodobnie zna się sposób jak to zrobić (szczególnie jak to "operacje logiczne"). Pewnie jakby opracować opis własnego sposóbu wnioskowania to udało by się na jego podstawie opracować kod.
(at)mas24 bez zrozumienia podstawowych operacji logicznych, kolejności wykonywania działań i czytania DS-ów ze zrozumieniem, myślę że jest to zadanie awykonalne. Permutacji jest tak wiele że strzelenie na ślepo może zając dłużej niż trwa życie człowieka.
Akurat nie, bo w portach z maskowanym dostępem operacja logiczna jest wykonywana w samym rejestrze portu, a nie w sterowniku szyny, więc nie ma tu r-m-w. Nigdzie nie pisałem, że BitBand jest zły. Napisałem tylko, że niekoniecznie nadaje się do zerowania znaczników przerwań w rejestrach peryferiali, tym bardziej, że ten sam efekt można osiągnąć przez...
Akumulatory to rejestry wewnętrzne procesora logicznego, do których ładujesz dane na których chcesz operować, a następnie wykonujesz na tych danych instrukcje. Są to operacje bardzo niskiego poziomu, sprowadzające się w zasadzie do samej konstrukcji procesora i wykonywania w nim operacji arytmetyczno-logicznych. Zmienne MD itd to obszary pamięci w których...
while(SPI1->SR & (SPI_SR_TXE == 0)); jeszcze gorzej... Problem polega, że po pierwszej wysyłce mam dodatkową przerwę +/- 2.2us i przez to prawdopodobnie nie działa mi taśma Jak już poprawisz tą pętlę, to dodaj ją pomiędzy kolejne wpisy do rejestru DR. EDIT: Problem bierze się generalnie z tej tyrady operacji logicznych |=. Błędnie założyłeś, że wartości...
Witam, zaczynam przygodę z mikrokontrolerami i mam pewien problem, czytam kilka książek dla początkujących oraz przeglądam przykłady w internecie, i mam pewien problem, ponieważ widziałem kilka równoważnych zapisów(przynajmniej tak mi się wydaje), zmian wartości wybranego bitu. -makra(?) cbi() i sbi() -makro register_bit -makro _BV() w połączaniu z...
Witam Dopiero zaczynam moją przygodę z programowaniem, operacjami logicznymi itp. Systematycznie przerabiam dostępne kursy i jakkolwiek wiem że wynikiem operacji PORTA |= (1<<PA3); będzie stan 1 na nóżce PA3 to za nic nie mogę rozkiminić skąd to się bierze? Skoro standardowo PORTA jest ustawiony na wejście czyli stan 0 to logicznym jest że PA3...
# to tzw. midline output. W skrócie - przyjmuje wynik ostatniej operacji logicznej i przekazuje ją do następnej funkcji. Logika to generator sygnału (o długości trwania MW22) i przerwy (MW20 - MW22).
To dość proste zadanie można je wykonać na wiele sposobów .Ważniejsze jest to żebyś wymyślił to sam, metod jest wiele jedna to tabela ina to operacje logiczne, ....
Swoją drogą to trochę dziwne w porównaniu do innych języków, że w Lazarusie między And trzeba wprowadzać wartości w nawiasach bo inaczej pisze, że wprowadzono mu nieprawidłowy argument. Jak tak musi być to niech będzie, ale trochę mi się ciężko przestawić z przyzwyczajeń z innych języków. Tak naprawdę, to każdy Pascal ma tak samo. Operacje logiczne...
(at)antoniv10: Ta linia kodu jest błędna i zapewne niepotrzebna: DDRA &= ~(1 << PA5) | ~(1 << PA6) | ~(1 << PA4); Dlaczego używasz operacji logicznych do zapisu rejestrów ADC? (at)mpier: Odczyty ADC są liczbami bez znaku - błędny typ zbędnej tablicy. To samo dotyczy zmiennej licznik - za długa i niepotrzebnie ze znakiem.
Powtarzam: pokaż kod, który wg. Ciebie ma działać, a nie działa. PS. Rejestry BSRR i BRR zostały wymyślone po to, żeby nie trzeba było używać na nich operacji logicznych, a Ty właśnie to robisz.
zapoznaj sie z instrukcjami warunku if oraz petla while ewentualnie for, plus dodatkowo operacje logiczne. Mysle ze tyle starczy, program raczej banalny. Wystarczy zapoznac sie z najprostszym tutorialem i poglowkowac.
Czy tutaj nie ma żadnego babola, tzn czy ten kod nadaje się do projektów czy trzeba coś tu jeszcze dodać? Jest - zakładanie że w rejestrze CTRL jest coś sensownego i operowanie na nim przez 3 operacje logiczne zamiast jednego przypisania. 4\/3!!
Cieżka sprawa.. niektórych liczb nie da się przedstawić jednoznacznie w postaci binarnej np. 0,1 .. nie wiem jak to zrobić.
Gdzieś chyba w latach 70-tych spotkałem się z koncepcją elementów/kostek "dmuchanych" realizujących prawie wszystkie operacje logiczne. Wtedy elektronika była droga! Tak więc powstała wizja komputera napędzanego kompresorem lub zwykłym odkurzaczem. Źródło: ukazała się wtedy na ten temat książka...
Witam jestem początkujący w elektronice. mam do wykonania projekt jednostki alu: są dwa wejścia 2 bitowe A {A0,A1) i B {B0,B1} oraz dwa bity sterujące S {S0,S1} na wyjściu 3 bity tj. O {O0,O1,P-bit przesunięcia} układ ma dla: S {00} -dodawać A + B S {01} - ma pzreprowadzać operację logiczną not na danych z A S {10} - ma pzreprowadzać operację logiczną...
No widzę, że ktoś nie uważał na lekcji matematyki ;) Sposobów jest mnóstwo ... można dodawać, odejmować wielokrotności (potęgi) dwójki, można stosować operacje logiczne and, or, xor .... wszystko zalezy co chcesz osiągnąć lub jak szybko ma to działać.
To nie będzie takie łatwe. Trzeba zrobić "prosty komputer" do wykonywania operacji logicznych - potrzebne wielostykowe przekaźniki. Do realizacji choćby czwartej operacji w której występuje "i" a nie "lub" musisz użyć w szeregu styków przekaźników 1 i 3 które zasilą linię 4 ale przez kolejny przekaźnik który po zadziałaniu rozłączy napięcie z wyjść...
X &=~0b00001111; X |=Y & 0b00001111; Jest ok, ale można szybciej. Pierwsza linia jest przez kompilator widziana tak... X=X&0b11110000, dlaczego? Bo 0b00001111 jest stałą i jeśli kompilator może na niej dokonać operacji arytmetyczno-logicznej przed kompilacją to ją zrobi i podstawi gotowy wynik. Dodatkowo nie zwiększa to czytelności - czy Ty sam będziesz...
Muszę sprawdzić, co będzie jak dam dwie instrukcje zerowania - może któraś trafi? To naprawdę kiepski pomysł... Czy ta flaga to jest zmienna czy mowa o jakimś rejestrze? Ja bym tutaj stawiał na typowy problem atomowego dostępu - innymi słowy cokolwiek by to nie było, jeśli Twój rdzeń nie obsługuje takiego zapisu JEDNĄ i NIEPRZERYWALNĄ instrukcją, to...
Próbowałem 2 sztuki ATMEGA162. Obie pracowały stabilnie na 20MHz. Program pisany w C, niezbyt skomplikowany (operacje logiczne, arytmetyczne, skoki warunkowe, dostęp do pamięci etc, nie wykorzystywałem timerów, przerwań, pamięci EEPROM).
System już istnieje i jest zaakceptowany przez klase. Chodzi jedynie o wymiane kilku elementow tego systemu (moduły elektroniczne wykonujące operacje logiczne należy wymienić na PLC) a nie jego przebudowe. Będę wdzięczny za bardziej opisową poradę zgodną ze specyfiką opisanego problemu.
Przecież tu się nic skomplikowanego nie dzieje w tych wstawkach asemblerowych - sklejanie par półbajtów w całe bajty. Nie możesz tego przepisać w "zwykłym" bascomie? Chyba bascom wspiera operacje logiczne, przesunięcia bitowe i przypisania? :) Pozdrawiam, Dr.Vee
A który znacznik kolega ma na myśli ...... Piotrek Masz rację. Operacje logiczne nie zmieniają znaczników - troche się zagalopowałem i nie przemyślałem tego do końca. A pozatym napisałem "prawie dobrze":D:D:D
Najlepiej przeczytać dokumentację i wyczytać w niej, że po starcie procesora niemal wszystkie bity w rejestrach konfiguracyjnych mają wartość 0 i nie ma potrzeby ich zerowania, a konfiguracja portów w 95% da się zrobić przez proste podstawienia, bez operacji logicznych na rejestrach.
GAL sa to programowalne układy logiczne, a nie mikroprocesory. Nie posiadają one rozkazów dzielenia ani mnożenia, a jedynie podstawowe operacje logiczne AND, OR, NOT i przerzutniki. Mozna na nich spróbować zrealizować mnożenie i dzielenie poprzez zapisanie tabeli prawdy.
Linie masz podłączone bezpośrednio z FPGA do LCD czy też dodałeś szeregowo rezystory rzędu 33R? Jak podejrzewam zrobiłeś stronicowanie czyli zapisujesz dane na nieaktywnym, niewyświetlanym obszarsze DRAM po to by przełączyć strony po modyfikacji bądź dokonać operacji logicznej dla uaktualnienia?
operacje matematyczne operacje bitach operacje obrazie
gniazdka angielskie zasilanie manipulatorów integra kontrolka termostat świecić
modernizacja instalacji elektrycznej modernizacja instalacji elektrycznej
Częstotliwość pilota i radia FM w wieży Tetris MCD 543 Czy warto kupić wzmacniacz Technics SU-V450?