Elektroda.pl
Elektroda.pl
X

Wyszukiwarki naszych partnerów

Wyszukaj w ofercie 200 tys. produktów TME
Proszę, dodaj wyjątek elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Narzędzia do programowania, kompilatory

davciu 07 Lut 2005 14:56 3025 9
  • #1 07 Lut 2005 14:56
    davciu
    Poziom 11  

    Poszukuje kompilatora asemblera do 51. Ten co mam daje ciała, nie tworzy hexa i bina. Te co ściągłem również nie działają, chyba że robie coś nie tak. Czy jest jakieś narzędzie pod Windows98 do kompilacji asma. Może jakieś namiary?

  • #2 07 Lut 2005 15:04
    achilles
    Poziom 15  

    Jesli masz proram zapisany w formacie ASM to możesz je zamienić na HEX'a a potem na BIN'a za pomocą programików z załącznika.
    Mam jakiś prosty symulator do 51 ale zajmuje on ponad 1 MB. Z tego co pamiętam to był spoko symulator o nazwie Franklin. Spróbuj na googlach poszukac.
    NArazie

  • #4 07 Lut 2005 15:21
    Jacu$
    Poziom 27  

    Wejdź tutaj i ściągnij sobie assembler Metalink (jest na samym dole). Skompiluje Ci program do HEX albo do BIN (wedle życzenia).
    O, jest również u nas. Poszukaj w połowie strony: Assemblery - darmowe assemblery. Bardzo dobry jest również Turbo Assembler (kilka linijek niżej). Uważaj, różne assemblery mają różną składnię dyrektyw (np. EQU).
    Przeczytaj w opisie jaka opcja służy do uzyskania odpowiedniego pliku wynikowego hex/bin.

  • #5 17 Lut 2005 13:04
    davciu
    Poziom 11  

    Wszystko fajnie tylko jak się go obsługuje. Mam ASM51.exe i plik.asm i co dalej?? Chyba czegoś jeszcze nie wiem albo o czymś zapomniałem??

  • #6 17 Lut 2005 15:57
    Jacu$
    Poziom 27  

    No... jak to jak? Uruchamiasz jak każdy plik typu EXE i czytasz komunikaty na ekranie. Uruchomiony ASM51 zapyta Cię grzecznie o nazwę Twojego pliku do skompilowania i będzie czekał na wstukanie tej nazwy z klawiatury. Nazwę podajesz bez rozszerzenia .asm i wciskasz enter. Kompilator napisze na ekranie kilka linijek komunikatów i jeśli wszystko pójdzie gładko to wyjdzie do DOS-u (do Windows) a w bieżącym katalogu oprócz Twojego pliku źródłowego pojawią się dwa dodatkowe o rozszerzeniach .hex i .lst
    Plik .hex jest przeznaczony dla programatora a plik .lst do przeczytania przez Ciebie.
    Jeśli czegoś nie wiesz to przeczytaj plik ASM_MAN.DOC (plik tekstowy ASCII). Jest tam wszystko dokładnie opisane.
    Mam nadzieję, że paczkę MetaLink.zip ściągnąłeś z Elektrody a nie tylko sam plik ASM51.EXE zamieszczony w tym wątku przez kolegę achilles'a. Potrzebujesz jeszcze plików z definicjami do poszczególnych modeli mikrokontrolerów z rodziny MCS51.

  • #7 17 Lut 2005 17:25
    davciu
    Poziom 11  

    Użyte w asmie oznaczenie portu P1 jest traktowane jako błąd - undefined symbol. Cała linia wygląda:
    MOV P1,#11111111B

    i o co biega "Potrzebujesz jeszcze plików z definicjami do poszczególnych modeli mikrokontrolerów z rodziny MCS51."
    Trafił mi do ręki układ AT89C51SND1C.

  • #8 17 Lut 2005 20:03
    Dexter77
    Poziom 28  

    Kazdy procesor operuje na liczbach. Dla niego nie jest zrozumiale P1, zrozumiale jest dla Ciebie, czlowieka. Ow tajemniczy plik z definicjami to wlasnie nic innego jak tlumacz. Zawarte w nim sa "tlumaczenia" z jezyka ludzkiego na liczby tak zeby kompilator wiedzial ze piszac P1 masz na mysli liczbe 90 hex. Takie pliki sa potrzebne zawsze jesli chcesz uzywac nazw "przyjaznych" zamiast liczb. Dodaje sie je do kompilacji na poczatku kazdego pliku glownego dyrektywa INCLUDE.
    Pozdro
    Dexter

  • #9 18 Lut 2005 11:47
    Jacu$
    Poziom 27  

    davciu, prosilem byś przeczytal DOC-a do MetaLink'a. Wiedzialbys wszystko juz po kwadransie. Podstawowa sprawa to ściągnięcie pełnej wersji kompilatora wraz z dokumentacją i plikami, w których są zdefiniowane przez "fabrykę" nazwy symboliczne i odpowiadające im adresy rejestrów i bitów mikrokontrolera. Te pliki mają nazwy zaczynające się od "MOD" i najlepszym przykładem jest tu plik MOD51, który musisz dołączyć na początku swojego programu aby został wczytany zanim kompilator przejdzie do tłumaczenia języka assemblera na język maszynowy. W kompilatorze MetaLink nie używa się dyrektywy INCLUDE (powszechnie przyjętej w innych kompilatorach) lecz pisze się linijkę $MOD51.
    Spróbuj i napisz, co Ci z tego wyszło.
    I jeszcze raz proszę o zerkanie do dokumentacji w przypadku problemów.

  • #10 18 Lut 2005 12:27
    davciu
    Poziom 11  

    Ruszyło po wpisaniu linii którą podał Jacu$. Wielkie dzięki. Do tej pory wydawało mi się że odpalam kompilator i po bólu (myslałem że on ma w sobie już odpowiednie dyrektywy). Jeszcze raz wielkie dzięki!!!

 Szukaj w ofercie
Zamknij 
Wyszukaj w ofercie 200 tys. produktów TME