Najbardziej efektywnie jest użyć jednej kości SDRAM podłączonej do MCU zawierającego zintegrowany kontroler pamięci SDRAM. Weź pod uwagę, że potrzebujesz 12 bitów adresu wiersza i 10 bitów adresu kolumny. Atmega jest 8-bitowa, więc adres wiersza wystawiasz w 2 operacjach (8+4, 6+6, 4+8, czy jak tam chcesz), a to trwa. Zapisanie pierwszego rejestru adresowego...
Ładuj bit przesunięty o 2 bity w górę od adresu znajdującego się w rejestrze adresowym AR1 w chwili wykonywania instrukcji. Czyli praktycznie ładuj bit 02 ze słowa wskazanego przez AR1. (rejestr wskazuje co prawda na bit, ale zawsze się tak go ustawia, aby był to bit zerowy kolejnego słowa lub bajtu) Numer DB jest również wskazany przez ten rejestr.
Zgaduję, że zapisujesz pierwszą komórkę w pamięci EEPROM i tam są błędy? Jeżeli tak, to nic nowego. Nie używa się pierwszej komórki, ponieważ jakikolwiek błąd zasilania, zapisu, kontrolera (timing) powoduje, że automatycznie jest zerowany rejestr adresowy i zapis jest prowadzony do komórki z adresu 0x00. Zacznij zapisy od komórki 0x01 i powinno być...
uprzedzam że IBM r50p mimo tego iż posiada LPT to jest to LPT wielce trefne gdyż najprawdopodobniej osadzone na hoście USB.. świetnie sprawdza się z drukarkami, ale nijak działać na tym jako na rejestrach przestrzeni adresowej I/O w celu "pomachania" pinami...
Witam, taki rejestr przesuwny (kolejkę FIFO) można zrealizować na kilka sposobów: 1. użyć do tego funkcję BLKMOV 2. napisać odpowiedni kod w STL-u wykorzystujący rejestry adresowe 3. wykorzystać funkcję FC92 (REG_FIFO) z biblioteki Standard Library->S5-S7 Converting Blocks 4. pobawić się z funkcją FC85 (FIFO) z biblioteki Standard Library->TI-S7 Converting...
To wiem :D Ale ja bardziej pytam czy zanik zasilania niczego nie zepsuje poza niekompletnym zapisem. Nie zawsze niezapisane dane są cenne, ważne żeby to co już zapisane poskładać sensownie i nie uszkodzić elektroniki. Procesor nigdy nie powinien pracować przy nieodpowiednim (niewystarczającym) zasilaniu. Dlatego warto włączyć BOD. Przy niedostatecznym...
Problem z komórką zero zapewne wynika z tego, że szczególnie starsze ATmegi, przy niepewnym zasilaniu lubią nadpisywać tą komórkę - rejestr adresowy EEPROM zawiera zero, stąd ten problem. Ale rozwiązaniem jest raczej zabezpieczenie procka, przed działaniem przy napięciu spoza zakresu poprawnej pracy, czyli wykorzystanie układu BOD. Wtedy problem znika....
A pamięć musi być bezpośrednio adresowana z CPU? Jeśli tak, to puścić ją z prędkością dwukrotnie większą niż CPU i FPGA (tu pojawia się pewien problem, bo żeby wszystko działało synchronicznie CPU musi być taktowane wielokrotnością DOTCLOCK), wtedy łatwo można zrobić naprzemienny dostęp do pamięci - w jednym takcie CPU w kolejnym FPGA itd. Albo prościej,...
# oznacza funkcję OR * to AND W tym kodzie nie ma żadnego rejestru Wygląda jak dekoder adresowy. Ale z GAL jest taki problem, że często działają za szybko dla systemów 8-bitowych i trzeba opóźnić sygnały sterujące.
Jeszcze z ciekawostek, to w niektórych wersjach AVR (np atmega128)przy niestabilnym zasilaniu (miękkie z tendencją do sporych spadków) i pracy z pamięcią EEPROM, możliwe jest, że właśnie w tej pamięci nadpisane przypadkowymi danymi zostaną pierwsze 2, 3 bajty. Zazwyczaj pomaga ustawienie bitu brownout (choć nie zawsze). Ja z praktycznego punktu widzenia...
Panowie, a nie da się tego wykonać na rejestrach adresowych z wykorzystaniem pętli Loop? A, różne typy danych w db...
Nie ma problemu. Ustawiasz wielkość bloku na 200 bajtów, i tylko robisz kolejne restarty DMA bez modyfikacji rejestrów adresowych. W ten sposób bedą transmitowane bloki po 200 bajtów spod kolejnych adresów.
Rejestr adresowy DMA ma typ uint32_t, więc i tak gdzieś ta konwersja musi zaistnieć. Dlatego waśnie nie używam bibliotek SPL. :)
Zwróć uwagę, że w F4 każdy kanał DMA ma 2 rejestry adresowe - można więc wykonać transmisję bez jakichkolwiek przerw, obsługując kolejne przerwania od kawałków danych w czasie transmisji. Mamy też przerwanie od połowy transmisji - możliwości przyspieszenia i zrównoleglenia jest naprawdę sporo.
Może nie traci - odczytaj EEPROM i porównaj. Prawdopodobnie przekłamanie dotyczy jednego bajtu EEPROM, tego na który aktualnie wskazuje rejestr adresowy EEPROM. Stąd też, ustaw wartość tego rejestru na nieużywaną komórkę pamięci EEPROM zawsze kiedy się do tej pamięci nie odwołujesz, możesz np. na 0 i pominąć tą komórkę pamięci przy zapisie (zapisywać...
Instrukcja LPM zawsze używa rejestru Z jako rejestru adresowego, Ponieważ jego wartości nie zmieniasz, więc dwa razy odczytujesz spod tego samego adresu. Swoją drogą po co ta wstawka?
Witam, Może spróbuję L #ProgramNr L 1 -I //Operacja odejmowania #ProgramNr - 1 L 242 *I //Operacja mnożenia (#ProgramNr-1)*242 L 0 +I //Dodawanie [ (#ProgramNr-1)*242] + 0 T #Temp_1 //Zapamiętuje wynik wszystkich operacji w zmiennej Temp_1 L #Segment L 1 -I //Odejmowanie (Segment-1) L 12 *I //Mnożenie (Segment-1)*12 L 2 +I //Dodawanie [(Segment-2)*12]+2...
Jest tylko jeden bufor dla całego EEPROM. W efekcie to gdzie jego zawartość zostanie zapisana zależy wyłącznie od rejestru adresowego NVM. Danych nie zapisujesz do rejestru danych NVM ale bezpośrednio w obszar pamięci do której jest mapowany EEPROM (niezależnie czy mapujesz, czy nie). Adresacja w tym obszarze jest normalna dla odczytu EEPROM, przy zapisie...
Program jest źle napisany, bo: - powinien używać dwóch albo trzech rejestrów adresowych do adresowania dwóch argumentów - po jednokrotnym załadowaniu wystarczy je potem inkrementować. - bezsensownie dodaje przeniesienie do zera, zamiast po prostu uwzględniać je przy sumowaniu drugiego i trzeciego bajtu.
Tak tylko przy rozbudowie ilości linii zwiększają ci się linie adresowe do multiplekserów w przypadku rejestrów nie ma takiego problemu zawsze jest ich tyle samo a rozbudowywać możesz do woli.
Wciąż nie wiem co to za dodawanie poza adresem... Jeśli miało to być przesunięcie wskazania, to powinno się odbyć w nawiasach [], choć nie jestem pewien, czy kompilator dopuszcza mieszanie rejestru adresowego (jakim jest BX) z rejestrem segmentowym i jeszcze z wartością bezpośrednią... Tak poza tym podając adres uściślij system liczbowy, bo tylko można...
Trochę tak na zmianę się wypowiadamy, ale zajmujemy się tym samym. Jeżeli chodzi o to czy wczyta 24 bitowe słowo to zależne jest od tego czy zastosuje w niej sprzętowe czy mikroprogramowane sterowanie. Dla tej pierwszej wystarczy 16-bitowe słowo i będzie tylko działała dla podanego wcześniej algorytmu. Jeśli zastosuje mikroprogramowaną jednostke to:...
Spójrz dokładnie na strukturę rejestru adresowego I2C w STM w trybie 7-bitowym masz ze bity 7:1 odpowiadają bitom 7:1 adresu. TU nie ma przesunięć! Przecież ostatni bit adresu układu świadczy o kierunku transmisji więc w tym rejestrze jest nieistotny.
Po rozmowie ma to wyglądać tak: - przekładniki - przetwornik a/c 6 kanałowy najlepiej - mikroprocesor 8051 - LCD i zewnętrzny RAM Sposób podłączenia RAM i LCD mam z resztą jak widać zamieściłem wyżej. Na początku miałem koncepcje pracy 4 bitowej ale po "interesującej" rozmowie kazano mi przejść na 8 bitową komunikację. Tak więc schemat podłączenia LCD...
Mylisz rejestr z jego mapowaniem do przestrzeni adresowej. To są oczywiście dwa oddzielne rejestry, najstarszy bit określa, który z tych rejestrów jest aktualnie zmapowany do przestrzeni adresowej, czyli do którego z nich zostanie przesłanych pozostałych 7 bitów.
Żadnych return nie trzeba. loocasm - jakie zmienne wg ciebie mają być volatile? Chyba nie te wskaźniki do EEPROM? Oczywiscie te *_temp muszą być, ale tego jak są zadeklarowane nie widać. Jeden błąd jaki widzę to to, że za pomocą read/write_byte odczytujesz/zapisujesz zmienne 16-bitowe. Druga rzecz - jak często są przerwania? Bo zapis do EEPROM troche...
Przyczyna jest prosta i nazywa się stara płyta(stary BIOS, stare kontrolery dysków). TYLKO stary bios. Wielkość rejestrów adresowych kontrolera jest stała od czasów powstania specyfikacji AT i pozwala na adresację dysków do chyba 136GB. Ograniczenia wnosi tylko i wyłącznie Bios. Teoretycznie więc można wypuścić Bios do jakiegoś starego 486 który będzie...
To co pokazałeś to jest właśnie doczyt z Tablicy elementu określonego zmienną INDEX. Musisz pojąć jedną rzecz w asm nie ma dosłownie czegoś takiego jak tablica, jest tylko zarezerwowany obszar pamieci a Twoim przypadku etykieta Tablica jest to właśnie adres początku tego obszaru, tak więc jeśli dodasz do tego zawartość INDEX wtedy otrzymasz adres komórki...
Pierwszym prockiem z wieloma akumulatorami był 68000. 16 (15) rejestrów danych, 8 (7) rejestrów adresowych. Rozkaz mov miał "tylko" 4096 kombinacji! Procek już w 1981 roku miał rejestry 32bit, choć magistralę zewnętrzna 16-bit (był 68008 z 8-bit magistralą). 68020 był już w pełni 32-bit (Amiga 1200, Atari Falcon). Na tym procku optymalizacja w C mogła...
Dodanie RAM do systemu bezpośrednio umożliwiają tylko mikrokontrolery Mega64 i Mega128, ale kosztem dwóch portów (adresowanie A8-A15, szyna danych+A0-A7) i dwóch sygnałów sterujących (RD i WR) - to 18 wyprowadzeń. W mniejszych MCU trzeba dobudować rejestry adresowe i danych (3X8) oraz linie sterujące (RD i WR). Zakładając, że transmisja do rejestrów...
Kod instrukcji ten sam, ale różne rejestry i mapy adresowe.
Nie ma żadnych. W starych AVRach był problem z komórką o dresie 0 - przy niestabilnym zasilaniu lubiła się nadpisywać - domyślnie rejestr adresowy EEPROM zawiera 0 i jeśli coś się poknoci to ta komórka cierpi. W poprawnie zaprojektowanych konstrukcjach, po włączeniu BOD problemu nie powinno być. A nawet jeśli jest to nic nie stoi na przeszkodzie, aby...
Dlaczego? Czy jednak ATMega48 jest uboszszy od ATMega88 nie tylko pod względem mniejszej pamięci? Pomijając już ograniczenia BASCOM-a w starszych wersjach, to sprzętowo połowa rejestrów MEGA88/48/168 znajduje się w innej przestrzeni adresowej. Dlatego dostęp do nich nie jest możliwy przez klasyczne IN / OUT. Również DEMO w wersji 1.11.8.7 pokazuje...
Problemz rejestrem adresowym i zapisem do EEPROM polega na tym, ze taka sytuacja moze wystapic przy wylaczaniu zasilania, szczegolnie kiedy nie masz ustawionego BOD. Empirycznie sprawdzilem to w ATMega8, czyli stosunkowo nowym procku. Ustawianie EEADR na nieuzywana komorke po prostu jest bezpieczne i zalecane przez Atmela. Co do zapisu to chyba standardowe...
A jeśli z jakiegoś powodu ci to nie odpowiada to musisz zrobić własną implementację funkcji obsługi EEPROM. Nie mogę zamknąć całej funkcji, gdyż ona może trwać nawet kilkanaście milisekund, a projekt wykorzystuje 8 funkcji ISR i na 100%, któraś z nich wystąpi w trakcie tych kilkunastu milisekund. Ech...myślałem, że rozwiążę problem "na szybko" korzystając...
Rejestrem EEWE? Nie myl takich rzeczy bo łatwo kogoś (albo nawet samego siebie) wprowadzasz w błąd. EEWE to bit z ATtiny26. Przypuszczam że chodzi ci o rejestry EEARH i EEARL. Jest to adres komórki którą chcesz zapisać lub odczytać w pamięci EEPROM. W przypadku ATtiny861, który ma 512 bajtów EEPROM starszy rejestr adresowy (czyli EEARH) będzie przyjmował...
:arrow: projektavr EESAVE działa tylko podczas kasowania układu przez programator (odcina sygnał kasujący od EEPROM-a). Starsze wersje AVR'ów miały tą wadę, że podczas wahań zasilania w czasie zapisu EEPROM zerowany był rejestr adresowy EEARH:EEARL, co powodowało zapisywanie do zerowej komórki pamięci. Pomijając zastosowanie układu BOD, poleca się nie...
Tylko uzupełnię, że czasami widnieją w nocie dwa adresy - jeden odnosi się do przestrzeni adresowej procesora, do komórki pod którą mapowany jest rejestr, a drugi do przestrzeni IO procesora (dotyczy to tylko niektórych rejestrów, które są widoczne jednocześnie w dwóch przestrzeniach adresowych).
Oj, trochę źle przeczytałem komunikat, był wpis, że nadpisuję pamięć programu. Zaraz też szybko doszedłem, że w nocie katalogowej był podany adres word a nie byte i zamiast zaadresować 0x7000 miałem 0x3800. Stąd ten komunikat. Teraz już wszystko działa. Dzięki za pomoc:) mirekk36 , zależy mi na szybkości wykonywania programu generującego szum różowy,...
(...) Rzecz jasna na 8088. Nie mogę tylko zgromadzić potrzebnych układów scalonych. Jakby ktoś miał Pc/XT do odsprzedania to jestem chętny. Ta architektura jest bardzo fajna, przez 16-bitowość przewyższa AVR i Z80. 16 bit na szynie 8 bit i 20 linii adresowych. Geniusze w tym Intelu. Janek Geniusze w intelu :-) A co powiesz o Motorolli: 68000, zrobiony...
EEPROM pracuje przy takim zakresie napięć jak MCU. Skoro przy BOD na 3V i zasilaniu procka 3,3V masz resety to znaczy, że coś jest nie tak z zasilaniem. Masz wszystkie wymagane kondensatory filtrujące przy MCU? Odczyt z EEPROM jest szybki, tak jak z innych rodzajów pamięci, mapowanie znacznie przyśpiesza zapis (zapisujesz od razu blok 32 bajty, a nie...
Edytowałem pierwszego posta Czyli po co w polu adresowym jest podana wartość 215 przy adresowaniu rejestrowym skoro i tak bierzemy tylko adres wpisany w rejestrze? Gdzie w ogóle jest wskazanie, ze chodzi o R1. Dla mnie logiczne by bylo jakby zamiast 215 w polu adresowym byl adres rejestru.
Witam ! Przy każdym starcie systemu BIOS oblicza sumę kontrolną dla komórek CMOS-RAM z zakresu od 10h do 4Dh. Suma ta jest wynikiem dodawania wartości z komórek z podanego wyżej zakresu adresów i zapisywana w bajtach 4Eh i 4Fh pamięci CMOS-RAM. Jakakolwiek różnica w sumie kontrolnej obliczonej podczas startu przez BIOS z sumą kontrolną zapisanej w CMOS-RAM...
Pilnie poszukuję odpowiedzi na pytania: 1. Sposób zgłaszania żądania DMA przez urządzenie zew. I/O 2. Sposób wywoływania transmisji pamięć - pamięć 3. Do czego służy rejestr przejściowy w DMA 4. Który rejestr służy do przechowywania danej w transmisji I/O - pamięć 5. Jak odmaskować transmisję DMA w danym kanale 6. Jak zrealizowano dostęp do szesnastobitowych...
... czy ta procegura zapisu jest poprawna i2c_init(); i2c_start_wait(0xA0+I2C_WRITE); i2c_write(h); i2c_rep_start(0xA0+I2C_WRITE); i2c_write(i); i2c_stop(); Ja uważam , że nadeszła pora , byś zapoznał się z dokumentacją PCF-ka. Nie każe Ci czytać , wystarczy popatrzeć na tabele i rysunki , które jasno...
(at)inot Mnie osobiście drażni takie ułożenie pikseli (w pionie), ostatnio jak projektowałem sterowanie do VFD 256x64 to w akcie desperacji zleciłem zadanie Chat GPT. Powstało kilka procedur do wyświetlania. Pierwsze podejście na Arduino UNO, kolejne na RP Pi Pico (pamięć oraz zegar i dwa rdzenie za ~16 zł). Sterowanie równoległe, 8-bitów danych+14...
Jak by się bardzo uprzeć dało by się, tyle że albo musiałbyś przed diodą dać jakiś rejestr / przerzutnik, albo dynamicznie musiałbyś ten adres co jakiś czas wywoływać (wyświetlanie dynamiczne). Tyle że dokładając cokolwiek w ten sposób (1adres) niszczysz sobie całą hierarchię podziału (musisz dołożyć linie adresowe do określenia danego elementu) / lub...
Pomądrzę się... To jest typowy program napisany w Step 5 i skonwertowany do Step 7 bądź pisany przez automatyka który uczył się programować na Step 5 i "przesiadł się" na Step7. Kilka uwag: 1. Oczywiście pierwsza instrukcja otwiera DB. Ale ponieważ jest to podprogram, to otwierany jest niekoniecznie domyślny DB1 - a raczej DB podany jako parametr przy...
Umieszczenie bufora ramki w zewnętrznej pamięci SPI strasznie komplikuje dostęp do pamięci z aplikacji, ... Z tym się właściwie w pełni nie zgodzę. Jeżeli zastosować pamięć SPI np. 23K256 można wykorzystać jej wyjście danych jako od razu wyjście jednobitowego obrazu. Naturalnie trzeba dołożyć sygnały synchronizacji a obraz zmieniać będzie można w trakcie...
Witam Dolaczylem w swoim projekcie zewnetrzna pamiec SRAM do External Memory Controller w LPC 2214. Jest to pamiec 8 bitowa i posiada 19 linii adresowych. Pamiec podlaczylem wedlug rysunku 9 z User manual LPC2214. Rejestry kontrolera ustawilem w nastepujacy sposob: PINSEL2 = 0x0D800000; //Enable D7:0, CS0, OE, BLS0, A19:0 BCFG0 = 0x00000004; Moje pytanie...
No bez przesady, ile tranzystorów wymaga? Zestaw 8 bramek dla &= i 8 bramek dla |= (może nie prostych bramek, ale bramek z przerzutnikami itd.). Tylko jeden zestaw dla |= i jeden dla &= dołączany odpowiednio do wybranego rejestru przez szynę adresową w regionie bitband. Nie potrzeba przecież takich zestawów oddzielnie dla wszystkich rejestrów procesora,...
Czyli mam rozumieć że taki, a nie inny charakter programu wynika ze "struktury systemu mikroprocesorowego"; mam na myśli fakt wykorzystania rejestrów w zewnętrznej przestrzeni adresowej (zewnętrznej pamięci)? Tak masz to rozumieć. Stąd też deklarowane stałe: F_CSDS EQU 0FF30H ;bufor wyboru wskaźnika F_CSDB EQU 0FF38H ;bufor danych wskaźnika są umieszczone...
Musisz najpierw ustawić rejestr kontrolny.Linie adresowe A0 -1 , A1 - 1 i dla trybu 0 porty A,B,C jako wyjścia wpisujesz do tego rejestru wartość HEX 0x80 lub BIN b10000000 ewentualnie DEC 128 i powinno smigać. Adres A1-0 A0-0 dla portu A A1-0 A0-1 dla portu B A1-1 A0-0 dla portu C
Dzień dobry, Piszę ten post, ponieważ nigdzie nie mogłem znaleźć odpowiedzi na poniższe pytanie, które pochodzi z egzaminu z przedmiotu Systemy wbudowane z politechniki Lubelskiej. Odnosi się ono do mikrokontrolera AT91SAM7X256 z rodziny ARM7. Dostęp do urządzeń zewnętrznych uzyskujemy poprzez rejestry specjalne. Który tryb dotyczy dostępu z wykorzystaniem...
Witam! Zgłębiam tajniki pierwszych komputerów i nadal nie rozumiem jednego... o ile na początku cała ogromna architektura była obsługiwana programem zapisanym na dziurkowanej taśmie...zakładam ze ta taśma była przewijana i zakładając że na przykład ..dwie blaszki były z dwóch stron taśmy to jak przechodziły przez dziurkę to było 1,a jak taśma nie miała...
Nigdzie nie pisałem, że nie powstają nowe układy z rdzeniem 51 czy PIC10. Jednak zestaw rejestrów, przestrzenie adresowe i stos w 51 - to czysty zabytek. Uczyć to tego można na przedmiocie typu "archeologia komputerowa", ale ma się to NIJAK do współczesnego poziomu techniki, współczesnych architektur i języków wysokiego poziomu. Ponadto w wiadomości...
W osobnym procesie aktywowanym zboczem zegara robisz przypisanie (bez żadnych dodatkowych warunków): x_addr_reg <=x_addr a potem x_addr_reg podłączasz do wejścia adresowego BRAM. Rejestru x_addr_reg nie chcemy ustawiać w automacie, bo to jest niepotrzebna komplikacja projektu i lekkie utrudnienie routingu :wink: Pozdrawiam Yakuza_2000
Dlatego, że w AVR (ani w żadnym innym współczesnym komputerze/mikrokontrolerze) nie ma dwóch oddzielnych szyn/połączeń dla wejścia i dla wyjścia. Inny problem z przymierzeniem AVR do obrazka: - gdzie znajdują się na obrazku rejestry procesora, w tym rejestry adresowe? Jeśli w "jednostce arytmetycznej" - to jakim cudem można czytać dane z pamięci programu?...
Na której szynie - rozpoznasz po rejestrze RCC, w którym włącza się dany peryferial. Masz również obrazek we wstępnej części RM - dokładna mapa przestrzenei adresowej z podziałem na AHB i APB. Nogi - Datasheet, niespodzianka - rozdział nt. nóg i tabelki AF.
Można spróbować zmienić licznik na synchroniczny, chociaż sama pamięć ram też będzie generować stany nieustalone w momencie zmiany stanów na wejściach adresowych: https://obrazki.elektroda.pl/6493772800_... Należałoby dołożyć na wyjściu pamięci 8-bitowy rejestr taktowany tym samym zegarem co licznik.
W atmegach nie da się nadpisać rejestrów przez przepełnienie bufora bo to są odrębne przestrzenie adresowe. To tak a propo tego' buffer und...' na początku filmu.
Witam. Mam jeszcze pytanie do rejestrów na wyjściu. Czy to chodzi o to, że diody mają byc podłączone do magistrali danych i adresowej poprzez rejestr, a nie tak jak byłoby prościej bezpośrednio do portów we/wy? Chwilowo w domu nie mam internetu, ale jak tylko będę miał, to narysuję Ci schemat do projektu. Pozdrawiam. Łukasz
Jak już wiesz, SBI/CBI, IN i OUT operują wyłącznie na adresach z pewnego zakresu. Stąd też musisz je zamienić na LDS/STS podając jako adres IO + 32 (przesunięcie przestrzeni adresowej IO w stosunku do przestrzeni adresowej SRAM. SBI/CBI trzeba zamienić na operację RMW, czyli odczyt komórki do rejestru, jego zmiana za pomocą ANDI lub ORI, a następnie...
Cześć, Może ktoś podchwyci temat. Jeżeli jest tam GAL (zakładam, że 16V8) - a jest bo znalazłem zdjęcie wnętrza :) - bardzo prawdopodobne, że udałoby się go odczytać. Potrzebny jest dawca kartridża BB9 do odtworzenia zarówno schematu, jak i oprogramowania. Robiłem dużo poważniejsze rzeczy, więc to nie byłby wielki problem. GAL w BB9 może być zarówno...
TIM8 wyzwala 1 raz transfer 3 bajtów (NDTR) przez DMA2 z pamięci do SPI TX. Tym sposobem SPI odbiera też dane przychodzące. Jeżeli aktywny jest kanał DMA1 sprzężony z SPI RX, to dane lądują w pamięci bufora kołowego. Czas odczytu 3 bajtów wynosi 24xTbit + 2xDMA_delay. To tak w skrócie, ponieważ używasz TIM8 podłączonego do DMA2 do wyzwalania transferu,...
Wystarczy w Outlooku na stałe zmienić folder magazynu na dysk (lub partycję), która nie będzie formatowana, np. D:\Poczta (Narzędzia->Opcje->Konserwacja->Folder magazynu ...). Podobnie z książką adresową wystarczy ją wyeksportować do pliku w tym samym katalogu co wiadomości (Ksiązka adresowa->Plik->Eksportuj->Książka adresowa (WAB)) Można wyeksportować...
Ja na twoim miejscu zacząłbym od nauki podstaw C, a potem ogarnięcia tego języka na AVR. To po pierwsze, a po kolejne: - do zliczania nie używaj float, wbrew pozorom to nie jest obojętne, czy będzie float, czy int. Poczytaj o tym jak float jest reprezentowany w pamięci, bo możesz się zdziwić, kiedy np. x+1 będzie ciągle równe x. - EEMEM nic nie zapisuje...
Podstawowa różnica to redukcja liczby wyprowadzeń (89c51 ma 40; 89c2051 ma 20) i mniejsza pamięć flash-ROM (2kb). W związku z tym "mniejszy brat" 89C51 ma tylko 2 porty I/O (P1 i P3 bez P3.6), brak możliwości podłączenia zewnętrznej pamięci ROM i RAM do szyny systemowej. Okrojenie takie wpływa też na brak niektórych rejestrów w przestrzeni adresowej...
Procedurę (na xmegę, z błędami) napisałem tylko dla BlueDraco. Powtarzam jeszcze raz - zrób to sprzętowo. Zdarzenie na pinie wywołuje transfer DMA(x) z portu adresowego do rejestru DMA(x+1). Zakończenie tego transferu generuje event, który startuje transfer z portu danych do komórki pamięci wskazanej przed chwilą w porcie adresowym. Zakończenie drugiego...
Na ARMach się nie znam, ale nikt tam nie wprowadził możliwości konfiguracji interfejsu typu 8/16/32 bity magistrali danych? Przecież takie funkcje miały archaiczne 8086. Podobnie z liniami adresowymi, to, że są 24 nie oznacza chyba, że wszystkie trzeba wykorzystać? W AVR jest rejestr kontrolny określający, które bity adresowe są w użyciu, nieużywane...
Hmmm. Podpinasz w zasadzie jak sobie chcesz. Chyba, że chcesz korzystać z tego jako zewnętrznego RAM-u (w sensie dostęp rozkazami movx). Napisz coś więcej. Teraz mogę Ci powiedziec tyle, że do adresu fajnie jest zastosować (1 lub 2) rejestry zatrzaskowe 74HC574 podpięte do jednego portu (najpierw wysyłamy np. młodszy bajt adresu, a potem starszy i zatrzaskujemy...
Mniej więcej o to chodziło. Nawet zostały ci wolne piny na procesorze :D Ale jeszcze: - odbiornik podczerwieni raczej nie powinien być przeprowadzany przez rejestr wejściowy, tylko podłączony bezpośrednio pod procesor i to najlepiej pod któreś z wejść przerywających - podobnie impulsator - też nie przez rejestr!!! - diody świecące są podpięte nie w...
(at)kris8888 Nie... Znacznie coś większego... W telegraficznym skrócie: 32-bitowy procesor obsługujący około 150 różnych instrukcji stałoprzecinkowych, posiadający sześć trybów adresowania, dwa oddzielne stosy: użytkownika i nadzorcy, osiem rejestrów uniwersalnych, osiem rejestrów adresowych, cztery rejestry segmentowe. Trzy tryby obsługi pamięci RAM...
Napiszę tak, nie ma już problemu z kondensatorem. Para kondensatorów 1n + 100p połączona równolegle działa bez problemów na najstarszej wersji C64 (taka z klawiaturą a'la VIC i oryginalnym zasilaczem, który jest tak spuchnięty, że już kołysze się na stole i też działa :). Początkowo problem wynikał z tego, że źle zaprojektowałem w GAL proces RESET....
Wybór rodziny zależy od zadania: 1. C51 (8-bitów) pozwala bezpośrednio wykonywać operacje na pojedynczych bitach, ale tych bitów jest niewiele (RAM i peryferia). Stale są w produkcji różne uC z rodziny C51, które mają indywidualnie adresowane bity - obszar RAM od 0x20 do 0x2F i każdy SFR z adresem 0bxxxxx000 (np. ACC, B, IPx), czyli nie spełnia warunku...
Już to proponowałem. Niestety przedmówcy chcą to na siłę skomplikować. :) Przypominam, że przestrzeń XRAM w klasycznym procesorze 8051 to zupełnie odrębna przestrzeń adresowa i do jej adresowania używa się rejestru DPTR oraz specjalnych instrukcji MOVX tylko do niej się odwołujących. Nie trzeba pamięci w tej przestrzeni gdzieś mapować omijając IRAM.
- Ależ oczywiście, trzeba zainicjować wszystkie rejestry odpowiedzialne z UART-a, łącznie z wybraniem odpowiedniego źródła zegara, tak jak jest w User Manual producenta układu. Musisz zainkludować odpowiedni plik nagłówkowy dla tego procesora (kojarzący nazwy rejestrów I/O z przestrzenią adresową). - Używaj tylko jednego interface UART na raz.
DSP mają specjalne mechanizmy, które pozwalają na uzyskiwanie bardzo dużych mocy obliczeniowych w specyficznych dla przetwarzania cyfrowego algorytmach. Mowa tutaj np o filtrach FIR, gdzie robi się wielokrotne mnożenie z akumulacją. Typowe w DSP jest to, że taką opoerację jak: mnożenie, dodawania zwiększanie/ zmniejszanie kilku rejestrów, itp jednocześnie...
To nie są piny I/O tak jak w mikrokontrolerach, czy nawet nie tak, jak na LPT, gdzie jest zatrzask trzymający określony stan (wyjściowy). Te 16 pinów to dwukierunkowo zbuforowana (ale bez zatrzasków) szyna danych procesora (młodsze 16 bitów). Podobnie jak urządzenia ATA, twoje urządzenie musiałoby być czymś w rodzaju karty ISA. Interfejs musiałby mieć...
Panowie, wystarczy tych sprzeczek... Jest to 32-bitowy procesor (32-bitowy licznik programu, 32-bitowa przestrzeń adresowa i 32-bitowe rejestry), jednak z 16-bitową szyną danych (...) Źródło: http://pl.wikipedia.org/wiki/MC68000
Jeśli to pierwsze makro to miało być _SFR_ IO _ADDR to wyjaśnienie jest następujące : w plikach nagłówkowych avr-lib wszystkie rejestry specjalne zdefiniowane są adresami w przestrzeni adresowej pamięci. Jak ktoś używa asemblera, to do instrukcji typu in, out, cbi, sbi, ... potrzebne są mu adresy w przestrzeni wejścia-wyjścia i to makro zamienia jedne...
Witam! po pierwsze musisz upewnić się czy operacje zapisu i odczytu faktycznie działają. Z tego co zaobserwowałem, zaraz po uruchomieniu RTL8019AS wybrana jest strona 0 rejestrów. Jest tam taki rejestr zwany BNRY do którego można zapisywać wszystkie wartości z przedziału 0-255 i odczytywać na tej samej stronie. W związku z tym zrób taki test zaraz na...
Czy w ATmega8 da się wykonywać operacje na pojednczych bitach w rejestrach i/o, np TWCR? Jeśli chodzi o rejestry I/O z zakresu adresowego 0x00 do 0x1F to tak. Jeśli chodzi o rejestry znajdujące się wyżej - od adresu 0x20, przykładem jest właśnie TWCR - to nie. Polecenie SBI TWCR, 6 skutkuje błędem error: Operand 1 out of range: 0x36, (...) Wytłumaczenie...
Stabilizator przed szczotkami a kondensatorek na rotorze ale raczej coś w stylu 4*3300uf/5V takie jak w płycie głównej - są małe i mogą posłużyć do wyważania.A jeśli chodzi o proca to ja bym mu dał kostkę x ramu np 64256 bo gdzieś te grafiki trzeba przechowywać i zatrzaski umieścił bym w przestrzeni adresowej zaraz za pamięcią. no i tranzystorek kluczujący...
Witam, Niestety nie potrafię Ci pomóc, jednak korzystając z tematu chciałbym spytać po co wartość rejestru konfiguracyjnego jest przesuwana 13 bitów? Uruchamiam MT48LC4M16 (1 Meg x 16 x 4 banks) na LPC1788 i nie wiem dlaczego te wartości na przykładach z sieci są przesuwane o 10 lub 12 bitów... Jeśli rejestr jest zapisywany za pomocą linii adresowych...
witaj jak zapewne wiesz 51 w przestrzeni adresowej sfr ma akumulator czyli ACC czyli jest to komóreczka pamięci (rejestr ) o adresie hex E0, i jako taka komórka pamięci wewnętrzej czy raczej przestrzeni SFR może być adresowany poprzez własnie np. mov acc (tzw. adresowanie bezpośrednie) ale ponieważ jest to rejest bardzo ważny dla operacji arytmetycznych...
Adres zapisu w operacji z użyciem wskaźnika (np. st Z, r16) naszedł na pole adresowe, które zajmują rejestry przestrzeni I/O. Dokładnie będzie to DDRB - rejestr kierunku działania portu PB. Zobacz czy pod adresem $0036 występuje instrukcja ST Z, Rx; ST Y, Rx; ST X,r16 lub jej odmiany z plusami lub minusami.
atmel to procek. podłączasz do niego multiplekser 32 wejściowy (2x16), program procka działa MNIEJ więcej następująco: czekanie na przerwanie od rs; podprogram obsługi przerwania: przepisz stan wyjścia multipleksera do C, następnie przesuń zawartość rejestru zwiększ wartość portu do którego podłączone są wejścia adresowe multipleksera co 8 powtórzeń...
Wykorzystałem poniższe instrukcje do ustawiania i zerowania linii portu [syntax=c] GPIOB->BSRR = GPIO_Pin_12; GPIOB->BRR = GPIO_Pin_12;[/syntax] Natomiast do odczytu stanu portu [syntax=c]GPIOB->IDR & GPIO_Pin_14[/syntax] Poprawiło to znacznie szybkośc działania. Wynik deasemblacji to 3 instrukcje asemblerowe dla ustawienia bitu [syntax=c]STR R2,[R1]...
Nie zapominaj że urządzenia ATA to urządzenia blokowe Niespodzianka - nie myślałem o wykorzystaniu protokołu Ata, tylko o bezpośrednim dostępie do linii sterujących wyprowadzonych na porcie IDE. Są tam wyprowadzone trzy linie adresowe (8 adresów) do wyboru rejestru konfiguracyjnego dysku. Nie wdając się za bardzo w szczegóły sprawdziłem, że podłączenie...
sposoby adresowania mogą zależeć od architektury procesora i samego kompilatora. W przypadku x86 odwołania adresowe mogą być chyba tylko w rejestrze BX. Ale czemu nie umieścisz w DX po prostu przesunięcia dla zmiennej, jak wcześniej?
Program chyba ukończyłem: ;Program do "modyfikatora sygnału" ;Parametry techniczne dla taktowania 4MHz: ;- skrócenie czasu o wartość max ponad 2,5ms z krokiem co 10us ;- lub wydłużenie czasu o max stałą wartość ponad 20ms z krokiem co 80us ;- mnożenie czasu przez współczynnik około 1,00 do 2,55 ;- wejścia sygnałowe portB 0-3 ;- wyjścia...
Ups - sorki - faktycznie coś naściemniałem. Zasugerowałem się tym co napisane jest w prawej części tab.12 a to jak wskazuje nagłówek dotyczy trybu ULOAD. Tak czy inaczej trochę "nieekonomicznie" jest czytać eproma przez rejestry skoro dostępny jest w przestrzeni adresowej dzięki za zwrócenie uwagi pozdrawiam
Ależ ja wcale nie odbieram tej dyskusji jako napastliwej, czy złośliwej, stąd uśmieszek na końcu tego co napisałem. Co do przykładów - są różne, niektóre wykorzystują sporo peryferii - odtwarzanie muzyki, współpraca z kartą SD z FAT, obsługa TP i LCD. Co nie zmienia faktu, że są zastosowania do których 8-bitowce się słabo nadają. Niemniej dzięki peryferiom...
Rejestry są dostępne pod adresami rejestrów jak i w przestrzeni adresowej pamięci( dostępnej np. po wskaźniku) z przesunięciem +0x20( 'Register Summary' prawie pod koniec data sheet, podane w nawiasach). Napisz jaki procek Cię interesuje to skryptem zrobię nagłówek( definicje rejestrów z przyroskiem np. _MEM) i po załączeniu będziesz mógł odwoływać...
Przeszukałem jeszcze to, co miałem na Amidze. Znalazłem generator tabeli pierwiastków tylko instrukcje przeniesienia, dodawania i skoki warunkowe. Skrócony kurs asemblera procesorów rodziny 680x0: :D instrukcja * ****************************************... * * **** Tiny square-root-table generator ****** (c) gREY in 1997...
Z tego co szybko wyczytalem w Atmega128 wprowadzono nowe rejestry ze wzgledu na wydluzona przestrzen adresowa. Nie widze aby tutaj korzystal z tych rejestrow wiec moze dales zly przelacznik przy kompilacji i kompilator tworzy kod wyjsciowy dla procesorow do 64kB przestrzeni programu. Musisz dac -mmcu=atmega128.
W nocie katalogowej... Upsss, mea culpa - zaglądałem do noty niewłaściwego LM-a(LM90) :oops: Czy linie adresowe LM-a, masz podłączone do GND :?: Nie przyglądałem się dokładnie Twoim funkcjom TWI, ale na pierwszy rzut oka widać, że nie przejawiasz zainteresowania rejestrem TWSR, a z jego zawartości, można naprawdę dużo się dowiedzieć. :D Polecam zapoznanie...
W C64 i amigach: $ oznacza zapis szesnastkowy, nie oznacza natomiast wcale adresu! np. w C64 (procesor 6501) LDA $400 to dokładnie to samo, co: LDA 1024 czyli załadowanie do akumulatora wartości z komókri pamięci o adresie $400 Poza tym do oznaczenia zapisu szesnastkowego stosuje się jeszcze 0x liczba (w jęzuku C np.) i 0 liczba h (w różnych asemblerach,...
1. Poprawne ustawienia IP (adres, brama). 2. Poprawne ustawienia serwera DNS. 3. Autoryzacja SMTP – jakoś mi się nie wydaje, że serwer Wirtualnej wpuści bez autoryzacji. 4. Adresy odbiorców w skrzynce adresowej. 5. W razie problemów obejrzeć rejestr systemowy (czyli log).
uklad adresowy książek adresowy grupa adresowy
jumper przekaźnik świec halogenowy transformator zasilanie manipulatorów integra
ogranicznik przepięć ogranicznik przepięć
Ekspres Saeco nie spienia mleka - przyczyny i rozwiązania Z3X Box: Błąd Timeout i Patch MSL - Rozwiązania