eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaProgramowanie AT89Cxx51 › Re: Programowanie AT89Cxx51
  • Data: 2017-02-24 11:01:21
    Temat: Re: Programowanie AT89Cxx51
    Od: Piotr Gałka <p...@c...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    W dniu 2017-02-23 o 21:07, Zbych pisze:
    >> Wydaje mi się, że skoro P0_7 jest już samo w sobie adresem pinu (czyli
    >> wskaźnikiem na pin) to może uda Ci się obejść bez wskaźników na ten
    >> wskaźnik.
    >> Warunkiem jest żeby C potrafiło korzystać z rozkazów assemblera z
    >> adresowaniem bitowym.
    >
    > Adresowanie bitowe w '51 wymaga podania numeru bitu od razu w rozkazie,
    > nie ma trybu adresowania pośredniego przez rejestr.
    >
    Całkiem być może, że nie ogarnąłem sedna zagadnienia.
    Rozumiałem, że:
    Atlantis chce przechowywać wskaźniki na piny. A ponieważ we
    wcześniejszych jego pracach (z innymi procesorami) wymagało to użycia
    jakichś wskaźników w C to teraz też myśli jak zrobić sobie wskaźniki na
    te numerki określające bitowe adresy pinów.
    Z jego wypowiedzi rozumiałem, że dotychczas przechowywał wskaźniki na
    piny, a nie wskaźniki na wskaźniki na piny.
    ---- koniec opisu jak ja to rozumiałem ----

    Chciałem jedynie zwrócić uwagę, że _być_może_ szuka czegoś co ma gotowe,
    że _być_może_ wystarczy posłużyć się (i przechowywać) te bitowe adresy
    pinów.

    > Spójrz na przykłady użycia:
    > http://www.keil.com/support/man/docs/is51/is51_setb.
    htm
    > http://www.keil.com/support/man/docs/is51/is51_clr.h
    tm

    W latach 90-tych napisałem assembler dla 51-ki. Niedawno mnie zmuszono
    aby go przekompilować aby pod Win10 działał. Miałem z tym trochę
    zaskakujących problemów ale się udało.
    Nie pamiętałem oczywiście jak ten adres pinu jest podawany do rozkazu,
    ale nie rozumiem jakie to ma znaczenie.

    Nigdy nie używałem C dla żadnego mikrokontrolera. Wyobrażałem sobie, że
    C musi być trochę rozszerzane pod dany procesor.
    Czyli zakładałem, że w C dla 51-ki powinna być jakaś funkcja
    biblioteczna typu setbit() przyjumująca jako parametr jego adres i
    potrafiąca przetłumaczyć to na assembler nawet jak nie ma adresowania
    przez rejestr.
    P.G.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: