http://obrazki.elektroda.pl/4029783300_1... Układu SID (6581 stary i 8580 nowy), będącym muzyczną orkiestrą komputera Commodore 64 nie trzeba nikomu przedstawiać – między innymi dzięki jego brzmieniu owa maszyna osiągnęła tak dużą popularność. Warto tylko przypomnieć, że SID ma jedynie trzy kanały, ale umiejętności programistów...
No teraz rozumiem. Chodzi o przerzutowanie jednego zakresu w drugi :) zwykła proporcja bazująca na szerokościach. ściągamy wszystko do wspólnej podstawy... następnie dokonujemy z proporcji obliczenia MAXx-MINx = A-B x-MINx = ? ? = ((x-MINx)*(A-B))/(MAXx-MINx) następnie należy pamiętać o przesunięciu podstawy wyniku ? = ?+B; We wszystkich powyższych...
Tak na pierwszy rzut oka to mi się wydaje że adres zawiera wartość w kodzie ASCII a nie wartość cyfry, czyli jeśli wpisałeś w parametrze 3 to on tam wstawia 51 (albo coś koło tego). Spróbuj najpierw odjąć 48 od tej wartości.
Ale mimo wszystko zastanawia mnie czego unikać aby przysłowiowo nie "zamulić" programu. Moze są ogólne rady. Zakładając, że nie korzystamy z wait czy waitms w pętli głównej to widać, że już jakieś doświadczenie masz w programowaniu, i powoli jak mówią koledzy wyżej dochodzisz - jak każdy zresztą- niestety do kresu możliwości Bascoma. Tzn można z niego...
Zakładam, że asembler x86... FAILED i D3DADAPTER_DEFAULT to zapewne makro i jakaś stała (jaka?) Po kolei: 1. g_pD3D to wskaźnik (adres) na strukturę/obiekt (jaką?) 2. do tego wskaźnika dodaj offset pola GetAdapterDisplayModel w w/w strukturze/obiekcie. 3. otrzymasz adres funkcji przyjmującej 2 parametry - drugi parametr to adres obiektu/struktury d3ddm....
Piszę algorytm szybkiego sortowania w asemblerze a dokładniej jest to dll w asmie w projekcie z pisanym w c++ i mam pewnien problem - algortym źle sortuje dane. Oto mój algorytm w asmie: QuickSort PROC tablica:dword, ilosc:sdword start: push EAX push EBX push ECX push EDX push ESI push EDI push EBP push ESP mov EAX, 0 push EAX; lewy na stos...
Kolega napisał nawet program na słynnym mikrokomputerze "Meritum", (skoro nie dano pracować Karpińskiemu ktoś skopiował amerykańską staroć TRS-80) który sprawdzał jakie komórki dają się zaprogramować i w zależności od tego modyfikował program. Stare dzieje. pozdrawiam, Andrzej "Meritum" było robione w Zabrzu na enerdowskim klonie Z80 zwanym bodajże...
mirekk36 , obecnie szykują się poważne zmiany w BASCOMie. Powoli dodawane są układy XMEGA, tworzone jest nowe IDE (Wreszcie mają być projekty!). Chodzą też słuchy o BASCOM-ARM, choć osobiście sobie tego jakoś nie wyobrażam. Ja o tych "słuchach" szłyszę już od wielu miesięcy ;) .... i nadal nic. Przypomina mi to sytuację z próbą wyprodukowania przez...
Nie bardzo wiem dlaczego program po optymalizacji czasowej, czy objętościowej miałby być bardziej niezawodny od tego przed. Osobiście wolałbym ten czas poświęcić na testowanie i poprawianie zgodnie z zasadą "nie ma programów niezawodnych, są tylko źle przetestowane". Oczywiście wtedy, gdy nie ma zasobów, sprawa jest oczywista, niemniej właściwa kolejność...
To są w BASCOMie jak się domyślam (nie miałem styczności)? Specjalistą nie jestem, ale moim zdaniem to pewnie informuje te wszystkie kompilatory, linkery, asemblery i inne o parametrach układu, czyli strona programowa. Fusy ustawiają sprzętowo dane parametry, w konkretnej kości mikroprocka.
Korzystam z gcc asembler. Parametry do funkcji obojetnie jak. Poprostu przez rejester. To juz sobie dopasuje do projektu. Czas może byc w rejestrach ja juz sobie obrobie. Nie nie mam obslugi I2C. Mam z kolegą taki mały projekt - intelignetny sterownik. I po latach potrzebujemy dorzucic zegarek, dlatego sie zglosilem. Poprostu mam nadzieje ze ktos ma...
Spróbuj tak: #include <avr/io.h> .global Dodawanie Dodawanie: add r24,r22 ret Dodano po 1 Zdaje sie że bajtowe parametry zwracane są właśnie w r24.
Wyczyść cały projekt - w menu debug - clean. Skompiluj całość od nowa. Upewnij się, że rzeczywiście kompilujesz z opcjami, które wskazałeś - może nie kompilujesz dla celu debug tylko release. Można też przejść do okna asemblera i tam ustawić pułapkę - jeśli tam się udaje, to oznacza, że środowisko pracuje ok, a problem jest z kompilacją i jej parametrami.
Co do parametrów makra , to .... LEGENDA: (małpa) wtryniła się za (at) .macro push4r .if (at)0<32 push r(at)0 .endif .if (at)1<32 push r(at)1 .endif .if (at)2<32 push r(at)2 .endif .if (at)3<32 push r(at)3 .endif .endm ... push4r 0,' ',' ',31 Jak ktoś chce , można rozpisać na wszystkie 32 rejestry , tylko potem dawać np.29 spacji ... nie...
dziękuje, przestudiuje kodzik, proszę nadal umieszczać info na powyższy temat pozdrawiam
Mało danych. Chcesz, żeby dioda migała na przerwaniach? Czyli przerwanie włącza, następne wyłącza - tak to zrozumiałem. Co do obsługi T0 musisz zrobić obsługę przerwania od adresu 0x0BH (czyli wyzwalanie przez flagę TF0). Wstaw coś takiego po LJMP start na początku: [syntax=text]ORG 0Bh ; start przerwania CLR TF0 CPL P1.4 ; zmiana stanu wyjścia sterującego...
Dla ESP32 jest dostępna biblioteka ESP-DSP , w której są gotowe m.in algorytmy FFT (szybka transformata Fouriera) dla liczb float oraz stałoprzecinkowych. Kod w dużej części jest napisany w asemblerze xtensa, jest dobrze udokumentowany i z przykładami. [url=https://github.com/espressif/esp-ds...
Nie podałeś w jakim środowisku będzie uruchamiany kod ale AD1: Diody zapalą się jeżeli w układzie docelowym stan '1' zapala diodę. Po instrukcji jmp nie dajemy przecinka, przecinek występuje tylko jeżeli rozdzielamy parametry rozkazu. Chyba że jest to specyfika używanego assemblera. AD2: Dobrze byłoby nazwać jakoś to makro, słowo 'nazwa' może być mylące....
http://obrazki.elektroda.pl/3234430100_1... W Podatność na wstrzykiwanie komend Jedną z częstszych i łatwych do odnalezienia dziur jest podatność na wstrzykiwanie komend poprzez np. interfejs użytkownika. Sama idea tego ataku jest prosta – załóżmy, że podajemy gdzieś tekst, który następnie wykorzystywany jest do skonstruowania...
Ad 1,3,4 dalsze dane po komendzie wysyła się dokładnie tak samo jak komendę (można użyć ten samej procedury). Zawsze pierwszą komendą jest xxxxROM, potem opcjonalny adres, a potem właściwa komenda (np read, write) i opcjonalne parametry. Ad 2, do tego służy specjalna procedura wyszukiwania i robi się to przy pomocy komendy SearchROM. Całość polega na...
To bardzo fajny dokument Marku (dokładnie opisuje to czego bm chciał się dowiedzieć) lecz kompilator C (u mnie gcc) jest zupełnie inny i są zupełnie inne rejestry asemblera dla przekazywania parametrów do funkcji i zwracania z niej wartości. Mam jeszcze z tym problemyoraz z wykorzystaniem przerwań w funkcjach napisanych w asemblerze. Czy może ktoś ma...
np: asm(" mov &0xFC80, PC;"); w IAR. A w druga strone to dzialalo cos takiego IMPORT Function (to akurat z Keila), gdzie funkcja jest napisana w C. Nie pamietam dokladnie jak sie przekazywalo parametry, ale z tego co mi gdzies tam swita w glowie to normalnie ladujac je do poszczegolnych rejestrow.
witam w słoneczny poranek! nie miałam siły na nic bardziej spektakularnego, niż to co w załączniku do postu..... jest tak: w pliku asm_mod.a51 masz kilka funkcji pobierających/zwracających typy proste, plik test.c wywołuje te funkcje, aby test.c je widział należy zainkludować plik asm_mod.h - normalka..... polecam lekturę listingu asemblerowego test.lst...
Witam, Nie analizowałem samego algorytmu czy liczy poprawnie wielomian ale sam kod mozna poprawić: [syntax=asm]ldi r16, 0x01 and r16, owrInData eor owrCRC8, r16 lsr owrCRC8 ; na 7 bicie mamy 0 brcc owr_crc_done ; jeżeli C=0 to nie musimy nic robić z bitem 7, bo już mamy tam 0 ldi r16, 0x8C ; jeżli C=1 to na bit 7 możemy ustawić przez XOR z 1 czyli zamiast...
robret jak chcesz to możesz moją wersje wykorzystać ale z gury muwie że w tej postaci niedziała dokładnie tak jak powinna jeżeli chcesz poprawnie działającą wersje z opisami to znajdziesz mnie na GG a tej wersji przedstawionej przez Gaviana niemoge skompilować wyskakują jakieś błędy o niewłaściwych parametrach
int port=0x378; // adres hex int wartosc=0; int main(int argc, char *argv[]) { __asm("mov _port,%dx"); //c++ traktuje int jako dlugie slowo zatem niewiem czy to tak bedzie dobrze ;] __asm("mov _wartosc,%al"); __asm("out %al,%dx"); //to zadziala tylko pod czystym dosem albo win95/98 } w beznadziejnej skladni AT&T wszystkie parametry dla rozkazow przesyla...
Tinyego12 nie ruszysz w bascomie, pozostaje praktycznie tylko asembler
No to od tego masz RAM. A czy uzyjesz polecenia push czy sts to prawie jedno licho. Przekazywanie danych do procedur poprzez stos bylo popularne w czasach C51. Tam to mialo gleboki sens. Jesli piszesz w asemblerze to sam sobie mozesz zadecydowac jak sa przekazywane parametry do procedur. Lepiej jednak poprostu trzymac wiekszosc w RAM-ie bo nie musisz...
POMOCY, Jak mozna pisać program bez komentarzy i to w assemblerze ? Jak byś napisał jeszcze co on robi, porobił wcięcia (zamknął blok kodu w w tagi code, i dodał komentarze (nie wszyscy pamiętają wszystkie możliwe parametry wywołania int 21h)
Masz rację. Moja pomyłka, przepraszam (było rano). Powinno być: nr_bajtu_pamięci_ekranu = (x div 8 )+(y - 1) * 5 Przy edycji musiałem skasować te kilka znaków. Teraz chyba to działa. y to oczywiście numer wiersz dla piksela. Masz rację, że w asemblerze natywnie nie ma tablic dwuwymiarowych, ale bardzo łatwo jest oprogramować taką strukturę pamiętając...
Udało się działa z generatorem na 40KHz na Tx i kondensator na odbiorze RX. Przy takim podłączenie i parametrach elementów jak na schemacie działa bez zakłóceń na 80cm.
Kompilator najprawdopodobniej nie widzi, że wartości obliczane przez kod w asemblerze są używane i eliminuje całą sekcję jako "dead code". Podejrzewam, że tak jak bot podpowiedział, pomoże dodanie parametrów in i out. To i tak powinno się zrobić, bo jeszcze gorszy wariant to jak optymalizator coś pomiesza i będzie optymalizował źle. Dodano po 51 1....
Jak akumulator dostanie zwarcie to żaden bezpiecznik nie pomoże. Można zrobić na silnikach krokowych i długich śrubach ślimakowych urządzenie "wypychające" z pakietu 100S akumulator np. 1S10P gdy system wykryje spadek napięcia i podnoszenie się temperatury. Najlepiej jak by spadł na koc przeciwpożarowy :D Przy wypychaniu i rozłączeniu elektrycznym,...
Tiny 13 nie ma sprzętowego uarta ,więc programowy uart zawsze będzie blokował wykonywanie pętli głównej programu . Jego obsługę musi wykonać mikrokontroler tak jak program. Żeby to mogło działać to trzeba użyć przerwań i timera do obsługi uarta programowego a w czasie gdy ten liczy opóźnienia obsługiwać resztę . Tyle że najlepiej to takie rzeczy pisze...
Masz jeszcze kilka rozwiązań. Skoro to całe funkcje, to możesz je przenieść do osobnego pliku z rozszerzeniem .S - plik asemblera, który przed asemblacją zostanie przetworzony przez preprocesor - możesz tam normalnie używać #define, #include itd. Oczywiście musisz się stosować do konwencji przekazywania parametrów/zachowywania rejestrów. Jeśli chodzi...
Witam. Tutaj udzielę odpowiedzi kol. dasej. Ten fragment kodu w bascomie, który zamieściłem w inicjującym temat pytaniu, to fragment mojego programu dla zegara z wyświetlaczami led. Układ zasilany jest z zasilacza sieciowego, a w przypadku zaniku napięcia, układ zasilany jest z baterii. Stąd przejście w tryb oszczędzania energii. INT0 skonfigurowałem...
Ogólnie programator do AVR jest tylko trochę droższy od płytki uruchomieniowej z mikrokontrolerem Cortex-M i programatorem/debuggerem do niego umieszczonym na tej samej płytce, którego można również używać do debugowania i programowania własnych płytek. ;) Przyjrzyj się modułom np. STM32F0DISCOVERY, STM32F4DISCOVERY, Freescale FRDM, NXP LPCxpresso i...
Witam wszystkich Mam problem - muszę napisać program w asemblerze i w C, który będzie generował moduł sinusoidy (tak jakby po prostowaniu dwu połówkowym) na wyjściu DAC1 - parametry tej fali mają być na stałe zapisane w programie - efekt działania programu ma być widoczny na podpiętym oscyloskopie. A mój problem polega na tym, że jestem całkowity zielony...
To jest ta procedura, myślę że jest dobra... ;***************************wait_us*****... ;Procedura opozniajaca o wartosc parametru 1-255[us], dla 8MHz ;Parametr: r16 wait_us: loon: nop nop nop nop nop dec r16 breq loon ret ;***************************************...
Witam Na początek poczytaj http://www.micromade.pl/pdfy/dsm_as.pdf Makropolocenia mają pomagać w pisaniu programu. Stosuj się je kiedy masz takie same bloki programu różniące się na przykład wyprowadzeniem procesora. Makropolecenie deklarujesz na początku programu. W samym kodzie podajesz tylko nazwę macropolecenia z ewentualnym parametrem. Asembler...
W asemblerze da się to napisać w postaci pętli bez problemu. Spokojnie mógł bym to napisać, tyle że jest dużo szczegółów do obgadania - ja w asemblerze pisze tylko dla WinAVR, nie dla Codevision, więc niewiem jak są przekazywane parametry do funkcji w asemblerze, jak się dodaje wstawki, ile trwa jeden przebieg przy próbkowaniu ciągłym (musiał bym się...
No ale "eksperci" wiedzą lepiej i terminy asemblacja oraz kompilacja traktują w kategorii filozoficznej. Podchodzisz do tematu scholastycznie. Słowo asembler (jako język czy narzedzie) jest wygodne aby odseparować pojęcie języka wyższego poziomu od takiego zależnego od platformy. Nie słyszałem aby ktoś mówił o angielsku : assembler assembles assembly...
sumulator to symulator, ale trzasnołeś, 2000 lini nie mam pytań i w sumie nie dziwie sie że nie działa, ile czasu ci zeszło z całkowitą symulacją?. ja robie tak że uruchamiam program "małymi" kroczkami w docelowym urządzniu. W tedy jak coś spierdyle to mam mniej szukania. a tak to wiesz... sam nie dajesz rady zczaić o co chodzi. Jeśli sie przywiesza...
Masz kłopoty czy nie masz pojęcia:!::?: Najpierw postudiuj parametry kodu RC5. Nie jest to jakieś super trudne :)
No tutaj widać że masz zarezerwowane miejsce na stosie dla przekazywanych parametrów i nic nie jest "nadpisywane". Szczerze powiem nie wiem o co Ci chodzi. W swojej funkcji jak byś spojrzał dalej poza te 4 pierwsze parametry to byś zobaczył że on "przeskoczy" te 4 bajty z powodu złożenia na stosie rejestru r7, kiedy będzie czytał parametry 5,6. Tak...
Powiedz mi dlaczego - skoro korzystasz z Bytematch to dajesz parametr ALL ??? a przecież piszesz że odbierasz swoją "ramkę danych" zakończoną znakiem chr(13)... I znowu mógłbym się rozpisać za długo jak warto podchodzić do transmisji danych przez RS232, że warto wykorzystać własnie znaki końca linii do wyłapywania zdarzeń, że warto wtedy ustawiać flagę...
Witam. Akurat mam do asynchronicznego. No cóż może Ci się przyda. Nie jest to cały program, lecz jakby szablon. Pokazuje jak dobrać parametry timera dla konkretnej prędkości transmisji i zawiera podstawowe procedury obsługi łącza szeregowego. Ale obszar głównej pętli programowej zaprogramować musisz sam! Pozdrawiam i Wesołych Świąt :x-mas:
Dzięki, ale tak naprawdę, pierwotnie to jest pętla na 3 rejestrach, tylko liczy jakoś dziwnie... Dodałem NOP. EDIT: zagadki ciąg dalszy. Przypomnę, że każdy piksel to 3 bajty, więc po ustaleniu takich parametrów: R16=255 R17=8 R18=0 uzyskuję linijkę 768 pixeli, to się zgadza. Idziemy dalej, zwiększenie R18 powinno dać mi już prawie dwie linijki tak...
32 to raczej nie - PC/XT miały 115200 i podwielokrotności: 57600, 38400, 28800, 19200, 14400, 9600... uzyskiwało się to przez ustawianie dzielnika /2, /3, /4, /6, /8/, /12; PC/AT i nowsze - 230400 i podwielokrotności. A do ustawienia parametrów sygnału dla monitora na PC nie trzeba było programu w asemblerze - wystarczał Turbo Pascal, albo Turbo C....
>>>Zenek, już od jakiegoś czasu zamierzam wypróbować avrdude bo zawsze jest aktualny, powiedz czy ta nakładka graficzna wydaje również komunikaty błędów itp? w czytelny sposób? Jaki jest powód ze go polecają ludzie na forumach? Witam, dyskusja rozrosła się bez mojej obecności :) i dużo już wyjaśniono. Avrdude tylko wyjątkowo uruchamiam z trybu graficznego...
diody asembler dodawanie asembler asembler kwadrat
długość przewód spadek napiąć linux kompilacja styki kontaktron
firmware 7018b temperatura wyłącznika
Lokalizacja przełącznika magnetycznego w ekspresie do kawy Pralka AEG z pompą ciepła - nabicie gazem