Goto page Previous 1, 2, 3, 4, 5 Next
J.F.
Guest
Sat Jul 07, 2012 10:50 am
Dnia Sat, 07 Jul 2012 11:34:27 +0200, Marek Borowski napisał(a):
Quote:
On 07-07-2012 11:18, J.F. wrote:
A tak swoja droga to mnie troche dziwi ze nie rozpowszechnily sie uC oparte
o popularne architektury - np 8086. Wydawaloby sie ze w miare postepu nie
powinno byc problemow ze zmieszczeniem, mozna zreszta odchudzic o pare
instrukcji, a przy niewielkiej ilosci pamieci, rzedu paru razy po 64kB,
programuje sie to to calkiem przyjemnie.
Ze 8086 programuje sie przyjemnie ? No coz najwyrazniej mamy rozne
gusta.
Turbo C, Turbo Pascal, nie calkiem Turbo Modula .. poezja :-)
Quote:
Intel z tej rodziny istnieje dla mnie od i386 w gore pod
warunkiem implementacji plaskiego modelu pamieci. Reszta jest dla
masochistow.
Wystarczy ze masz ponizej 64KB programu i 64 KB danych i juz nie widac
roznicy :-)
Quote:
W C tez to mialo swoje reperkusje, przypomne tylko far
pointery.
dopoki pojedynczy obiekt/tablica nie przekraczal 64kB, to po prostu
ustawiales model huge i nawet nie musiales pisac 'far'.
J.
Mario
Guest
Sat Jul 07, 2012 10:51 am
W dniu 2012-07-06 18:12, identyfikator: 20040501 pisze:
Quote:
Koszmarny asembler, z tego powodu polecam 51 albo jeszcze lepiej Z80 :)
51 ma tylko jedną wadę, nie ma polecenia compare...\
A jakie cechy ma te polecenie compare, których nie miałby rozkaz CJNE?
--
MD
J.F.
Guest
Sat Jul 07, 2012 10:56 am
Dnia Sat, 07 Jul 2012 11:28:14 +0200, Marek Borowski napisał(a):
Quote:
Jeszcze nie spotkalem nikogo kto ma pojecie o programowaniu
niskopoziomowmym a nie poznal asemblera w dosc wczesnej fazie nauki.
Kwestia programu nauczania w ktory trafil.
Ciekaw jestem jak to teraz wyglada.
Quote:
Kierunek rozwoju aby w embeded programista tez nie mial pojecia o
platformie (tak jak to jest w wiekszosci "duzych" programistow) na ktora
programuje srednio a w zasadzie wcale mi sie podoba.
No, programowalem i transputery, i o assemblerze w zasadzie nie mialem
pojecia. Kwestia podejscia firmy, ktora starala sie klienta od tego
odsunac.
Efekt ... nie ma juz Inmosa, choc mam mieszane uczucia czy do dobrze czy
zle :-)
J.
Mario
Guest
Sat Jul 07, 2012 11:00 am
W dniu 2012-07-07 11:18, J.F. pisze:
Quote:
Dnia Fri, 06 Jul 2012 19:50:43 +0200, Sebastian Biały napisał(a):
On 2012-07-06 19:29, Robert Zemła wrote:
m86k to *było* to. Dogorywa. Pozostaje babranie się do końca życia na
większych zlomach g...nym x86 z nadzieją na niewielka poprawę rynku
przez ARMa.
Nadal jest, tyle że teraz nazywa się ColdFire
Dogorywa. ColdFire to szum statystyczny.
Tym niemniej ... piszesz w C, to w zasadzie jaka roznica czy pod spodem
jest m68k czy x386 ?
A tak swoja droga to mnie troche dziwi ze nie rozpowszechnily sie uC oparte
o popularne architektury - np 8086.
Były, na przykład 80186. Niestety ceny były zaporowe dla amatorów i
małych firemek. Tak więc zostali zaorani przez ARMY.
Pazerność ich zgubiła.
--
MD
Sebastian Biały
Guest
Sat Jul 07, 2012 11:39 am
On 2012-07-07 11:18, J.F. wrote:
Quote:
Tym niemniej ... piszesz w C, to w zasadzie jaka roznica czy pod spodem
jest m68k czy x386 ?
Dla mnie czy dla kompilatora? Widzisz, to nie jestety tak że arch nie ma
znaczenia jak piszesz na wyższym poziomie. Na uC czasem musisz dłubać na
poziomie asm i wtedy dostajesz w łeb pomyjami x86.
Quote:
A tak swoja droga to mnie troche dziwi ze nie rozpowszechnily sie uC oparte
o popularne architektury - np 8086.
Z80 jest na tyle blisko że nie widać różnicy więc po co przepłacać?
Jesli chcesz sobie strzelić w stopę to Z80 nadaje się do tego idealnie.
Quote:
Wydawaloby sie ze w miare postepu nie
powinno byc problemow ze zmieszczeniem, mozna zreszta odchudzic o pare
instrukcji, a przy niewielkiej ilosci pamieci, rzedu paru razy po 64kB,
programuje sie to to calkiem przyjemnie.
Weźmy spieprzony procesor 16 bitowy i potraktujmy go jak nie popsuty
procesor 8bitowy. Eeee, panie ... po cholere.
Sebastian Biały
Guest
Sat Jul 07, 2012 11:44 am
On 2012-07-07 10:51, J.F. wrote:
Quote:
Jak ktos zrozumie 51, to zrozumie i inne.
Nie. Jak ktoś zrozumie '51 to mu już tak zostanie. Czyli: bedzie pisał w
asm (bo tak jest nawygodniej) z kompilatorów bedzie znal jeden, ktory
obsługuje jakiś mało znany dialekt C, a w rozmowach będzie rzucał
hasłami o jakiś mitycznych, produkowanych na innych planetach '51 które
mają zegary 50MHz, tylko ich nikt nie stosuje, ale *SĄ* jak by co. To
zostawia piętno na całe życie.
Przeoczy: debugowanie w systemie, nowoczesne kompilatory, RISC i rdzen
projektowany dla programistów a nie dla programatorow w asm.
Jarosław Sokołowski
Guest
Sat Jul 07, 2012 12:21 pm
Pan Roman Rumian napisał:
Quote:
Pytanie trzeba uściślić. Czy chodzi o popularność mikrokontrolerów, czy
mikroprocesorów? Subtelną różnicę zdefiniowałbym na lokalny użytek w ten
sposób: do mikrokontrolera pisze się "wsad", a mikroprocesora używa się
z jakimś systemem operacyjnym, do którego dodaje się swoje programy
użytkowe. Kości ARM zdecydowanie częściej wykorzystuje się jako
mikroprocesory. Z migającą diodą na Rapsberry Pi startujący gimnazjalista
powinien sobie poradzić.
uściślijmy: na masowym rynku pozostał jeden mikroprocesor o
architekturze x86, a reszta to są mikrokontrolery(mikrokomputery) bo
oprócz CPU mają pamięć i układy peryferyjne.
To też jest dobra definicja. Szczególnie dobra by była, gdybyśmy pytali
o konstrukcję układów, a nie o programowanie. Ponadto czytałem jakieś
zapowiedzi skonstruowania procesora w architekturze x86 z układem
graficznym i czymś jeszcze w jednej strukturze. Nie wiem czy na zapowiedzi
się skończyło, ale taki układ mógłby zakłócić wyrazistość podziału.
Quote:
ARM też, a wyróżnia go bodaj największe bogactwo tych ostatnich.
Domyślam się, że chodzi Panu o różnicę miedzy układami o architekturze
type "embedded" a tymi "general purpose" z dużymi systemami operacyjnymi.
Chodzi mi o to, że kryteria doboru rozwiązań elektroniczno-informatycznych
do określonego zadania wciąż się zmieniają. Od dawna nikogo nie dziwi
zastosowanie mikrokontrolera z kilkoma kilobajtami pamięci do zadania,
które można "łatwo zrealizować jako układ złożony z 57 bramek NAND".
Nie musi też dziwić zastosowanie układu z systemem operacyjnym w środku.
Nawet z "dużym systemem".
Quote:
Wróćmy jednak do istoty mojego pytania: nie chodzi o to aby licealista
pomigał diodą, ale aby zrozumiał jak działa procesor(CPU) od strony
sprzętowej: po co jest zegar, potok, rejestry, jak są pobierane
instrukcje, dekodowane, wykonywane, bo, jak wierzę, wtedy poradzi sobie
z każdą architekturą, potrafi dobrać właściwą do rozwiązywanego problemu.
To może być ostatni moment, kiedy takie rzeczy student będzie poznawał
na przedmiocie innym niż historia.
Quote:
Pomysły z Raspberry czy Arduino są świetne, ale ich ideą jest uprościć
sprawę używania mikrokontrolera, jego programowania, tak, aby mógł się
nim posłużyć każdy, w szczególności nie profesjonalista-inżynier
wymienionych kierunków.
Idea Rapsberry była chyba taka (mogę się mylić), żeby skonstruować
bardzo tani komputer z normalnym wyjściem do monitora i normalnym
systemem operacyjnym. Mówiąc inaczej, przeciwwaga dla pecetów na x86.
Quote:
My chcemy kształcić specjalistów, zaczynając naukę od GŁĘBOKIEGO
zrozumienia samego układu. Z mojej długiej praktyki wynika, że
z takich specjalistów łatwo uzyskać dobrego programistę,
rozumiejącego dobrze współpracę sprzętu z programem
Bardzo to szlachetne pobudki. Poważnie mówię, bez ironii. Ale jeśli
to do celów dydaktycznych, to wybór jest mniej istotny. No i jak już
wspomniałem, trzeba się śpieszyć.
--
Jarek
Jarosław Sokołowski
Guest
Sat Jul 07, 2012 12:26 pm
Pan Mario napisał:
Quote:
W dniu 2012-07-06 14:08, Jarosław Sokołowski pisze:
Pan roman rumian napisał:
Wydaje się, ze obecnie przyszłość procesorów należy do ARM (cortex)!
Niewątpliwie, ale z kolei wątpię, czy to jest dobry start dla świeżego
absolwenta liceum czy gimnazjum.
Pytanie trzeba uściślić. Czy chodzi o popularność mikrokontrolerów, czy
mikroprocesorów? Subtelną różnicę zdefiniowałbym na lokalny użytek w ten
sposób: do mikrokontrolera pisze się "wsad", a mikroprocesora używa się
z jakimś systemem operacyjnym, do którego dodaje się swoje programy
użytkowe. Kości ARM zdecydowanie częściej wykorzystuje się jako
mikroprocesory.
Skoro chcesz trzymać się tego klasycznego podziału to weź pod uwagę że
mikrokontroler to mikroprocesor wyposażony w zegar, timer, kontroler
przerwań porty I-O, porty komunikacyjne. Mikrokontrolerem jest bez
wątpienia 51, a ARMy posiadają dużo innych peryferiów, więc bardziej
zasługują na miano mikrokontrolera. To że ktoś do nich dokłada pamięć
RAM i kontroler grafiki to jest raczej kaprys a nie konieczność. Może
pełnić rolę wyspecjalizowanego komputera bez tych dodatków.
Czy ja wiem, czy ja się trzymam klasyki -- wyżej wymieniony podział
opiera się o kryteria organizacji hardware, mój jest software'owy.
W tym arbitralnym rozróżnieniu Z80 może być elementem mikrokontrolera,
albo elementem mikrokomputera CP/M. Rzecz w tym, że mało sensowne jest
(i zawsze było) użycie CP/M na Z80 do sterowania windą, a ARM z Linuksem
w podobnych zastosowaniach, to już nie jest zły pomysł.
--
Jarek
Jarosław Sokołowski
Guest
Sat Jul 07, 2012 12:29 pm
Pan J.F. napisał:
Quote:
Pytanie trzeba uściślić. Czy chodzi o popularność mikrokontrolerów, czy
mikroprocesorów? Subtelną różnicę zdefiniowałbym na lokalny użytek w ten
sposób: do mikrokontrolera pisze się "wsad", a mikroprocesora używa się
z jakimś systemem operacyjnym, do którego dodaje się swoje programy
użytkowe.
To chyba nie jest dobra definicja.
Ona jest całkowicie arbitralna, więc musi być dobra, jeśli jest zniej
pożytek.
Quote:
W miare rozwoju powstaja i male systemy na typowe uC.
Co to jest ten "typowy uC"? Jeśli jest nim np. ARM czy coś równie
mocnego, to podejście "bezsystemowe" w ogóle schodzi na margines.
--
Jarek
Sebastian BiaĹy
Guest
Sat Jul 07, 2012 2:16 pm
On 2012-07-07 11:28, Marek Borowski wrote:
Quote:
To bardziej informatyka niż elektronika. Szczególnie te większe.
Jeszcze nie spotkalem nikogo kto ma pojecie o programowaniu
niskopoziomowmym a nie poznal asemblera w dosc wczesnej fazie nauki.
Ja natoamist spotkalem w życiu 2 osoby które programując mikrokontrolery
miały pojęcie o programowaniu w ogóle (od asm po języki funkcyjne). Z
tego taki wniosek że albo marny programista albo marny elektronik.
Sebastian Biały
Guest
Sat Jul 07, 2012 2:22 pm
On 2012-07-07 12:05, Mario wrote:
Quote:
Skoro chcesz trzymać się tego klasycznego podziału
Kiedyś "klasycznie" to bylo bardzo prosto: mikrokontroler dziala
zazwyczaj tylko na zasilaniu. Mikroprocesor musi mieć masę układów
wspomagających do pracy.
Marek Borowski
Guest
Sat Jul 07, 2012 2:58 pm
On 07-07-2012 16:16, Sebastian Biały wrote:
Quote:
On 2012-07-07 11:28, Marek Borowski wrote:
To bardziej informatyka niż elektronika. Szczególnie te większe.
Jeszcze nie spotkalem nikogo kto ma pojecie o programowaniu
niskopoziomowmym a nie poznal asemblera w dosc wczesnej fazie nauki.
Ja natoamist spotkalem w życiu 2 osoby które programując mikrokontrolery
miały pojęcie o programowaniu w ogóle (od asm po języki funkcyjne). Z
tego taki wniosek że albo marny programista albo marny elektronik.
Bo malo kto po skonczeniu pozadnej uczelni laczacej elektronike z
informatyka programuje uC.
Ale jak widac sa wyjatki i obaj chyba zgadzamy sie iz w nalezy laczyc
obie umiejetnosci. Moze z dokladnoscia co do tego ktora jest bardziej
istotna

