logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak zacząć programowanie mikrokontrolerów ST7 dla początkujących?

2kec 25 Cze 2003 19:11 2578 16
REKLAMA
  • #1 263583
    2kec
    Poziom 14  
    Posty: 171
    Pomógł: 2
    Ocena: 8
    Witam. Jestem początkującym elektronikiem i chciałbym się zapoznać z metodą programowania mikrokontrolerów, procesorów itd. Gdzie zacząć, a przede wszystkim od czego, w szczególności interesują mnie układy serii ST7. Pocmocne mi będą wszelkie linki, dokumentacje cokolwiek, jestem żądny wiedzy. :(
  • REKLAMA
  • #2 263952
    dioda5
    Poziom 15  
    Posty: 215
    Ocena: 10
    a moze zacznij od '51 to chyba prostsza architektura, mozesz sie pobawic w
    "bascomie8051", prosty kompilator do 51. Duzo opisu w EDW i EP. Moze na ich stronach też bedzie.
  • #3 264124
    infinity
    Specjalista od telefonów
    Posty: 1169
    Pomógł: 5
    Ocena: 32
    Swego czasu bawiłem sie Pecelem(jesto mikrokoputer edukacyjny z klawiaturą oraz wyswietlaczem LCD)
    Szeroko opisywany w EDW - skany dotyczące Pecela masz pod adresem:
    https://www.elektroda.pl/rtvforum/topic55144.html

    Pecel zbudowany jest na mikroprocku Atmela, programować można go Bascomem AVR (tak popularnym w ostatnich czasach, w tych skanach jest również kilka słow o Bascomie.
  • #4 268470
    ACULA
    Poziom 34  
    Posty: 3005
    Pomógł: 105
    Ocena: 114
    Ja proponuję zacząć od małego atmelka 2051 lub PIC16f84a programatory do nich są bardzo proste a program pisze się w C lub asemblerze. Potem proponuję przerzucić się na dużego atmela 8252
    www.lancos.com (programator pic)






    --------------
    dragonking :arrow: nie 8252 zamiast 8251??
  • REKLAMA
  • #5 353492
    Dragonking
    Poziom 13  
    Posty: 136
    Ocena: 6
    osobiście polecam 2051 bądź 8251 (troszke droższy,ale bardzo użyteczny)
    i oczywiście bascom 8051
  • #6 355318
    blabo
    Poziom 12  
    Posty: 16
    A wedlug mnie procki serii 51 to troche juz przeszlosc. Zgadzam sie z poprzednim postem ze lepiej zaczac od Atmeli ale z pic-ami bylbym ostrozny. Generalnie polecam BASCOM AVR demo mozna z interku sciagnac i na poczatek pisac programiki nawet z wykorzystaniem tylko symulatora.
    Pozdrawiam
    BB
  • REKLAMA
  • #7 355433
    tadzioor
    Poziom 15  
    Posty: 132
    Pomógł: 1
    Ocena: 4
    blabo napisał:
    A wedlug mnie procki serii 51 to troche juz przeszlosc.


    Z tym nie mogę się zgodzić. Chociaż 8051 to stara (jak na procesor) architektura, to jest ona wciąż rozwijana i to przez wielu producentów (są kontrolery z rdzeniem 8051 o wydjaności 100MIPS :!: ). Warto się z nią zapoznać, bo nic nie wskazuje na to, żeby odeszła do lamusa. Poza tym kontrolery te są ogólnie dostępne, tanie i jest do nich mnóstwo książek, kompilatorów, symulatorów i informacji w internecie.

    Jeśli chodzi o język programowania, to jest pełno dyskusji na ten temat na elektrodzie np. https://www.elektroda.pl/rtvforum/topic58128.html.
    Ja dorzucę tu swoje zdanie:
    Masz taki wybór: 1. assembler, 2. C, 3. bascom.
    ad1. Jezyk maszynowy inny dla każdej rodziny procesora, najlepszy jeżeli chcesz pisać niezbyt długie ale wydajne i oszczędne proramy, daje też najlepszą "kontrolę" nad tym co robi procesor. Niestet czas poświęcony na napisanie programu jest najdłuższy. Chociaż jak nabierzesz wprawę i będziesz miał gotowe procedury do obsługi różnych peryferiów, to czas ten zdecydowanie się skraca (zaryzykuję twierdzenie, że jest porównywalny do pisania w C)
    ad2. Najlepszy jeżeli piszesz obszerny program. Zawsze też możesz robić wstawki assemblerowe jeżeli dana procedura jest krytyczna czasowo. Ma tą zaletę, że możesz swoje programy przenosić na różne rodziny kontrolerów (po niewielkich zmianach).
    ad3. Niektórzy nazywają go językiem programowania :wink: . Ja porównał bym go raczej do klocków lego. Jeżeli nie chcesz pisać poważnych (pożądnych) programów, a chcesz się trochę pobawić z kontrolerami to możesz go wybrać.
  • #8 356536
    marcin717
    Poziom 12  
    Posty: 18
    moze faktycznie 8051 to przeszlosc ale kazdy kiedys od tego zaczynal ciagle jest ich sporo jest sporo litertury i programowainiu pokrewnych ukladow i nie sa drogie,zycze cierpliwosci bo przyda sie przy programowaniu
  • #9 356574
    rzuber
    Poziom 20  
    Posty: 545
    Pomógł: 3
    Ocena: 19
    a ja bym proponował zacząć od "klocków LEGO" - czyli od bascoma. Język jest wręcz banalny, a w EdW w kursie Ośla łączka wytłumaczony jest tak dogłębnie, że nie idzie tego nie zrozumieć. Poza tym programator do AVRek to 5 kabelków i 3 rezystorki.
    Pozdrawiam.
  • #10 357504
    strdaniel
    Poziom 20  
    Posty: 357
    Pomógł: 29
    Ocena: 4
    blabo napisał:
    A wedlug mnie procki serii 51 to troche juz przeszlosc. Zgadzam sie z poprzednim postem ze lepiej zaczac od Atmeli ale z pic-ami bylbym ostrozny. Generalnie polecam BASCOM AVR demo mozna z interku sciagnac i na poczatek pisac programiki nawet z wykorzystaniem tylko symulatora.
    Pozdrawiam
    BB


    nie jest niestety prawdą że procesor 51 jest przeszłością ,
    jest to nadal jeden z najbardziej popularnych kontrolerów 8-bitowych
    pojawiają się ciągle klony, nowe z nowymi peryferiami, dodatkami
    niestety nie zniknie ten uC jeszcze długo z rynku , zbyt mocno wbił się w rynek, zbyt dużo jest pracujących na nim układów
    nie wierzycie
    pooglądajcie sobie producentów procków
    nie ma chyba innego mikrokontrolera który miałby tyle wersji, i produkowny byłby od tak długiego czasu przez tylu producentów

    sorry ale jestem obrońcą tego układu
    uważam że nauka akurat dzialania tego układu jest jak najbardziej wskazana
  • #11 357784
    hereticon
    Poziom 15  
    Posty: 176
    Pomógł: 3
    Ocena: 10
    IMHO zgadzam sie, ze 51 sa nadal na rynku, architektura jest mocno rozbudowana, ale.... ma swoje ograniczenia.
    Natomiast PIC to nowa architektura, nowe pomysly i niestety ale PICe beda wypierac 51 stanowczo, powoli ale jednak.

    Nauka

    Proponuje zapomniec o bascomie i c jesli chcesz naprawde nauczyc sie programowac uprocki. Lepiej od razi siasc nad assemblerem maszynowym i opanowac te sztuke.
    Na poczatek nauczyc sie obslugiwac procka 51, potem PICa. To da ci obraz postepu w dziedzinie uprockow. Kazdy wykladowca zaleca taki tok nauki.

    Takze nie zrazaj sie, ze kaza ci nauczyc sie assemblera, ale jesli naprawde chcesz umiec uprocki to jest to koniecznosc. C i bascom wprowadzaja za duzo ulatwien i przyzwyczajaja do wygody.Ponadto kod wynikowy jest duzy, o wiele za duzy w stosunku do czystego assemblera (to oczywiscie zalezy od rozmiarow programu)

    Ksiazki
    Polecam kazda, ktora w sposob przystepny opisuje 51 i assemblera do niej, a takze PICa i jego rozkazy. Nie polecam ksiazek, ktore pobieznie traktuja oba przypadki. Z netu raczej dobrze sie nie nauczysz, takze moze warto zainwestowac te 60zl (dwie ksiazki) i jednak miec wszystko pod reka.
  • REKLAMA
  • #12 357819
    ACULA
    Poziom 34  
    Posty: 3005
    Pomógł: 105
    Ocena: 114
    hereticon napisał:
    IMHO zgadzam sie, ze 51 sa nadal na rynku, architektura jest mocno rozbudowana, ale.... ma swoje ograniczenia.
    Natomiast PIC to nowa architektura, nowe pomysly i niestety ale PICe beda wypierac 51 stanowczo, powoli ale jednak.

    Ksiazki
    Polecam kazda, ktora w sposob przystepny opisuje 51 i assemblera do niej, a takze PICa i jego rozkazy. Nie polecam ksiazek, ktore pobieznie traktuja oba przypadki. Z netu raczej dobrze sie nie nauczysz, takze moze warto zainwestowac te 60zl (dwie ksiazki) i jednak miec wszystko pod reka.


    ja nie zastanawiam się długo jak mam do wyboru PIC16f84A za 20zł a atmela 2051 za 5,60 (więcej nóżek i rs) dlatego myślę że powszechość + cena mają znaczenie w nieśmiertelności 51

    co do ksiązek to nie potrzeba aż 60zł, w księgarni można znaleźć już od 8 zł, które sensownie tłumaczą działanie i rozkazy, jeżeli dodatkowo ściągnie się manuala do konkretnego proca to już jest komplet nie do pobicia
    chyba że ktoś myśli że skopiowanie gotowego kodu jest rozwiązaniem problemu, a potem pojawiają się lamerskie pytania np jak resetować proca ;)

    moim zdaniem nalezy umieć korzystać ze wszystkich procków i wszystkich języków, dzięki temu rośnie uniwersalność wykorzystania swoich umiejętności
    ja korzystam z PICów i z 51 niewidząc żadnego problemu, po prostu trzeba umieć wybrać proca do odpowiedniego zastosowania
  • #13 357840
    hereticon
    Poziom 15  
    Posty: 176
    Pomógł: 3
    Ocena: 10
    IMHO zgadzam sie, ze trzeba umiec wybrac. Ale gdy PIC jest bardziej rozbudowany i umozliwia np. konkretne wysterowanie, czy zbudowanie prostszej funkcji, to pozbycie sie np. 4-5 układow pomocniczych za 30zl badz zastosowanie 51 za 5 plus 30zl uklady, to jednak jest w czym wybierac. no ale wybor nalezy do kazdego z nas, kazdy wybiera to co chce.

    owszem, znajomosc wszystkich jezykow jest wazna, ale zebys umial programowac we wszystkich to dostalbyc do glowy i nic innego bys juz nie zrobil:) ja tam jestem za znajomoscia podstaw kazdego, ale jednego trza wybrac i stosowac:) jesli sie go dobrze zrozumie to mozna zrobic wiele.

    co do ksiazek - owszem sa i takie za 8zlotych, ale pod wzgledem tresci nie sa zbyt zachwycajace:), czesto im brakuje pewnych rzeczy, albo jedne rzecyz sa bardziej wyjasnione od innych, ale noty katalogowe trzeba miec:)
  • #14 357853
    szczeslaw
    Poziom 12  
    Posty: 32
    A czy do nauki programowania naprawdę konieczne są książki? Przecież do assemblera powinien wystarczyć spis rozkazów procesora. Jedyna konieczna książka to coś o algorytmach i logice. Co do architektury - to już na dobrą sprawę kwestia gustu - obojętne czy jest to PIC czy 8051 można na tym zrobić prawie wszystko. A jak brakuje "powera" to sięgamy po AVR'a i jest O.K.
  • #15 357895
    genetix
    Poziom 24  
    Posty: 669
    Pomógł: 42
    Moje zdanie jest takie: nauka assemblera ZMUSI cię do zapoznania sie z architektura procka. A programowanie mikrokontrolerów ma wiecej wspolnego z elektroniką, to nie pascal na PC! Dlatego znajomość architektury Ci sie przyda, jak będziesz chcial "coś" do tego procka podłaczyc. Bo bez wyswietlacza i klawiatury jest głuchy i ślepy :)

    Poza tym polecam jakies ksiazki z podstawami techniki cyfrowej, chociazby dlatego, ze warto wiedziec co to jest licznik synchroniczny czy rejestr przesuwny. O bramkach i przerzutnikach nie wspominajac!
  • #16 358381
    hereticon
    Poziom 15  
    Posty: 176
    Pomógł: 3
    Ocena: 10
    szczeslaw napisał:
    A czy do nauki programowania naprawdę konieczne są książki? Przecież do assemblera powinien wystarczyć spis rozkazów procesora. Jedyna konieczna książka to coś o algorytmach i logice.

    no sam przyznales ze jest konieczna. Sama lisat rozkazow to nie wszystko. Ppotrzebna jest ksiazka ktora zapozna nas z technikami programowania.Znajomosc listy rozkazow nic nie da uczacemu sie. Co mu przyjdzie po wiedzy co robi instrukcja np. add i mov, skoro nie bedzie tego potrafil wykorzystac?
  • #17 2039506
    atmel_team
    Poziom 13  
    Posty: 74
    Pomógł: 4
    Ocena: 2
    Z tego co mi wiadomo St7 są drogie,mało popularne i dostępne w Polsce, dlatego radzę zająć się czymś bardziej powszechnym. Szlak Cię bedzie trafiał jak nie będziesz mógł dostać uC na którym chcesz oprzeć swój sterownik, czy znaleźć schemat programatora, żeby go zaprogramować. Uwierz mi zabawa nie jest warta świeczki!
    pozdrawiam!!!

