Ja tu widzę sam asembler :> Skompilowane przy pomocy avra , program zajmuje 124B. Po pobraniu należy zmienić rozszerzenie na .hex. Pozdrawiam
zapomnij o makefile Zapominanie o makefile to jak zapominanie o dniu babci. Nie boli, a jednak wstyd :) Tak, to prawda :D
A ja na drugie kopytko jako ciekawostkę dodam, że ten asembler z AVRStudio ma preprocesor C, co przy umiejętnym wykorzystaniu daje podobne możliwości, jak pisanie w C... W swoich projektach przykładowo nie inkluduję <m162def.inc> tylko <ATmega162.h> wygenerowany narzędziem xmlconvert.exe też z AVRStudio.
2. Asembler jest kompilatorem, a asemblacja - kompilacją. Asembler MIPS zamienia jedną instrukcję symboliczną w 1..4 instrukcji maszynowych. Język maszynowy (zapis binarny) to też język. Niech sobie nawet zamienia to w 20 instrukcji maszynowych. Nadal operujemy w obrębie jednego języka. Przykładowo dla ARM nop jest pseudo-instrukcją zamienianą na:...
napisz może jakiego asemblera używasz bo do obsługi procków jest chyba asembler 8088 czy jakośtak a zwykły Pecetowy ma jeszcze inne komendy
Witam, to zalezy jeśli użyjesz asemblera do niektorych funkcji to roznica powinna byc zauwazalna, natomiast w niektorych przypadkach niektóre komendy są bezpośrednio tłumaczone na asemblera i zysku nie będzie. W każdym wypadku instrukcje Bascoma są tłumaczone na instrukcje asemblera, na tym polega standardowa kompilacja na język zrozumiały dla procesora....
Kolega chyba myśli że do procesora trafia zapis z C. Zapomina kolega że następuje kompilacja i Twój program napisany w C zostaje zamieniony na asembler a następnie na język maszynowy.
Można połączyć AVR Studio z avr-gcc i kompilowac pliki C ale lepiej uzyc do tego gotowego pakietu WINAVR.Pliki *.elf generowane przez ten kompilator mozna symulowac w AVR Studio.Ale to wszystko juz na forum bylo ...
Jak asembler to asembler. Chyba nie można przetłumaczyć programu napisanego w asemblerze na różne kody wynikowe bo język ten jest tylko mnemoniczną interpretacją samego kodu maszynowego i jeżeli napiszesz rozkaz sbi(PORTD,1); to to zawsze będzie to samo dla danego procesora. Nawet używając różnych kompilatorów.
Dzisiaj nie trzeba, a nawet nie ma sensu pisać w asemblerze. Pierwszym powodem jest używanie języka pośredniego MSIL, który umożliwia działanie wielozadaniowe i przenoszenie kodu między różnym sprzętem. Bez tego "każdy by sobie rzepkę skrobał" i informatyka nie miała by szans na szybki rozwój. System ma kompilator języka pośredniego, który identyfikuje...
hmmm ja wprawdzie nie znam jeszcze C - tylko asembler - a zainstalowałem sobie WinAvr do AvrStudio 4.12 i już nie pamiętam jak ale udało mi się to spokojnie skonfigurować tak, że jak próbowałem skompilować jakieś przykładowe programiki to spokojnie przechodziła kompilacja .... popróbuj jeszcze, jak ci się nadal nie uda a nikt inny nie podpowie jakiejś...
Szukam od kilku tygodni jakiejś ciekawej książki o programowaniu mikroprocesorów AVR w języku C w okolicznych bibliotekach i księgarniach oraz w internecie. Jednak znajduję wszystko albo na assemblera albo na bascoma. Assembler jest dla mnie zbyt żmudny natomiast bascom niesatysfakcjonujący dlatego wybór padł na C. Niestety niewiele istnieje polskich...
(at) JacekCz Jak tak się mądrzysz i peszysz to wstaw lepszą wersję CPP i Assembler ;] Ja się nie peszę (bo tak słowa użyłeś). Kryształowa kula i Pierwotny Pytający milczy, jaki assembler jest oczekiwany w szkole Pytającego. Cros kompilacja z C/CPP -> ASM jest totalnie bez sensu ze wszystkich względów (dydaktycznych, technicznych itd). Ostatni prawdziwy...
Pozbądź się spacji , ze ścieżki (PATH). Piotrek
Na stronie Atmela jest dokument opisujący łączenie kodu w C z asemblerem. Wejdź tu: http://www.atmel.com/dyn/products/app_no... i poszukaj: AVR034: Mixing C and Assembly Code with IAR Embedded Workbench for AVR Może masz inny kompilator ale warto to przeczytać. Marek
Myślę, że każdy sobie sam wyciągnie wnioski z tego i innych postów autora Maly-207 . Jako że dyskusja na temat sortowania nawet się nie zaczęła, temat kwalifikuję do zamknięcia. Pozdrawiam, Dr.Vee
Po pierwsze to nie ma czegoś takiego jak kompilator asemblera, jest po prostu assembler, to nie jest język kompilowany, a Tobie raczej chodzi o środowisko programistyczne - IDE. Poza tym każdy uP/uC ma swój charakterystyczny assembler (oczywiście wspólny dla całej rodziny mikrokontrolerów), bo inną listę poleceń ma PIC a inną AVR. Polecam lekturę: http://www.edw.com.pl/ea/asm_avr.html...
Zamieszczam procedurę w asemblerze odtwarzającą pliki PSG na AY-3-8910. Opis wykorzystania znajduje się w pliku źródłowym Z80. Dane z pliku PSG przygotowuję dla asemblera programem plik2defb_v1.exe, kompilacja na asm80.com Niestety problemem są duże rozmiary plików PSG. Zachęcam do uruchomienia (G:100) przykładu na realnej Cobrze i posłuchania jak gra...
W procesie macierzystym PID potomka to wynik funkcji fork Proces macierzysty dostanie pid dziecka. Dziecko dostanie 0. Trochę się zakręciłem :D W ogóle program najpierw był częściowo w C++, a teraz już w nim nie jest w ogóle :) Ciekawe czym będzie gdy autor wrzuci go ponownie? Może w asemblerze?
A dlaczego chcesz kompilować program napisany w asemblerze z poziomu Bascoma przecież z kompilatora asemblera też możesz otrzymać hex. Napisz na jaki procesor chcesz to skompilować.
dzięki jak możesz to prześlij mi tą wersje na: krystian.czyzewski(at)poczta.tp.pl Będe bardzo wdzięczny i jeszcze powiedz mi dokładnie co pobrać ze strony producenta bo byłem ale mam kompletny mętlik w głowie i nie wiem czego szukac.Dzięki
Co do tego programu do asemblera to szukam i szukam i znaleźć nie mogę :(
Kompilowane pod asemblerem AVRasm2 od najnowszyego AVRStudio. Przeznaczenie pliku eep jest do wewnętrznego EEPROM mikrokontrolera, bez jego zaprogramowania robocik ma prawo wariować, z tego co wyczytałem w pliku źródłowym. To nie jest pod WinAVR, ewentualnie avrdude, ale trzeba czytać dokumentację jak się programuje EEPROM. Polecam : http://www.amwaw.edu.pl/~adybkows/elka/i...
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.
Kiedy mam problemy z programem dla AVR'a, napisanym w C, to zawsze podglądam co się urodziło po kompilacji. Czyli plik lst w asemblerze. Często okazuje się, że kompilator wstawia nie to co myślimy że powinno być. A dlaczego napisałeś tak: while(!(USISR & (1<<USIOIF))) //przerwie sie gdy SPSR ma 1 na SPIF miejscu Nie...
Ale sprawdziłeś wygenerowany kod? Bo na 90% kompilator sam wygenerował to co tak pracowicie wstawiłeś w asemblerze - a jeśli nie to prosta zmiana opcji kompilacji, dodanie inline itd. spowoduje, że taki kod powstanie automatycznie. Co do wcześniejszego błędu - out ma ograniczony argument do 31. Kolejna sprawa - to co tak pracowicie symulujesz programowo...
sprawdzasz w jaki sposób kod C tłumaczony jest na asemblera (po kompilacji z optymalizacją), a następnie ile taktów zegarowych wykonuje się dana instrukcja
Piszesz w asemblerze następnie kompilacja ,oczywiście dla danego mikrokont jaki posiadasz ,wybierasz to opcjach kompilatora.otrzymujesz plik wynikowy i wysyłasz go do prtu pod który masz podpięty programator .Teraz już masz zaprogramowany układzik .A tera problemy dlaczego to niestety nic nie robi .Szukasz błędu poprawiasz i wracasz do kompilacji .Zeby...
Nie, to nie to. Mało tego - teraz sprawdziłem: jeżeli Atmel Studio kompiluje aplikację napisaną w C, to wszystko gra w tym dropboxie - pliki wyjściowe są ładnie nadpisywane. Więc sprawa jest zawężona tylko do aplikacji używającej kompilatora asemblera.
Kilka błędów: - nie możesz zakładać, że zmienne znajdują się pod stałymi adresami w pamięci, to się będzie zmieniać pomiędzy kompilacjami, w związku z tym istnieje konieczność użycia symboli - register to tylko sugestia dla kompilatora i tych rejestrów wcale nie musi rezerwować. Ale jest też poważniejszy błąd - rejestry te są wykorzystywane przez AVR-libc...
na elektrodzie wyskakuja dwa komunikaty: Warning: Nazwa tematu nic nie mowi o jego zawartosci Error: Nie zdefiniowano procesora Pomoc failed! 0x41 0x56 0x45!!
Moim zdaniem wygląda to tak, jakby brakowało define-a, który przełączyłby (na zasadzie ifdef-ów) pliki nagłówkowe na włączanie tylko definicji stałych zrozumiałych dla asemblera. Może to kwestia wersji AVRStudio? Spróbuj dodać do ASMFLAGS opcję: -D__ASSEMBLER__ (po dwa podkreślniki).
jak bys przesłał kod programu to moze moglbym Ci pomoc...
Nie da się jakoś podglądnąć tego co wypluje kompilator? Można do tego użyć np. symulatora kompilatora https://godbolt.org/ i obejrzeć wynik kompilacji w asemblerze.
witam, ja używam AVR Studio i tylko asemblera i nie mam żadnych problemów z utworzeniem plików hex i kompilacją ;) .... hmmm tam w tej całej długiej ścieżce widzę, że masz \Władziu\ - spróbuj sobie ustawić w opcjach inną ścieżkę gdzie mają być tworzone pliki po kompilacji albo wogóle utwórz projekt ASM w folderze gdzieś na dysku ale krótszym i żeby...
To ja załączam odpowiedź.To jest prosty przykładzik projektu z AVRStudio , przystosowany do PN-a.Winy za błędną kompilację Twojego projektu , upatruję w makefile i pliku *.S(syntax) ;) Piotrek PS "Przerzuć się" na AVRStudio, a odpadnie Ci kłopot z makfile :D
Dla kompilatora nic nie robi, to fakt. Co do "c" to za bardzo go nie lubię i nie znam go dobrze, bardziej preferuje asembler bo wiem co jest w kodzie... spróbowałem z tym "volatile" i zrobiłem tak: u08 SetAddress(u08 cs, u08 adr) { u16 i; if (cs==CTRL) i = adr+0x08; // select A4 low -> CS1 -> CTRL else i = adr+0x10; // select A3 low -> CS0...
Cz kod, który Kolega przedstawił jest działający, czy kompilacja przebiegła bezbłędnie?
Jeżeli chcesz tylko poprogramować to weź 8252 i ISP (tak jak pisał przedmówca). Zdecydowanie łatwiej uruchamiać wszystko, nie wyciągając co chwilę kości z podstawki (już nie wspominam o kasowaniu UV) Kurczę zapomniałem jak się programowało AT89C2051, dopisanie kilka linijek kodu kompilacja, włożenie mcu do Willem'a zaprogramowanie, wyjęcie z programatora,...
Skorzystałem ze sposobu 1 tzn. avr-gcc z 2002r. i kompilacja z wiersza poleceń. Niestety ten avr-gcc nie obsługuje attiny2313 (tzn. obsługuje tylko w trybie asembler'a) więc zadeklarowałem 90s. kompilacja przebiegła bez błędów. Po wgraniu do attiny - program ruszył i działa... (będą jeszcze testy ale chyba wszystko w porządku) Dziękuję za pomoc!
Twierdzisz, że złożone konstrukcje JAVA, zapisane w asemblerze, czy PASCALU będą efektywniejsze od tych samych konstrukcji emulowanych sprzętowo :?: Nie ma czegoś takiego jak "złożone konstrukcje JAVA". Java jest kompilowana do byte-kodu, który przypomina język asemblera po kompilacja. Idea jest taka że ten byte-kod jest przetwarzany na maszynie wirtualnej,...
Nie bardzo rozumiem. Ten sam kompilator zawsze kompiluje tak samo. Rożne kompilatory mogą dać inne wyniki przy kompilacji tego samego programu.
22-27pF. W projekcie powinien być użyty oscylator kwarcowy 4MHz. Tak naprawdę to rozszerzenie tego pliku powinno być " .asm ", oznacza on de-facto plik tekstowy, ale zawierający postać źródłową programu w asemblerze. Proces zamiany postaci źródłowej na przygotowaną do załadowania do pamięci programu i uruchomienia nazywa się kompilacją. Tytuł tematu...
Witam! Jako, że jestem zielony;) w programowaniu mikrokontrolerów PIC a dokładniej w asemblerze prosze pomoc. Podczas kompilacji w programie MPASM otrzymuje nastepujace bledy: Warning[205] C:\1\L.ASM 217 : Found directive in column 1. (error) Error[128] C:\1\L.ASM 217 : Missing argument(s) Message[302] C:\1\L.ASM 222 : Register in operand not in bank...
LOL... No mówiłem, że noga z asemblera jestem... ;) Dziękuje obu kolegom za pomoc... Jak narazie kompilacja była bez błędów... Jutro będę sprawdzał czy działa... Pozdrawiam Rafał... PS Chyba wypadało by się poduczyć asemblera :/
INC co 100 nic nie pomogła :( A co do wersji programu to pobrałem go ze strony Keila jako darmowy kompilator do 2K I chyba była to wersja ewaluacyjna. Ale jak kompiluje to nie ma komunikatu że przerwań nie mogę zrobić To może polecicie mi jakieś inne programy do kompilacji ?
Tak, tylko problem w tym że nie znam asemblera.
no no - to nie takie hop siup używać jednego i drugiego - jeśli jeszcze nie znasz przynajmniej dobrze jednego z nich ;) po pierwsze można używać asemblera jako wstawek do prawie każdego języka wyższego poziomu - no ale żeby ktoś to robił odwrotnie to nie słyszałem ;) to byłoby wręcz bez sensu - żeby pisać aplikację w asemblerze i próbować myśleć nawet...
http://obrazki.elektroda.net/64_12841145... Projekt powstał w celu zapoznania się z tym małym uC. Działanie układu: Po przyciśnięciu przycisku układ budzi się ze stanu "Power-down". WDT odlicza czas potrzebny do zmiany świecącego LEDa a Timer odpowiada za generowanie dźwięku. Po 10 sekundach migania układ przechodzi w stan "Power-down" Program...
Czy da sie wyciagnac program z mikrokontrolera Motorola 68HC11, zmienic kilka linijek i wgrac spowrotem ? Czy kompilacja asemblera ( czy innego jezyka programowania w ktorym programuje sie ten procesor) do kodu maszynowego jest jednoznaczna. Czy jak wyciagne program z tego mikrokontrolera, i potem spowrotem skompiluje do kodu maszynowego to czy uzyskam...
kompilacja asembler kompilacja openwrt kompilacja notepad
podłączenie laptopa telewizorem samsung odbiornik pasmo 433mhz obrotomierz wysoki
kabel brake radio cyfral cosmo
Lampa w Ampeg 115: Jakie modele i typy? Zabezpieczenia płytkowe we wzmacniaczu Unitra WS432: funkcje i wpływ na dźwięk