-
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.
Następne wpisy z tego wątku
- 24.02.17 11:28 Zbych
- 24.02.17 11:38 Piotr Gałka
- 24.02.17 12:06 J.F.
- 24.02.17 21:00 AlexY
- 26.02.17 11:32 Atlantis
- 26.02.17 13:47 AlexY
- 26.02.17 15:48 Dariusz Dorochowicz
- 26.02.17 16:26 AlexY
- 26.02.17 17:17 Dariusz Dorochowicz
- 26.02.17 20:21 Atlantis
- 26.02.17 20:43 AlexY
- 26.02.17 20:50 Dariusz Dorochowicz
- 26.02.17 21:02 Atlantis
- 26.02.17 21:43 Zbych
- 26.02.17 23:21 Dariusz Dorochowicz
Najnowsze wątki z tej grupy
- nie naprawiam więcej telewizorów
- Zrobił TV OLED z TV LCD
- Zasilacz USB na ścianę.
- Gniazdo + wtyk
- Aliexpress zaczął oszukiwać na bezczelnego.
- OpenPnP
- taka skrzynka do kablowki
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
- Litowe baterie AA Li/FeS2 a alkaliczne
- "ogrodowa linia napowietrzna"
Najnowsze wątki
- 2025-03-05 Środa Wielkopolska => Konsultant wewnętrzny SAP FI/CO <=
- 2025-03-05 Zielona Góra => Senior Field Sales (system ERP) <=
- 2025-03-05 Warszawa => Data Engineer (Tech Lead) <=
- 2025-03-05 Kraków => Business Development Manager - Network and Network Security
- 2025-03-05 Zaniepokojeni mieszkańcy
- 2025-03-05 Ile pieniędzy ma bank?
- 2025-03-05 Ostrów Świętokrzy => Node.js / Fullstack Developer <=
- 2025-03-05 Białystok => Architekt rozwiązań (doświadczenie w obszarze Java, A
- 2025-03-05 Warszawa => Frontend Developer (Angular13+) <=
- 2025-03-05 Warszawa => Frontend Developer (obszar Angular13+) <=
- 2025-03-05 Chiny-Kraków => Backend Developer (Node + Java) <=
- 2025-03-05 Warszawa => JavaScript / Node / Fullstack Developer <=
- 2025-03-05 China-Kraków => Key Account Manager IT <=
- 2025-03-05 China-Kraków => Senior PHP Symfony Developer <=
- 2025-03-05 Gdańsk => Specjalista ds. Sprzedaży <=