-
21. Data: 2017-03-25 11:19:34
Temat: Re: Pamięć at89c2051
Od: Atlantis <m...@w...pl>
W dniu 2017-03-25 o 10:17, Marek pisze:
> J.F. chodziło zapewne o to, że takie skamieniałości nie mają
> architektury przyjaznej C. Były projektowane do programowania w
> asamblerze. Robienie kompilatora w C do takich archtektur jest trochę
> na siłę, bo efekt kompilacji często nie będzie zoptymalizowany.
Nie zmienia to faktu, że przy małych projektach ten argument nie ma
wielkiego znaczenia. Do dużych użyję zupełnie innego MCU, tudzież
jakiegoś Arduino albo nawet Raspberry Pi.
A co do optymalizacji, to darmowe wersje kompilatorów XC8/XC32 też mają
ograniczone możliwości w zakresie generowania najbardziej optymalnego
kodu. ;)
-
22. Data: 2017-03-25 16:52:15
Temat: Re: Pamięć at89c2051
Od: "Grzegorz Niemirowski" <g...@p...onet.pl>
Atlantis <m...@w...pl> napisał(a):
> Nie zmienia to faktu, że przy małych projektach ten argument nie ma
> wielkiego znaczenia. Do dużych użyję zupełnie innego MCU, tudzież
> jakiegoś Arduino albo nawet Raspberry Pi.
> A co do optymalizacji, to darmowe wersje kompilatorów XC8/XC32 też mają
> ograniczone możliwości w zakresie generowania najbardziej optymalnego
> kodu. ;)
Chodzi o to, że nowoczesność nie polega (lub nie tylko polega) na ilości
peryferiów, szybkości czy rozmiarze pamięci. Polega też na braku potrzeby
rozwiązywania problemów nieznanych gdzie indziej. Jak potrzebujemy prostego
MCU, to bierzemy proste nowoczesne MCU, a nie starocia. I dlatego właśnie
sięgamy po przywołane ATtiny, a nie n-te wcielenie '51.
--
Grzegorz Niemirowski
http://www.grzegorz.net/
-
23. Data: 2017-03-27 08:27:05
Temat: Re: Pamięć at89c2051
Od: Atlantis <m...@w...pl>
On 25.03.2017 16:52, Grzegorz Niemirowski wrote:
> Chodzi o to, że nowoczesność nie polega (lub nie tylko polega) na ilości
> peryferiów, szybkości czy rozmiarze pamięci. Polega też na braku
> potrzeby rozwiązywania problemów nieznanych gdzie indziej. Jak
Jak na razie nie natknąłem się na jakieś poważniejsze problemy z
kategorii "kompilator sobie z tym nie poradzi, ten fragment trzeba
napisać w asemblerze". Były to głównie kwestie związane ze specyfiką
platformy i drobnymi różnicami w obsłudze peryferiów, na jakie można się
natknąć przy pierwszym kontakcie z dowolną nową rodziną MCU (pierwszy
przykład z brzegu - odwrócona w stosunku do AVR-ów konwencja ustawiania
kierunku pinów w PIC-ach).
> potrzebujemy prostego MCU, to bierzemy proste nowoczesne MCU, a nie
> starocia. I dlatego właśnie sięgamy po przywołane ATtiny, a nie n-te
> wcielenie '51.
To fakt, jednak wygląda na to, że do prostego amatorskiego projektu cały
czas się nadają.
A takie AVR-y (zwłaszcza wcześniejsze, podstawowe modele) wcale nie są
już takie nowoczesne. :)
BTW rodzina 8051 może i została stworzona z myślą o programowaniu w
asemblerze, jednak całe mnóstwo projektów powstawało w BASCOM-ie.
-
24. Data: 2017-03-27 14:03:27
Temat: Re: Pamięć at89c2051
Od: "Alojzy" <@>
Użytkownik "Atlantis":
>Chwilę, a to przypadkiem nie jest tak. że jeśli ustawię 0, to tam jest
>dosłownie 0 - pin jest na poziomie masy i nawet jeśli podłączyłbym
>zewnętrznego pull-upa, to i tak po stronie pinu będzie on na potencjale
>masy i próba odczytania czegokolwiek da zawsze 0.
Tak, jak wpiszesz 0 to będzie stan niski.
>Natomiast jeśli wpiszę 1, to włącza się słaby, wewnętrzny pull-up. Przy
>odczycie normalnie będzie zwracało jedynkę - chyba, że coś z zewnątrz
>zewrze pin z masą - wtedy będzie zero.
Tak, ale wpisałeś 0 i oczekujesz, że na TXD będą jakieś dane, a przecież
masz tam stan niski.
Alojzy
-
25. Data: 2017-03-27 14:17:19
Temat: Re: Pamięć at89c2051
Od: "Alojzy" <@>
Użytkownik "Grzegorz Niemirowski" napisał:
>rozwiązywania problemów nieznanych gdzie indziej. Jak potrzebujemy prostego
>MCU, to bierzemy proste nowoczesne MCU, a nie starocia. I dlatego właśnie
>sięgamy po przywołane ATtiny, a nie n-te wcielenie '51.
Typowa miejska legenda tej grupy. Architektura 8051 na pewno nie jest
najlepsza, ale znacznie bardziej klarowna niż wynalazku AVR. Asemblera
(nawet na poziomie długości cykli rozkazów) można nauczyć się w 1 dzień, a i
C jest całkiem dobre - Keil. Może dlatego do dzisiaj można kupić coś na
bazie 8051 (prawie 40 lat), a i pewnie za 10 lat się uda, ciekawe jak to
będzie z AVR.
Alojzy
-
26. Data: 2017-03-27 17:48:28
Temat: Re: Pamięć at89c2051
Od: "J.F." <j...@p...onet.pl>
Użytkownik "Alojzy" napisał w wiadomości grup
dyskusyjnych:58d902d0$0$15196$6...@n...neostrad
a.pl...
Użytkownik "Grzegorz Niemirowski" napisał:
>>rozwiązywania problemów nieznanych gdzie indziej. Jak potrzebujemy
>>prostego MCU, to bierzemy proste nowoczesne MCU, a nie starocia. I
>>dlatego właśnie sięgamy po przywołane ATtiny, a nie n-te wcielenie
>>'51.
>Typowa miejska legenda tej grupy. Architektura 8051 na pewno nie jest
>najlepsza, ale znacznie bardziej klarowna niż wynalazku AVR.
>Asemblera
Czy taka klarowna ... widzisz ile niuansow wyszlo w tym jednym watku.
>(nawet na poziomie długości cykli rozkazów) można nauczyć się w 1
>dzień, a i
mialbym pewne watpliwosci ... lepiej zarezerwowac 2 dni :-)
>C jest całkiem dobre - Keil.
No coz, o ile ta architektura ... w assemblerze mozna rzec - jest jaka
jest,
to IMO w C stanowi powazny problem.
Mozna wskazniki rozwiazac jak Keil ... ale to z kolei jest narzut od
samego poczatku.
Kiepska wydajnosc, albo dziwne ograniczenia - wybieraj sam ...
poprosze o inny procesor :-)
> Może dlatego do dzisiaj można kupić coś na bazie 8051 (prawie 40
> lat), a i pewnie za 10 lat się uda, ciekawe jak to będzie z AVR.
No coz, 51 byla robiona od lat, a AVR ma jednego dostawce.
Ale ... kto jeszcze 8051 robi, czy jakiegos niezbyt odleglego klona ?
J.
-
27. Data: 2017-03-27 18:11:11
Temat: Re: Pamięć at89c2051
Od: Marek <f...@f...com>
On Mon, 27 Mar 2017 17:48:28 +0200, "J.F."
<j...@p...onet.pl> wrote:
> Ale ... kto jeszcze 8051 robi, czy jakiegos niezbyt odleglego klona
?
Wszyscy Chinscy producenci półprzewodników do własnych chińskich
marek. Tam jest tego zalew, wszelka automatyka jest na klonach 51.
Mcu avr czy pic chętnie są stosowane tylko przez zachodnie marki.
--
Marek