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.
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...
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...
dziękuje, przestudiuje kodzik, proszę nadal umieszczać info na powyższy temat pozdrawiam
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
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...
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...
Tinyego12 nie ruszysz w bascomie, pozostaje praktycznie tylko asembler
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.
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...
Ponieważ dla programu w bascomie brakuje mi miejsca na korygowanie parametrów, od których zależy dokładność zegara, chciałem przejść na asembler. Obecnie zegary z tym programem pracuję na ATtiny4313 Jak układ jest w DIP to daj AVR z większą pamięcią i zrób przejściówkę.
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...
Masz kłopoty czy nie masz pojęcia:!::?: Najpierw postudiuj parametry kodu RC5. Nie jest to jakieś super trudne :)
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.
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...
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....
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...
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...
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...
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.
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...
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....
Znalazłem, na razie, dwa sposoby: Pierwszy, to używanie w przerwaniu wartości wpisywanej w rejestry Osccal lub Tcnt0 , oczywiście niewłaściwe, ale przydatne ;-) Drugi, to zerowanie w przerwaniu flagi komendą Cli , a potem powrót z przerwania nie komendą Reti , ale skok do poczatku programu gdzie ustawiam parametry przerwań i je odblokowuję.
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.
Proszę o radę tak jak w temacie w jaki sposób mogę dokonać takiej konwersji? Plik asemblera dla x86. Może jest ktoś kto mógł by mi to "przepuścić" u siebie przez jakieś środowisko DOS'owskie lub inne które to umożliwi? Bardzo proszę o pomoc. Dodam że program napisany w C jest bardzo krótki i nieskomplikowany. Mniej więcej dotyczy: realizacji funkcji,...
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...
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...
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)
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...
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...
Nie widzę żadnego logicznego związku pomiędzy porównywaniem turystyki, a tworzeniem aplikacji na µC... To nawet trochę dziwne porównanie, ryzykowanie życia na trudnym szlaku turystycznym, a trudność nauczenia się programowania w asemblerze... Gdzie sens i logika ? Mikrokontrolery są dość ograniczone swoimi parametrami (wielkość pamięci) i nawet...
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.
Niestety w moim wypadku w grę wchodzi jedynie asembler. A jak widać wyżej najlepszym rozwiązaniem będzie rozwiązanie najprostsze (mam mało czasu i zbyt mało doświadczenia). Co do wymogów regulacji nie są one zbyt wygórowane. Regulatory będą pracowały w strukturze kaskadowej (podporządkowanego prądu i nadrzędej regulacji prędkości) właściwie ważniejszym...
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...
ZbeeGin -> no tak z tą dowolnością użycia rejestrów to mogłem przesadzić. Wprawdzie czytałem o tych zarezerwowanych rejestrach - ale ciarki mnie przeszły po plecach jak czytam w twoim poście, że przerwanie w Bascomie nie zapamiętuje wszystkich rejestrów i to co się dzieje we wstawce, która ich używa może zostać "zniszczone" . Jesteś tego PEWIEN ????...
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,...
Grzebiąc po karcie SD telefonu zauważyłem, że w/w kod to nie zapis pliku MP4 a jest to zwykły zapis sektorów w których znajdują się fragmenty filmu. Wychodzi z tego, że SYMBIAN zapisując film szuka wolnych sektorów a w kilku plikach podaje ich adresy. Pliki te są bardzo podobne do fragmentów tablicy FAT32 (taki format plików mam na karcie). Problem...
Wszystko jest napisane... Co jest napisane to widzę. Dziwi mnie tylko dlaczego tak jest napisane. Jakby w pewnym sensie uprzedzając Twoją podpowiedź próbowałem różnych typów i sposobów deklaracji zmiennych min. tak jak radzisz. Jednak to niczego nie zmienia. Mój sposób myśenia pewnie nie przystaje do C++ (w którym raczkuję), ponieważ jest skażony asemblerem,...
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...
eeeh nie udało mi się na razie okiełznać uip :( ale za to, na bazie stosu z tuxgraphics, z pełnym powodzeniem odpalam skrypty PHP na werwerze www wraz z pięknym przekazywaniem parametrów do nich ;) ... teraz jeszcze pracuję nad tym aby móc odbierać odpowiedzi w procku po odpaleniu skryptu PHP a tak z ciekawości to co to za asembler w tej funkcji przerobionej?...
Jeśli twój kod nie jest zbytnio "udziwniony" to spróbuj użyć środowiska MikroLuk 1.0 http://www.mikroluk.prv.pl/. Asembler powinien już działać w miarę poprawnie. Program jest pisany "pod" XP, ale działa także ze starszymi OS-ami. Możesz także poszukać jakiś DOS-owych asemblerów. W konsoli (tzn. z poziomu okna lini poleceń) powinny przecież chodzić....
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...
Witam! Są wakacje i ogólnie sobota wieczór, dlatego nie specjalnie chce mi się myśleć na asemblerem Czy przed pierwszym wywołaniem podprogramu PROGRAMOWANIE_ wpisujesz do SRAMu pod adresem 0x60 i 0x61 wartość 0x90? Sam fragment kodu odpowiedzialny za testowanie UARTu i odbiór słowa jest ok. Podprogram ODESLIJ_ wydaje mi sie ok. Niestety programy w asemblerze...
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 ;***************************************...
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...
Sądzę, że procesory ARM są bardziej predestynowane do programowania w języku wyższego poziomu ( C ), niż bezpośrednio w asemblerze. Niemniej jednak nie przesadzałbym z ogłaszaniem asemblera ARM jako bardzo skomplikowanego. Przed analizą poszczególnych instrukcji, należy zapoznać się z ogólną strukturą rozkazów tych procesorów. Okaże się, że wszystkie...
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...
No to trzeba je oprogramować tak, aby nie bruździło... czas obsługi przerwania ok. 1-2 µs (przez wstawkę asemblerową) chyba nie zrobi na transmisji 1Wire większego wrażenia ? Przy 8 MHz mamy do dyspozycji 8 cykli zegarowych w czasie 1 µs, a przy 16MHz - 16 cykli zegarowych. reti zajmuje 4 cykle, cbi / sbi po 2 cykle, ewentualne nop pomiędzy...
Oczywiście chciałem pisać w C, ale nikt nie potrafi mi powiedzieć dlaczego dla jednego wygląda to tak gpio.GPIO_Mode = GPIO_Mode_Out_PP; A dla drugiegotak: gpio.GPIO_OType = GPIO_OType_PP; gpio.GPIO_Mode = GPIO_Mode_OUT; (at)stmx napisał, że to udogodnienie, ale całym problem jest w tym, że to nie działa zamiennie, chociaż teoretycznie robi to samo....
Dokładniej to chciałem to zastosować w motopompie strażackiej aby poprawić jej parametry tam mam 2 cylindry które pracują na przemian jeden góra to drugi w dole ,fabrycznie tam jest na platynkach zapłon ja myślę zrobić tak jak w maluchu elegancie (fiat 126p el) było.. później dać to do procesora który będzie liczył obroty silnika i w zależności obrotów...
Można użyc ich jako wstawek asemblerowych, bo ja piszę w C? Myślisz, że zatrzask 74HC573 wydoli dla Atmegi128L(3.3V,8MHz)? Czy może zaopatrzec się w wersje AHC? Jak najbardziej można operować asemblerem i w sumie jest to dość przejrzyste (trzeba sobie zmontować proste wstawki przeładowania zmienna<->RAM. Sorry za brak szczegółów co do samego...
Każda metoda jest dobra kwestia tego co bardziej podoba się autorowi programu . Tu opcji jest wiele liczy się efekt . Takie rozwiązania optymalizuje się pod kątem szybkości wykonywania kodu lub objętości programu a czasem innych parametrów np. niezmiennego czasu wykonywania warunków , tu można zrobić tak żeby było szybko zajmowało mało miejsca i trwało...
Proteus 6 O programie Proteus 6 w polskim internecie nie znajdziemy zbyt wiele informacji. Program powstał już kilka lat temu, zawierał moduły Ares i Isis do projektowania płytek i schematów. Nie wyróżniał się niczym istotnym. Po wyglądzie strony firmowej Proteus widać jakby czas zatrzymał się w ubiegłym wieku. Jednak program jest powoli rozwijany....
poprowadzi mnie ktoś za rączke przy uruchomieniu psa w s52? (asembler) całkiem od podstaw, tzn poczytałem troszkę o zerowaniu licznika i wiem żeby nie umieszcać tego w prodedurze przerwań. Mam kilka pętli, główną i kilka "obok" w których ustawiane są parametry pracy, oraz wykrywanie błędów. W sumie jest ok 4 króciutkich pętli i można by było tam umieścić...
Nie wiem czy zdajesz sobie sprawę ze złożoności tematu oraz ilości obliczeń jakie musi wykonać taki sterownik . Nie chcę być pesymistą ale o kilku rzeczach możesz zapomnieć pierwsza to lepsze parametry , druga współdziałanie z resztą auta , trzecia zgodność z jakąkolwiek normą spalin . Obsługa wtrysków , pomiary , komunikacja can , diagnostyka , immobilizer...
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....
Jaki procesor ? Jeśli AVR (co mogę, ale nie muszę ;) wnioskować po pozostałych twoich postach), to Tutaj jest ta część FAQ , na którą pragnąłbym naprowadzić. W tym temacie jest stosowna tabelka z notki. Bezwzględnie przydatna jest lektura not katalogowych, jak można coś konstruować, nie mając wiedzy od producenta o sposobie działania zastosowanych układów...
Dobra z komputera jest podawana liczba kroków i co ile kroków ma się silnik zatrzymywać na pomiar.Dane są przekazywane I2C.Czyjnik pozycyjny jakim jest fotodioda (zdecydowałam się na użycie tylko jednej) ,będzie mijała linie okreslajace odpowiednie polozenie.W momencie miniecia lini,ma byc wysłana informacja d0 komputera ,że minięta zostala linia.Jednoczesnie...
Najprawdopodobniej kompilator "nie widzi" zależności między użyciem zmiennej globalnej w przerwaniu i w pętli głównej i sobie to nazbyt optymalizuje. Możesz to prawdopodobnie wychwycić obserwując kod wynikowy w asemblerze. Rozwiązaniem może być zmiana stopnia optymalizacji kompilacji lub dodanie parametru "volatile" dla zmiennej globalnej.
>>>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...
Jeśli masz problem z wyświetlaniem to rozwiąż to podpięciem funkcji wyświetlającej w C. [syntax=asm]extrn__write : near[/syntax] parametry zgodnie ze składnią C podajesz od końca [syntax=asm] ; wyświetlenie cyfr na ekranie push dword PTR 12; liczba wyświetlanych znaków push dword PTR OFFSET znaki; adres wyśw. obszaru push dword PTR 1; numer urządzenia...
Hej. Z tego co wyczytałem masz zamiar pisać w assemblerze. Czy środowieskiem będzie AVR Studio? Jeżeli nad projektem ma pracować kilka osób to trzeba określić jasne reguły gry, czyli np: 1. Każda funkcja która może być wykorzytana w kilku miejscach programu musi być w oddzielnym pliku (module). 2. Sposób przekazywania parametrów do funkcji i organizacja...
Trzeba rozróżnić wartości dydaktyczne, od przyuczania do zawodu. Studia to nie zawodówka. Na studiach uczy się logicznego myślenia, rozwiązywania problemów i przede wszystkim uczenia się. Słucham? Coś się chyba koledze pomyliło. Gdzie zawodówka a gdzie studia? Nie ma porównania w ogóle. Jednak obie szkoły mają w pierwszej kolejności kształcić przyszłych...
Według mnie dość dobrze się sprecyzował :) no ok... ale wynik czego ? dodawania czy zliczania to po pierwsze na porcie wyświetlić licznik dodawań a po drugie jaka '51 ma port P5 ? Chyba każda która ma 68 i więcej pinów, i tak wszystkie mają P5 po tym samym adresem. Czy jak wystąpi przeniesienie to wyświetlić wynik występujący po nim (nie 8 bitów) czy...
Napewno nie tylko przy skokach do przerwan ale takze przy wywolywaniu funkcji (musi istniec adres powrotu).Generalnie AVR jako przedstawiciel rodziny z duza iloscia rejestrow ogolnego przeznaczenia przekazuje parametry do funkcji za pomoca rejestrow procesora.W architekturach "ubogich" w rejestry gdzie wystepuje zazwyczaj akumulator i ewentualnie jeden...
Prosze o pomoc w takiej sprawie! Mam takie zadanie do wykonania i nie umiem sobie z tym poradzic a potrzeboje to na jutro. Tresc: Przy uzyciu rozkazow asemblera wpisac do odpowiednich rejestrow takie wartosci aby transmisja szeregowa maogla odbywac sie wedlug parametrow: Tryb 1 (8-bitowa transmisja asynchroniczna), predkosc 19200 b/s, odbiornik wylaczony...
Funkcja czekajms znajduje sie w osobnym pliku I zachowuje rejestry na stosie, postaram sie znalezc czas I pokombinuje Dodano po 23 Witam posłuchałem rad jednak nadal coś nie chce działać połączenia mam na pewno dobre, całość w oparciu o zestaw uruchomieniowy. przedstawię jeszcze plik dołączany to jest procedura opózniająca Dodano po 2 napisałem program...
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ę...
(at)tplewa Chińczycy mają wiele ciekawych wersji znanych układów i z ciekawości warto się im przyglądać. Widziałem też ich AVRy (odpoweidnik ATMega) wzbogacone m.in. o DSP. Niemniej: - cenowo to nie jest tak atrakcyjne, no może jeśli produkujesz tysiące sztuk jakiegoś urządzenia, hobbystycznie wątpliwa przydatność, wobec m.in. braku wsparcia. - brak...
Służy do tego samego, co generator z milionem częstotliwości - jego przydatność zależy tylko od tego, których konkretnie częstotliwości potrzebuje użytkownik. Jeśli ktoś akurat potrzebuje sygnału PWM o częstotliwości 1.25/10/80 kHz, to ten generator jest dla niego idealny ;) Sygnał wyjściowy ma całkiem dobre parametry. Oscyloskop pokazuje strome zbocza,...
Fajne rozroznienie (idac tym tropem dll-ki sa niezwykle ;-)).Jakiego kompilatora uzywasz ? Jesli VC++ to dodajesz dll-ke w menu do sciezki przeszukiwan, jesli gcc to poprzez dopisanie -Lkatalog_w_ktorym_jest_biblioteka do parametrow kompilacji a jesli jeszcze czegos innego to albo poszukaj tam takiej opcji albo wrzuc dana biblioteke do standardowej...
Na schemacie są elektrolity, ale w przykładowych płytkach widze smd, chyba zwykłe kondensatorki. Na schemacie zaznaczona jest polaryzacja a nie typ kondensatora, bo to nie mogą być elektrolity. Dodano po 1 DR dead masz racje wszystko co pisza w datasheetach jest prawdą ale trzeba pamietac zeby wszystkie erraty do tej prawdy doczytac. Zgadza się, w...
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:
Na poczatku kazdego programu umieszcza sie tzw Tablice wektorow przerwan. Procesor ma zaszyte na stale pod jaki adres ma skoczyc gdy otrzyma przerwanie. Gdy otrzyma takowe skacze w odpowiednie miejsce tablicy. Po drodze na stosie zachowuje aktualny adres licznika programu zeby wiedzial w ktore miejsce ma wrocic po wykonaniu instrukcji reti informujacej...
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...
Witam, jeśli problem jeszcze aktualny, to w jednym z ostatnich numerów "Komputer Świat Ekspert" (między 11/2005 a 04/2006) był szczegółowy artykuł o wstawkach asemblerowych do programu w C. Pozdrawiam
Witam czy moge prosic kogos o pomoc w wykonaniu takiego projekt : Tester baterii i akumulatorow wspolpracujacy z DSM51. Tester powinien testować baterie cynkowo-węglowe, alkaliczne, srebrowe, rtęciowe, litowo-manganowe itp. (semna od 1,5 do 3 V) oraz akumulatory: niklowo-kadmowe, niklowo-wodorkowe, litowo-jonowe (semna od 1,2 do 3,6). Dsm-51 powinien...
oczywiście, że można to rozpatrywać jeszcze na miliony sposobów. Ja w swoim teście nadaję te ramki co ok 50ms. Jeśli ustawię ich wysyłanie np co 10ms to tych błędów nawet bez zasobochłonnych procesów pojawia się nieco więcej. Jeśli ustawię interwał czasowy na 100ms to błędne ramki nie pojawiają się nawet przy obciążaniu windy innymi procesami. Te błędy...
Ok, chyba się pomyliłem z tym że nowszy kompilator będzie lepiej działa. Po prostu nie użyłem takich samych parametrów dla kompilatora i linkera jakie były w projekcie. Ściągnąłem sobie Eclipsa otwarłem projekt i przy takich samych parametrach również wyskakuje błąd, że za mało pamięci. Usunąłem "-lprintf_flt" i się zlinkował ale to nie tędy droga bo...
Wyglada na to ze nie da sie tego w VB zrobic inline jak np w C ale tu jest link do obejscia tego problemu. http://msdn.microsoft.com/library/defaul... ogolnie polega to na skompilowaniu procedury w ASM, wladowaniu kodu binarnego do tablicy w VB i podaniu adresu tej tablicy jako parametru procedury...
W przypadku Bascoma jest najgorsza sytuacja Nie do końca. CONFIG RC5 = PINx.y Koledze najwyraźniej sprzętu brakło, a na to nie poradzi nawet asembler.
Oporników bym jednak nie zmniejszał, takie mi wyszły dla maksymalnego prądu wyświetlacza przy niekorzystnych warunkach (minimalne napięcie saturacji). Poszczególne segmenty świecą równo, różnice widać pomiędzy cyframi. Problem być może wynika z tego, że tranzystory BC557 mają w tym układzie trochę przekroczone parametry, może któryś z nich nie daje...
Ten program daje następujący ciąg sygnałów Pulse i Noise: Start: Pulse=1 Noise=0 Petla: Noise=1 Opóźnienie=1 us Pulse=0 Opóźnienie=70 us <-- tu zmieniasz na 40 us Pulse=1 Opóźnienie1 Xdelay Noise=0 Opóźnienie1 Sustain Noise=1 Opóźnienie1 M_Xdelay Opóźnienie1 M_Sustain Opóźnienie 9788 us ' <--- tu zmieniasz okres całości GOTO Pętla Czyli...
Ale skad pomysl, ze Microchip musi zamknac wszystkie linie Atmela zaraz po przejeciu? Ja mysle, ze Microchip raczej wprowadzi nowe porzadki i swoje dobre nawyki. Pamietajmy, ze o suckesie danego procesora nie decyduje grupa rozproszonych majsterkowiczow czesto bez zadnego wyposazenia warsztatowego, ale firmy produkujace setki tysiecy urzadzen. Dla tych...
Witam, cel pozostał ten sam, lecz zmienił się kod, tym razem bez Lcd, więc jako zadanie dostałem opisanie krok po kroku otrzymanego kodu oraz przeniesienie kodu z języka Bascom na kod Asemblera i C. Jako, że programowanie nie jest moją mocną stroną, prosiłbym o pomoc (rady, sugestie najlepiej w sposób tzw. łopatologiczny jak można osiągnąć postawiony...
Witam, właśnie dopiero teraz to wszystko sprawdzam. Oczywiście piszę wszystko w eclipse. Stworzyłem sobie dodatkowy plik z rozszerzeniem *.S i napisałem swoją funkcję w asemblerze eclipse - ślicznie mi wszystko kompiluje tylko hmm mam jeszcze kłopot z przekazywaniem parametru(-ów) tzn wyczytałem gdzieś, że parametry przekazywane są przez pary rejestrów...
Ten temat pojawia się tu od czasu do czasu ale żadna z porad nie jest skuteczna w moim przypadku. Od paru godzin już męczę się z wpisaniem czegokolwiek pod EEPROM. I udało mi się to ale jedynie w asemblerze w którym mam już pewne doświadczenie. Próbowałem zarówno EEMEM jak i inne funkcje z nagłówka eeprom.h ale nic z tego. Najbardziej obiecujący lecz...
ja też nie znam Bascoma... ale ustawienie trybu pracy portu szeregowego w asemblerze nie stanowi żadnego problemu... szybkość parzystoć ilość bitów ustawiasz korzystając ze słów sterującyj PCON (bit SMOD to podwojenie szybkości transmisji) oraz SCON.... powodzenia....
BoskiDialer -> hmm zrobiłem dodawanie tak jak pisałeś: $asm Loadadr Cyfry(1) , Z lds r16, {Nr_wysw} dec r16 add zl, r16 ldi r16,0 adc zh, r16 lpm mov r16, r0 'ldi r16, 3 ldi zl, LOW(Tabela * 2) ldi zh, high(Tabela * 2) add zl, r16 lpm Out Porta , R0 $end Asm z tym adc (masz rację) tylko nadal adresy w ZH:ZL wskazują...
...czy tylko wstawka asemblerowa może? Pewne jest , że gdybyś bardziej przyjrzał się standardowym bibliotekom Bascoma , to byś nie zadawał tego pytania :P Biblioteka LCD Bascoma , udostępnia np. takie procedury: _lcd_control 'wyślij rozkaz do LCD _write_lcd 'wyślij znak do LCD Parametr dla tych procedur , musi znajdować się w zmiennej _temp1(R24)....
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....
Co do samego tematu: Szybkość kodu w asemblerze wynika z tego, że pisząc w nim kod wykorzystujemy wszystkie założenia dotyczące projektu - założenia są podstawą optymalizacji, a jeśli ktoś nie wykorzystuje wszystkich założeń, niech pisze w C, mniej się narobi, bo i tak nic nie zoptymalizuje - i tak: - można niektóre warunki uprościć (założenia dotyczące...
Zakładając, że nazwa pliku z kodem to napis.asm, kompilujemy go takim poleceniem: nasmw -f win32 -o napis.obj napis.asm gdzie -f określa format, a -o nazwę pliku wyjściowego. Pliki *.obj należy teraz zlinkować do formatu wykonywalnego, jakimś dowolnym linkerem. Myślę, że golink /base 0x400000 /console /entry main napis.obj msvcrt.dll Symbol main określa...
Czujniki sa wejsćiami binarnymi i odczytujemy je za pomoca funkcji INP_bin . Przykładowo po zadeklarowanniu zmiennej wejśc typu UNSIGNED Char i przypisaniu jej wartości funkcji INP_bin otrzymujemy informację o stanie wejść binarnych . zawory są wysyłane na wyjscie sterownika odpowiedniego stanu logicznego . Służy do tego celu funkcja OUT_bin() której...
Hmm... Spróbuj regularnie migać LED, jednocześnie komunikując się z PC, obsługując pomiar temperatury za pomocą 1wire (DS18B20) i wyświetlać ją na LCD, używając waitXX... ;) Timer0 jak nic do zastosowania... Tymczasem małe co nieco w załączniku (miganie LED z użyciem timera), zarówno dla ATmega8, jak i na ATmega8515. Ponieważ ATmega8 nie posiada przerwania...
Musisz tylko bardzo zwrócić uwagę na to aby MAKSYMALNIE jak tylko się da - napisać jak najkrótszy kod w obsłudze przerwań szczególnie tego Timera - bo w przeciwnym wypadku - może zacząć dochodzić do tak dziwnych sytuacji, że nie będziesz wiedział w ogóle o co chodzi. Wiesz? chodzi o to, żeby przerwania Timera pozostawiały jeszcze sporo czasu na działanie...
A przede wszyskich na studiach trzeb się nauczyć myśleć bo suchą wiedzę tabelki parametry to w necie masz od ręki. Święte słowa! Studia na kierunku EiT mają cię przede wszystkim nauczyć myśleć! Mało teorii za to dużo myślenia i logiki. Właśnie dlatego nie są to łatwe studia bo przez wiele lat w szkole nie uczyłeś się myśleć, a jedynie wykuwać coś na...
co ciekawe pod win2k ten programik działa dobrze. Widocznie lepiej działa Kernel. Nie mam Win2k i nie mogę porównać. Zresztą chyba niewiele by to dało. To robota dla bardzo dużo wiedzących. Pewnie M$ mógłby powiedzieć coś o powodach. Komunikat widziałeś? Mam tylko jeszcze jedno zastrzeżenie, wywołujesz funkcje SetDlgItemText dając jej jako argument...
To jest fragment programu Mastera napisany w języku Instruction List. Nie jest to kompletny program. To tylko definicja częsci parametrów konfiguracyjnych w postaci tekstu. Zobacz sobie rozdział 11 pt. Ether-S-Bus podręcznika PG5 User Manual, tam jest opisane jak to się konfiguruje i programuje w Fupli. W rozdziale 11.6 jest opis dla Instruction List....
asembler sortowanie diody asembler asembler kwadrat
telewizor philips podłączyć wieża uszkodzony panel dotykowy głowica tosca
mikrokomputer cobra1 mikrokomputer cobra1
Pionowe paski na monitorze Iiyama ProLite E2403WS Podłączenie dwóch czujników SPS30 do Arduino GIGA