Elektroda.pl
Elektroda.pl
X
PLC Fatek
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

8051 - Czy ktoś jeszcze w dzisiejszych czasach tworzy coś na 8051 ?

sibislaw 19 Cze 2015 12:18 9660 142
  • #1 19 Cze 2015 12:18
    sibislaw
    Poziom 12  

    Czy ktoś jeszcze w dzisiejszych czasach tworzy coś na 8051 ? Jaka jest przyszłośc tej architektury ?

    0 29
  • Semicon
  • #2 19 Cze 2015 12:32
    conan02

    Poziom 29  

    Sporo specjalizowanych MCU posiada rdzeń '51. Nawet dość nowych. Nie wszędzie jest potrzeba stosowania wydajnych ARM czy ATmegi. Przykłady to np. seria układów Texasa TUSB3x10 - interfejsy USB. W segmencie przemysłowym jeszcze długo będą istniały sterowniki na bazie tej rodziny mikrokontrolerów. Co do nowych konstrukcji to powoli są wypierane przez AVRtiny i ATtiny i LPC.
    Trochę błędne jest powszechne używanie w edukacji emulatorów MCS51, jednak warto iść w nowsze rozwiązania z większą pamięcią operacyjną.

    0
  • #3 19 Cze 2015 12:37
    Pepi_23
    Poziom 15  

    Parę lat temu był to standard przemysłowy. Ja ostatni projekt na 8051 (na ADuC812) zrobiłem jakiś 10 lat temu. Teraz stosuję tylko Cortex M3 lub Cortex M0+. Ale 8051 jest ciągle jeszcze do zdobycia i słyszałem że niektórze producenci wypuszczaja ciągle jeszcze nowe wersje tego mikrokontrollera. W dzisiejszych czasach 32 bitowy ARM Cortex M0+ ma dużo większe mozliwości niż 8051 i do tego jest jeszcze tańszy. 8051 pożyje jeszcze ale będzie stale wypierany przez ARM Cortex M3 / M0+ Mikrokontrolery.

    1
  • Semicon
  • #4 19 Cze 2015 12:49
    elele
    Poziom 17  

    Nadal są w użyciu i robią coś na tym gdyż stosunkowo często są sprzedawane. Po chwilowym zastoju przez chyba 3 - 4 lata wracają do łask pomimo stosunkowo wysokiej jak na możliwości ceny.

    0
  • #5 19 Cze 2015 12:56
    conan02

    Poziom 29  

    Wiem po sobie, bo akurat to jest moja ulubiona rodzina MCU - mam z wielu lat pracy biblioteki obsługi w asemblerze praktycznie pod wszystko od pamięci EEPROM poprzez układy RTC i przetworniki ADC/DAC aż po moduły LCD w wielu wersjach. Trochę szkoda to porzucić i robić od nowa w innym systemie.
    Raczej myślę, że młode pokolenie powinno się uczyć na najnowszych architekturach, starsze pozostanie przy AVR/ATmega/ATtiny, a moje już będzie serwisować i modyfikować stare sprzęty na bazie 8051. Ja pamiętam jeszcze serie 8048/8031 i Z8.

    0
  • #6 19 Cze 2015 13:02
    sibislaw
    Poziom 12  

    Pepi_23 napisał:
    Parę lat temu był to standard przemysłowy. Ja ostatni projekt na 8051 (na ADuC812) zrobiłem jakiś 10 lat temu. Teraz stosuję tylko Cortex M3 lub Cortex M0+. Ale 8051 jest ciągle jeszcze do zdobycia i słyszałem że niektórze producenci wypuszczaja ciągle jeszcze nowe wersje tego mikrokontrollera. W dzisiejszych czasach 32 bitowy ARM Cortex M0+ ma dużo większe mozliwości niż 8051 i do tego jest jeszcze tańszy. 8051 pożyje jeszcze ale będzie stale wypierany przez ARM Cortex M3 / M0+ Mikrokontrolery.


    Tak też myślałem. Mikrokontrolerów 32 bitowych opartych o architekturę ARM sprzedaje się coraz więcej w związku z czym są one coraz tańsze. Poziom ich zużycia mocy również maleje. Myślę że w pewnym momencie przestanie się opłacać kupować mniejsze 8 i 16 bitowe mikrokontrolery. Nie wiem, czy się ze mną zgodzicie ale moim zdaniem nastąpi pewna polaryzacja rynku - 8 bitowe mikrokontrolery do bardzo prostych zastosowań, np. zamiast paru bramek logicznych w prostych urządzeniach bądź kontroler podsystemu w dużych urządzeniach, a z drugiej strony mikrokontrolery oparte o ARM wykorzystywane w bardziej wymagających aplikacjach.

    Koniec końców znikną mikroprocesory 16 bitowe i stare architektury jak np 8051. Zostaną np mikrokontrolery AVR 8 bit i ARM 32 bit.

    Dodano po 5 [minuty]:

    elele napisał:
    Nadal są w użyciu i robią coś na tym gdyż stosunkowo często są sprzedawane. Po chwilowym zastoju przez chyba 3 - 4 lata wracają do łask pomimo stosunkowo wysokiej jak na możliwości ceny.


    Jak to wracają do łask ? Mnie się wydawało że ostatnio właśnie osłabiła się ich pozycja. Jakieś 7 lat temu były traktowane jeszcze jako wybór przy projektowaniu urządzenia.
    Obecnie widzę że wszędzie jeśli już wkłada się mikrokontrolery AVR, ewentualnie stosuje się płytki wbudowane z linuxem (różnych klas, oparte na ARM) do bardziej wymagających zastosowań. Ewentualnie mikrokontolery oparte na ARM w miejscu gdzie nie potrzebujemy aż tak dużego kalibru jak wbudowany linux.

    0
  • #7 19 Cze 2015 13:29
    BlueDraco
    Specjalista - Mikrokontrolery

    Ja tam nie widzę, gdzie się wkłada te AVR. Nawet do migania diodą lepiej nadaje się tańszy od AVR mały Cortex, o sporo bogatszych peryferiach i 10x większej mocy obliczeniowej. Właśnie kończę taki projekt z Cortexem za 2 zł. ;)

    1
  • #8 19 Cze 2015 13:45
    Pepi_23
    Poziom 15  

    Który to Cortex kosztuje 2 zł ?

    2
  • #9 19 Cze 2015 13:51
    tadzik85
    Poziom 38  

    Pepi_23 napisał:
    Który to Cortex kosztuje 2 zł ?


    2zł nadal wysoka cena, no chyba że robisz coś poniżej 1000szt.

    0
  • #10 19 Cze 2015 14:05
    up8051
    Poziom 14  

    sibislaw napisał:
    Czy ktoś jeszcze w dzisiejszych czasach tworzy coś na 8051 ? Jaka jest przyszłośc tej architektury ?
    Jasne, otwórz sobie telewizor PHILIPSA w każdym jest sterowanie na '51, klawiatura do PC też, kasy fiskalne też, nawet CD widziałem z '51. :)

    0
  • #11 19 Cze 2015 18:44
    excray
    Poziom 39  

    Np. moduły NRF24LE1 są oparte o rdzeń '51 a praktycznie na nich stoją wszystkie myszki i klawiatury bezprzewodowe. W wielu chińskich tanich urządzonkach widziałem uC oparte o rdzeń '51.

    2
  • #12 19 Cze 2015 19:41
    up8051
    Poziom 14  

    excray napisał:
    Np. moduły NRF24LE1 są oparte o rdzeń '51 a praktycznie na nich stoją wszystkie myszki i klawiatury bezprzewodowe. W wielu chińskich tanich urządzonkach widziałem uC oparte o rdzeń '51.

    Oczywiście postęp idzie do przodu, ale spójrzmy na to jeszcze inaczej, ilu producentów produkuje '51 a ilu AVR ?

    1
  • #13 19 Cze 2015 20:31
    dondu
    Moderator Mikrokontrolery Projektowanie

    Mikrokontroler to tylko ułamek ceny końcowej urządzenia. Znacznie większą część stanowią ewentualne koszty przerabiania oprogramowania na inny mikrokontroler. Dlatego też 51 będzie się trzymać jeszcze długo na rynku w tych aplikacjach, gdzie producenci maja wypracowane programy i biblioteki wymagające tylko niewielkich przeróbek, by zastosować je w pokrewnym nowym urządzeniu.

    Dlatego też takie projekty jak nowe układy zgodne z 51 ale np. 65 razy szybsze niż pierwotna rodzina powstają nie tylko u dużych producentów, ale także Bytomiu: http://pierwszymilion.forbes.pl/polacy-szybsi...digital-core-design,artykuly,169364,1,1.html#

    2
  • #14 19 Cze 2015 20:57
    up8051
    Poziom 14  

    dondu napisał:
    Mikrokontroler to tylko ułamek ceny końcowej urządzenia. Znacznie większą część stanowią ewentualne koszty przerabiania oprogramowania na inny mikrokontroler. Dlatego też 51 będzie się trzymać jeszcze długo na rynku w tych aplikacjach, gdzie producenci maja wypracowane programy i biblioteki wymagające tylko niewielkich przeróbek, by zastosować je w pokrewnym nowym urządzeniu.

    Dlatego też takie projekty jak nowe układy zgodne z 51 ale np. 65 razy szybsze niż pierwotna rodzina powstają nie tylko u dużych producentów, ale także Bytomiu: http://pierwszymilion.forbes.pl/polacy-szybsi...digital-core-design,artykuly,169364,1,1.html#

    Brawo, nie chodziło mi o cenę uP, ale koszta przeróbek - możliwość wyboru innego producenta itd... to się zgadzam, poza tym wsad też jest robiony w strukturach reprogramowalnych np: w języku VHDL, gotowe biblioteki ..

    1
  • #15 20 Cze 2015 08:07
    elele
    Poziom 17  

    Czyli jak w życiu. Jednemu podoba się córka, drugiemu matka, a trzeciemu wsio rybka. Ktoś kto jak np ja, na 8051 się wychował, nadal będzie ich używał gdyż łatwiej jest mi przerobić coś co znam dogłębnie niż uczyć się ( w moim wieku ) na nowo, a młodzież szaleje i wcale się im nie dziwię. Młodość tak ma. Tylko wydaje mi się że w wielu przypadkach jest to przerost formy nad treścią albo inaczej zbędne komplikowanie prostych spraw.

    1
  • #17 20 Cze 2015 09:04
    elele
    Poziom 17  

    100/100
    Pamiętam moje pierwsze przygody z 8051 kiedy to stwierdziłem że jest zbyt wolny i w ogóle że to jest przeżytek. Dopiero kolega bardziej oblatany w temacie wskazał mi zbędne zapętlenia które niepotrzebnie spowalniały jego działanie i nagle okazało się że " to urządzenie może działać znacznie szybciej" jak to dziś piszą. Są konstrukcje ponadczasowe i uważam że to jest jedna z nich. Sądzę że jeszcze długo będzie w użyciu.

    1
  • #18 20 Cze 2015 18:19
    BlueDraco
    Specjalista - Mikrokontrolery

    Kłopot z 51 polega na tym, że na to, co Cortex robi jedną instrukcją 51 potrzebuje zwykle ok. 10..20 instrukcji, więc nawet przy tej samej częstotliwości zegara jest to przepaść w wydajności. AVR jest kilka razy szybszy od 51 ale kilka razy wolniejszy od Cortexa. W peryferialach rzecz wygląda podobnie - 51 - kompletny prymityw, AVR ciut lepszy.
    Taki np. Freescale KE04 kosztuje 2.05 netto przy 100 szt - 16-nóżkowa obudowa, 4 wyjścia PWM. Ja ostatni projekt na 51 zrobiłem jakieś 8 lat temu,a ostatni na AVR - 5. Teraz robię na tańszych i szybszych układach. ;)

    0
  • #19 20 Cze 2015 19:05
    up8051
    Poziom 14  

    BlueDraco napisał:
    Kłopot z 51 polega na tym, że na to, co Cortex robi jedną instrukcją 51 potrzebuje zwykle ok. 10..20 instrukcji, więc nawet przy tej samej częstotliwości zegara jest to przepaść w wydajności. AVR jest kilka razy szybszy od 51 ale kilka razy wolniejszy od Cortexa. W peryferialach rzecz wygląda podobnie - 51 - kompletny prymityw, AVR ciut lepszy.
    Taki np. Freescale KE04 kosztuje 2.05 netto przy 100 szt - 16-nóżkowa obudowa, 4 wyjścia PWM. Ja ostatni projekt na 51 zrobiłem jakieś 8 lat temu,a ostatni na AVR - 5. Teraz robię na tańszych i szybszych układach. ;)

    Co do szybkości to ciekawe rozwiązanie jest wyżej Link. Wersje bardziej rozbudowane też są ale niestety droższe :(. Ale jeśli nie trzeba szybko to jest b.dobra konstrukcja

    0
  • #20 20 Cze 2015 19:43
    Marek_Skalski
    Moderator Projektowanie

    @BlueDraco
    Jak zwykle, bierzesz dwie skrajności i próbujesz je ze sobą porównać. Przykładowo:
    - moduły USB były w rodzinie C51 zanim pojawiły się pierwsze Cortex'y,
    - moduły CAN były w rodzinie C51 zanim pojawiły się pierwsze Cortex'y,
    - C51 miały bardzo fajne moduły PCA, które miały 5+ kanałów PWM lub IC, ze wspólną podstawą czasu. Do dzisiaj brakuje mi takich układów pozwalających bardzo łatwo realizować synchronizację i opóźnienia czasowe sygnałów.
    @up8051
    Co do Firmy DCD, to oni sprzedają tylko schemat logiczny, opis rdzenia w wybranym języku syntetycznym, coś jak ARM. A to już jest jedna wielka bzdura:

    Cytat:
    Wiceprezes Digital Core Design przyznaje, że część ich procesorów trafia do elektroniki medycznej, a część stanowi komponent układów scalonych montowanych w automatach do pozycjonowania tzw. masek układów scalonych.

    Pracuję dla firmy, która produkuje naświetlarki (ASML, światowy monopolista) i te "maski" nazywają się reticle, a ja akurat mam szczęście projektować elementy z obszaru Reticle Stage i wiem, że nie ma tam żadnych wynalazków z DCD.
    Inna rzecz dotycząca tego oszałamiającego osiągnięcia, jakim jest DQ80251, to jest to struktura 32-bitowa, z długim pipe-linem. Jedyna zgodność, ale z wyjątkami, dotyczy listy instrukcji, która jest kompatybilna z podstawowym C51. Nie obsługuje rozszerzeń dostępnych przez kod $A5. Mówiąc wprost, to nie jest 8-bitowiec, o dużej wydajności, tylko maszyna 32-bitowa, która jak to w ostatnich dniach ujął jeden z kolegów na forum, "jest przyspieszaczem do zwalniacza".
    Co do tych obszarów, kiedy prędkość nie jest potrzebna, to zazwyczaj są to obszary, w których liczy się energooszczędność. Tutaj C51 nie ma żadnych szans. Zarówno Cortex, AVR czy PIC są lepsze. Dlaczego sa jeszcze gdzieś tam w użyciu? Ponieważ nie opłaca się przepisywać wszystkiego na inną platformę. Ale dla nowego projektu wybór C51, w dowolnej pochodnej, jest rozwiązaniem nieracjonalnym. Również ze względu na brak wsparcia dla debugerów. C51 nie ma JTAG'a, nie ma Trace'a ani innych interfejsów pozwalających na pełny podgląd pracy. W tej sytuacji czas opracowania bardziej złożonych projektów rośnie dramatycznie. Time-to-market wydłuża się poza jakikolwiek akceptowalny horyzont i taki projekt jest skazany na porażkę. Aczkolwiek, hobbysta może z powodzeniem zbudować jakieś urządzenie o unikalnych funkcjach. Hobbysta ma czas i nie liczy pieniędzy.

    3
  • #21 20 Cze 2015 20:03
    dondu
    Moderator Mikrokontrolery Projektowanie

    Marek_Skalski napisał:
    C51 nie ma JTAG'a, nie ma Trace'a ani innych interfejsów pozwalających na pełny podgląd pracy. W tej sytuacji czas opracowania bardziej złożonych projektów rośnie dramatycznie. Time-to-market wydłuża się poza jakikolwiek akceptowalny horyzont i taki projekt jest skazany na porażkę.

    Marku, ta argumentacja jest tylko częściowo słuszna, bo nie bierzesz pod uwagę pozostałych dziesiątek elementów decyzyjnych o wyborze mikrokontrolera. Jednym z nich jest to, że wiele produktów końcowych zawiera oprogramowanie opracowane wiele lat wcześniej jedynie zmodyfikowane. Dlatego time-to-market wcale nie musi być dłuższy.

    Marek_Skalski napisał:
    Hobbysta ma czas i nie liczy pieniędzy.

    Nie hobbyści kupują DQ80251, tylko firmy:

    Cytat:
    W ciągu półtorej dekady trzej koledzy ze studiów zaopatrzyli w swoje nowoczesne mikroprocesory ponad 250 milionów urządzeń.


    Ze strony DCD:

    Cytat:
    The innovativeness of DCD's IP solutions has been confirmed by over 500 licenses sold to over 300 customers worldwide, such as: INTEL, SIEMENS, PHILIPS, TOYOTA, OSRAM, GENERAL ELECTRIC, RAFAEL, SAGEM and GOODRICH.

    http://www.dcd.pl/

    A to tylko jeden z producentów 51, w dodatku mały :)

    1
  • #22 20 Cze 2015 21:36
    arturavs
    Poziom 38  

    Mi te kontrolery z DCD bardziej przypominają emulatory '51 zbudowane na fpga, lub cpld. Sam często używam'51 i pochodnych. Chociażby z racji tego, że zabawę z uP zacząłem dość późno. Zawsze starałem się wykorzystywać to co mam, czyli głównie TTL i CMOS. Jednak pewnego dnia stwierdziłem, że po cholerę mam siedzieć kilka tygodni i projektować układ składający się z kilkudziesięciu układów jak mogę to zrobić na kilku( włączając '51). To było kilkanaście lat temu. A, że będąc za granicą trafiłem na wyprzedaż ze sklepu elektronicznego, to za kilkadziesiąt dolarów kupiłem około 2000 ukontrolerów. Głównie Atmela, ale wtedy nie wnikałem. Jeszcze trochę zostało, i staram się je wykorzystać.

    Jako ciekawostkę podam, że te niby stare kontrolery są w stosunkowo młodych urządzeniach montowane.
    Około miesiąca ( może więcej) temu zgłosił się do mnie klient z szalejącą klimatyzacją w autobusie. Bodajże Setra '05 . Jakież było moje zdziwienie, gdy po otwarciu "kasety" ujrzałem 80c35? Dlaczego? Po co? I wiecie, że wszystko działało, jedynie procesor się przegrzewał. Plus taki, że zewnątrzna pamięć EPROM. Minus, że nigdzie nie można dostać. Kolega mój po długich wykopaliskach wygrzebał u siebie 80c39. Podeszło.

    Fakt, nie ta rodzina. Pochodna 80c48, ale jednak.

    W wielu urządzeniach przemysłowych też można spotkać '51 i pochodne. I to nie tylko w tych starszych.

    Podejrzewam, że '51 jeszcze długo się utrzymają. Na pewno nie w wersji oryginalnej, ale pod jakimiś zamiennikami z być może(a raczej na pewno), rozszerzonymi peryferiami itp.

    Zwróćcie uwagę, że nawet najnowsze procesory komputerowe są kompatybilne w dół. Do swego protoplasty 8086.

    0
  • #23 20 Cze 2015 22:39
    94075
    Użytkownik usunął konto  
  • #24 20 Cze 2015 22:49
    atom1477
    Poziom 43  

    Zależy jeszcze co rozumieć jako '51.
    Ogólną architekturę, budowę wewnętrzną (konkretny schemat połączeń) czy samą tylko listę instrukcji.
    Bo zależnie od tego to co mamy dzisiaj będzie dokładnie '51, albo jedynie emulatorem '51.

    0
  • #25 20 Cze 2015 23:16
    94075
    Użytkownik usunął konto  
  • #26 20 Cze 2015 23:41
    up8051
    Poziom 14  

    albertb napisał:
    atom1477 napisał:
    Zależy jeszcze co rozumieć jako '51.
    Ogólną architekturę, budowę wewnętrzną (konkretny schemat połączeń) czy samą tylko listę instrukcji.
    Bo zależnie od tego to co mamy dzisiaj będzie dokładnie '51, albo jedynie emulatorem '51.

    Myślę, że trzeba rozumieć jak najszerzej, zwłaszcza kontekście porównania z Cortexem.
    Konieczność porównywania z super duper architektury z "przyspieszaczem do zwalniacza" mówi sama za siebie.
    Porównywanie 8 bitowego AVR z 51 czy 6800 mnie nie dziwi.
    Ale porównywanie do tego Cortexa jest dla mnie równie dziwne jak porównywanie tego ostatniego do i7

    Albert


    Moim zdaniem, liczy się: niezawodność, nakład pracy jaki trzeba włożyć, dostępność, brak monopolu, cena przy produkcji seryjnej. Nie wiem czy jeśli ktoś produkuje produkt na dużą skalę i mu działa to jest taki chętny do zmian ?

    0
  • #27 20 Cze 2015 23:46
    arturavs
    Poziom 38  

    Albo i7 do 8086. Wiadomo, że technologia się rozwija. I to trzeba mieć na uwadze. Ale, tylko od producenta/projektanta zależy co zastosuje. Wiadomo, każdy tnie koszty. Ale jak Koledzy przedmówcy zauważyli, jeśli ma się gotowy program, i/lub procedury, to lepiej trzymać się sprawdzonego procesora/architektury, niż od zera zaczynać. Z czasem trzeba będzie przejść, ale dopuki są dostępne kontrolery z rdzeniem '51? Po co?

    Czasem to nie szybkość ma znaczenie, a niezawodność.


    Przykład podałem kilka postów wyżej.

    0
  • #28 20 Cze 2015 23:50
    up8051
    Poziom 14  

    Parę lat temu rozebrałem przypadkiem EKG, byłem zdumiony jak w środku zobaczyłem 8086, od razu przez myśl przebiegła stary poczciwy DOS i XT z klawiaturką na 8048 :)

    0
  • #29 21 Cze 2015 00:25
    greg789
    Poziom 16  

    Mnóstwo ludzi ich używa, choćby dlatego że istnieją darmowe wersje w VHDL, są mniejsze niż 32 bitowe, więc zabierają mniej miejsca i są oszczędniejsze w poborze prądu.
    Jak dla kogoś są zbyt wolne to zawsze może sobie wziąć układ z DSP lub wersję 32 bitową.

    https://en.wikipedia.org/wiki/Intel_MCS-51

    0
  • #30 21 Cze 2015 08:53
    tronics
    Poziom 36  

    W przemyśle jest dużo '51 ze względu na to, że ktoś kiedyś tak zaprojektował układ i teraz się to ciągnie ze względu na wieloletnie wsparcie dla produktu. W przypadku różnych transcieverów często jest rdzeń '51 z bogatymi peryferiami specjalizowanymi (usb, can, wifi) bo rdzeń niewiele liczy, a dzięki prostej architekturze i przyjemnej liście rozkazów można łatwo zaimplementować. Ale i to się kończy. Świat MCU coraz więcej wciska w procki więc niebawem i te wyspecjalizowane urządzenia z rdzeniem 51 przestaną być potrzebne.

    1