.
Pozdrawiam
Marek
J.F.
Guest
Sat Jul 07, 2012 4:02 pm
Dnia 07 Jul 2012 12:26:51 GMT, Jarosław Sokołowski napisał(a):
Quote:
W tym arbitralnym rozróżnieniu Z80 może być elementem mikrokontrolera,
albo elementem mikrokomputera CP/M. Rzecz w tym, że mało sensowne jest
(i zawsze było) użycie CP/M na Z80 do sterowania windą, a ARM z Linuksem
w podobnych zastosowaniach, to już nie jest zły pomysł.
A nie odwrotnie ?
CP/M ma podobna zalete jak MS-DOS - nie przeszkadza
Tylko to po prostu kompletnie oplacalne wstawiac naped dyskietek zamiast
(EP)ROM z programem.
Natomiast linux ... a po cholere on w sterowniku do windy ?
Quote:
W miare rozwoju powstaja i male systemy na typowe uC.
Co to jest ten "typowy uC"?
Na tyle popularny i o duzych mozliwosciach, zeby sie oplacilo sie system
wymyslac i tworzyc.
Quote:
Jeśli jest nim np. ARM czy coś równie
mocnego, to podejście "bezsystemowe" w ogóle schodzi na margines.
Ale to z innych powodow IMHO - sterownik do windy, a jak ma miec USB na
pokladzie do diagnostyki, i BT zeby serwis nie musial chodzic po drabinie,
i ethernet zeby pracowac w sieci z innymi sterownikami, i podlaczony ma byc
do systemu inteligentnego budynku, i miec webserver dla zarzadcy, i
oczywiscie TCP/IP do tego potrzebne , i jeszcze gniazdo na karty SD - to
niestety oprogramowanie tego wszystkiego kosztuje, a w systemie w cenie..
J.
J.F.
Guest
Sat Jul 07, 2012 4:20 pm
Dnia Sat, 07 Jul 2012 13:44:05 +0200, Sebastian Biały napisał(a):
Quote:
On 2012-07-07 10:51, J.F. wrote:
Jak ktos zrozumie 51, to zrozumie i inne.
Nie. Jak ktoś zrozumie '51 to mu już tak zostanie. Czyli: bedzie pisał w
asm (bo tak jest nawygodniej)
Na ARM tez jes asm :-)
Quote:
z kompilatorów bedzie znal jeden, ktory
obsługuje jakiś mało znany dialekt C, a w rozmowach będzie rzucał
hasłami o jakiś mitycznych, produkowanych na innych planetach '51 które
mają zegary 50MHz, tylko ich nikt nie stosuje, ale *SĄ* jak by co.
Te army to tez sa, sa, tysiace, tylko kupic je trudno :-)
Quote:
To zostawia piętno na całe życie.
Zalezy od nacisku w edukacji. Tak to raczej mowi ktos z dluzszym stazem i
dorobkiem, kto wie ze postawiony mu projekt moze rozwiazac szybko (z
wykorzystaniem wczesniejszych programow), albo przyjdzie mu sie uzerac.
Quote:
Przeoczy: debugowanie w systemie,
Na maszynie debugowac moze byc trudno. Moze wymagac odpowiednio szybkiej
obslugi.
Quote:
nowoczesne kompilatory,
gcc sprzed 30 lat ? :-)
Quote:
RISC
A to jakas istotna roznica ? Moze sie tylko wscieknie ze paru przydanych
rozkazow brakuje.
Quote:
i rdzen projektowany dla programistów a nie dla programatorow w asm.
Zdaje sie ze na poczatku zarzucales pisanie w asm - o co cie teraz
architektura obchodzi ? Piszesz w C, i nie masz pojecia czy jest RISC czy
CISC, czy rdzen jest dla programistow czy programatorow :-)
Czasem tylko bedziesz sie dziwil po co jakies dziwnie instrukcje, albo
czemu nowoczesny kompilator taki niewydajny :-)
J.
J.F.
Guest
Sat Jul 07, 2012 4:36 pm
Dnia Sat, 07 Jul 2012 13:39:04 +0200, Sebastian Biały napisał(a):
Quote:
On 2012-07-07 11:18, J.F. wrote:
A tak swoja droga to mnie troche dziwi ze nie rozpowszechnily sie uC oparte
o popularne architektury - np 8086.
Z80 jest na tyle blisko że nie widać różnicy więc po co przepłacać?
Jesli chcesz sobie strzelić w stopę to Z80 nadaje się do tego idealnie.
tez sie nie rozpowszechnil w tej roli.
A byl jednak sporo gorszy.
Quote:
Wydawaloby sie ze w miare postepu nie
powinno byc problemow ze zmieszczeniem, mozna zreszta odchudzic o pare
instrukcji, a przy niewielkiej ilosci pamieci, rzedu paru razy po 64kB,
programuje sie to to calkiem przyjemnie.
Weźmy spieprzony procesor 16 bitowy i potraktujmy go jak nie popsuty
procesor 8bitowy. Eeee, panie ... po cholere.
bo czesto czysty 8-bitowy nie jest wystarczajacy. Zreszta i 8080 i Z80
wykraczaly poza "8 bit".
Poza tym masz sprawdzona konstrukcje, masz biegle kadry, masz narzedzia -
czemu niewykorzystac ?
Tylko cena 186/188 zawazyla, czy one jednak za malo uC przypominaly ?
J.
Goto page Previous 1, 2, 3, 4, 5 Next