Podsumowanie tematu

LABEL_AI_GENERATED
Dyskusja dotyczy rozpoczęcia nauki programowania mikrokontrolerów, ze szczególnym uwzględnieniem serii ST7. Uczestnicy sugerują, że ST7 są drogie i mało popularne, co utrudnia dostęp do dokumentacji, programatorów i układów, dlatego lepiej zacząć od bardziej powszechnych i tańszych mikrokontrolerów, takich jak rodzina 8051, Atmel AVR czy PIC. Mikrokontrolery 8051, mimo że starsze, są nadal szeroko stosowane, mają rozbudowaną architekturę, dużą dostępność materiałów edukacyjnych, kompilatorów (np. Bascom 8051) i symulatorów. Zalecane jest poznanie assemblera, który wymaga znajomości architektury procesora i pozwala na pisanie wydajnych programów, choć można też używać języków C lub Bascom. Wskazano na konieczność nauki podstaw techniki cyfrowej, algorytmów i logiki, aby efektywnie programować mikrokontrolery. W dyskusji pojawiły się także uwagi o różnicach między 8051 a PIC, gdzie PIC jest nowocześniejszy i stopniowo wypiera 8051, ale znajomość obu architektur zwiększa uniwersalność umiejętności. Podkreślono, że do nauki niezbędne są dokumentacje, noty katalogowe i książki wyjaśniające techniki programowania, a nie tylko spisy rozkazów. Wskazano również na dostępność prostych programatorów do AVR i PIC oraz na popularność mikrokontrolerów Atmel i PIC w edukacji i praktyce.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA