Mikrokontroleri
34 отговора
785 прегледа
Mikrokontroleri
Zdravejte!
Interesuvam se kade moga da namerq informaciq, otnostno programirane na mikrokontroleri. S tova nikoga ne sum se zanimaval, i mi e pulna magla... Vse pak, imam interes da se naucha...
Sasto taka- koi e nai-podhodqstiq ezik za tazi rabota?
Pozdravi!
Ilia Yordanov,
[линк] ; C++ Resources
Interesuvam se kade moga da namerq informaciq, otnostno programirane na mikrokontroleri. S tova nikoga ne sum se zanimaval, i mi e pulna magla... Vse pak, imam interes da se naucha...
Sasto taka- koi e nai-podhodqstiq ezik za tazi rabota?
Pozdravi!
Ilia Yordanov,
[линк] ; C++ Resources
Re: Mikrokontroleri
Ами има твърде много и различни видове микроконтролери всеки предназначен за различна цел.
По принцип три са най-използваните метода:
Асемблер (специфичен за всеки микроконтролер)
C (обикновенно не е C++)
Java (често поради липса на JIT компилатор - бавна)
Ако има компилатор за C или JVM за микроконтролера който си избрал, направо зарежи асемблера.
Go on, prove me wrong. Destroy the fabric of the universe. See if I care.
По принцип три са най-използваните метода:
Асемблер (специфичен за всеки микроконтролер)
C (обикновенно не е C++)
Java (често поради липса на JIT компилатор - бавна)
Ако има компилатор за C или JVM за микроконтролера който си избрал, направо зарежи асемблера.
Go on, prove me wrong. Destroy the fabric of the universe. See if I care.
Re: Mikrokontroleri
Humm, ima i drugi ezici (Ada, Forth).
Pogledni edno sravnenie na:
[линк]
Viarno e che 60% ot horata polzvat C za takiva neshta, no tova ne znachi che 60% ot
horata polzvat nai udachnoto reshenie,
prosto na C nai lesno se namirat programisti.
Pogledni edno sravnenie na:
[линк]
Viarno e che 60% ot horata polzvat C za takiva neshta, no tova ne znachi che 60% ot
horata polzvat nai udachnoto reshenie,
prosto na C nai lesno se namirat programisti.
Re: Mikrokontroleri
A-a-a, da.
Eto ti edna klasacia kakvi ezici se polzvat
za embedded programming:
[линк]
Eto ti edna klasacia kakvi ezici se polzvat
za embedded programming:
[линк]
ne zarezvai assemblera!
otdeli nekolko dni v nacaloto da naucis assembelra ili mpone da se zapoznaes s nego!!!!! tova posle vinagi ste ti e polezno! ako pocnes napravo na C nikoga drug pat nema da naucis nikakav assembler!!! i nema da znaes kak vsasnost backa vaprosnia mikrokontroler!
a, za tova s JAVA-ta az ne sam srestal takova no mi zvuci ujasiavasto i kostunstvenno! kak taka JAVA!!
imase nekolko balgarski knijki... potarsi!
a, za tova s JAVA-ta az ne sam srestal takova no mi zvuci ujasiavasto i kostunstvenno! kak taka JAVA!!
imase nekolko balgarski knijki... potarsi!
Re: ne zarezvai assemblera!
Не знам дали знаеш, обаче първоначално Java-та е била замислена и предназначена писане на програми за микроконтролери, и за управление на битови и други уреди (кафемашини, хладилници, телевизори и други подобни). Обаче по различни причини не се е получило и сега всички си мислят че Java-та че най великият език за програмиране за PC-та.
Re: ne zarezvai assemblera!
daje syshtestwuwa spor zashto simwola na ezika e chashka s kafe... zashtoto e zapochnal kato ezik za kafewarki il izashtot parwata Java-native machina e imnala stranen dizajn silno napomnqsht kafevarka :))
Re: ne zarezvai assemblera!
Ama istinata e malko po razlichna.
Java e vid kafe, kakto i Moka i dr.
Java e vid kafe, kakto i Moka i dr.
Re: Mikrokontroleri
vij [линк]
a za ezicite: trebva ti assembler na pyrvo miasto, moje i C (ne C++) ili Forth; biagai dalech ot Java-ta
triabva ti da znaesh sashto i malko (ili poveche hadrware)

a za ezicite: trebva ti assembler na pyrvo miasto, moje i C (ne C++) ili Forth; biagai dalech ot Java-ta
triabva ti da znaesh sashto i malko (ili poveche hadrware)
Re: ne zarezvai assemblera!
neznaeh ce zatoav e zamislena JAVA-ta!
to mai neotskoro se pravat opiti za unificirane na softuera za mikrokontroleri!!!
ama misla c ene toav e nacina!
podiavolote! edna kafemasina se upravliava s nai tapia 8bitov procesor s 500bytes ROM i 16bytes RAM!
tova s javata sigurno iziskva.......
kakvo vsasnost iziskva?
to mai neotskoro se pravat opiti za unificirane na softuera za mikrokontroleri!!!
ama misla c ene toav e nacina!
podiavolote! edna kafemasina se upravliava s nai tapia 8bitov procesor s 500bytes ROM i 16bytes RAM!
tova s javata sigurno iziskva.......
kakvo vsasnost iziskva?
Re: ne zarezvai assemblera!
Който какво да говори, баз асемблер не става в embedded systems. Поне такава е практиката и реалността - освен асемблер най-много да е C, ама чисто и без разни шибани ++.
(някой ден нещата може да се променят, но днес това е полужението :)
Ама работата не е само до програмиране. Човек който работи в областта трябва да знае електроника поне на ниво от което може да контактува с хардуеристи.
За да се работи в областта е добре да се знаят и други технологии, които са популярни сред инженерите и физиците. Например голяма далавера е DSP (Digital Signal Processing). Който се интересува по въпроса може да си изтегли еда книга от адреса:
[линк]
В нея DSP е обяснено много добре и е много лесна за четене. За всички алгоритми са написани програмки. Има и някои неща за невронни мрежи, обработка на звук и образи, сонари, радари, компресиране, ... разгледани са и конкретни микропроцесори - тези на [линк]
(някой ден нещата може да се променят, но днес това е полужението :)
Ама работата не е само до програмиране. Човек който работи в областта трябва да знае електроника поне на ниво от което може да контактува с хардуеристи.
За да се работи в областта е добре да се знаят и други технологии, които са популярни сред инженерите и физиците. Например голяма далавера е DSP (Digital Signal Processing). Който се интересува по въпроса може да си изтегли еда книга от адреса:
[линк]
В нея DSP е обяснено много добре и е много лесна за четене. За всички алгоритми са написани програмки. Има и някои неща за невронни мрежи, обработка на звук и образи, сонари, радари, компресиране, ... разгледани са и конкретни микропроцесори - тези на [линк]
Re: Mikrokontroleri
Аз съм работил известно време с процесори на Microchip ([линк]) и с едно някакво АМД май беше, но на него само съм поправял бъгове, не съм писал от начало. Моят опит показва следното:
Задължително е да знаеш асемблера и хардуерната структура поне на функционално ниво. Можеш да не разбираш много от електроника и какво става като сложат жичкаджиите резистор на пети крак, но само ако работиш в екип с някой който разбира.
За разработка на приложения си поиграй и с асемблера и със Ц-то (с друго не съм работил и не мога да давам съвети). Много е полезно да разгледаш как Ц-то компилира сорса, да се пробваш да го оптимизираш малко и т.н.
Между другото веднъж ми се случи компилатора да изкомпилира грешно един код и това го разбрах чак след два дена блъскане. Затуй - гледаш какво компилира, най-малкото за да видиш как го прави и дали не може някъде да се напише по-добре.
Гледам, че никой не ти препоръчва конкретен чип, та аз да кажа, че от PIC-овете на Майкрочип най-добре да хванеш 16F84 който е с флаш памет, при това доста голяма, а и паметта му за данни не е малко (ПИКовете не са със стандартната фонНойманова архитектура, ами кода и данните са в отделна памет)
Веднъж като си избереш платформа, има уебрингове и мейлинг листи на корем - там има специалисти, които се занимават с тия работи откакто са измислени и дават много ценни съвети.
Успех!
There's a crack, a crack in everything, that's how the light gets in...
Задължително е да знаеш асемблера и хардуерната структура поне на функционално ниво. Можеш да не разбираш много от електроника и какво става като сложат жичкаджиите резистор на пети крак, но само ако работиш в екип с някой който разбира.
За разработка на приложения си поиграй и с асемблера и със Ц-то (с друго не съм работил и не мога да давам съвети). Много е полезно да разгледаш как Ц-то компилира сорса, да се пробваш да го оптимизираш малко и т.н.
Между другото веднъж ми се случи компилатора да изкомпилира грешно един код и това го разбрах чак след два дена блъскане. Затуй - гледаш какво компилира, най-малкото за да видиш как го прави и дали не може някъде да се напише по-добре.
Гледам, че никой не ти препоръчва конкретен чип, та аз да кажа, че от PIC-овете на Майкрочип най-добре да хванеш 16F84 който е с флаш памет, при това доста голяма, а и паметта му за данни не е малко (ПИКовете не са със стандартната фонНойманова архитектура, ами кода и данните са в отделна памет)
Веднъж като си избереш платформа, има уебрингове и мейлинг листи на корем - там има специалисти, които се занимават с тия работи откакто са измислени и дават много ценни съвети.
Успех!
There's a crack, a crack in everything, that's how the light gets in...
малка забележка
По-добре е да не се захваща със 16-та серия а направо с 18-та. Нали трябва да се гледа напред?
въпросче
С опасение че пак ще започна едни безсмислен спор ще попитам : Защо си мислиш че 8051 е класика? Само защото то го използваш или поради някаква обективна причина? Питам защото наистина ми е интересно какво толкова му харесваш.
Re: ne zarezvai assemblera!
Izcqlo sym suglasen s tebe! Ako e student i ako sega sqda da uchi - samo ASSEMBLER! Toi shte go nauchi na neshta, koito edwa li drug pyt shte moze da nauchi, shtoto edwa li drug pyt shte mu se nalozi da pishe na ASM (oswen ako ne raboti programirane na microcontrollers).
допълнение
съгласен съм с Мордред за PIC-овете: 16F84 е доста добър избор; също бих могъл да препоръчам (въждам, че никой не го е направил) Motorola - най-големия производител на MCU, там примерно може да се почне със 68HC11 направо щото моторолите са си класически и не е нужно човек да почва от А и Б...
BTW така и така сте опънали темата трябва да споделя, че е адски трудно в България човек да се реализира в тая област. Аз лично вече повече от 2 години се занимавам с глупости като Web и Win понеже няма добри оферти в сферата на MCU - всеки гледа по-лесното - Web-a и хоп: паричките при него...
... та случайно някой ако знае някъде интересен work с MCU да свирка
BTW така и така сте опънали темата трябва да споделя, че е адски трудно в България човек да се реализира в тая област. Аз лично вече повече от 2 години се занимавам с глупости като Web и Win понеже няма добри оферти в сферата на MCU - всеки гледа по-лесното - Web-a и хоп: паричките при него...
Re: въпросче
ami, ima hubavi i mnogo instrikcii, s udovolstvie se pise na assembler, ima hubav kompilator na C, mnogo e evtin (windond 78e58 $1.5 mai) tuka s eopira do konkretnata realizacia razbirase! moje da adresira 64K cod, i 64K DATA
kakvo oste?
ne e mnogo barz 1-2 takta instrukcia (takt=osc/12) pri turbo varianta obace primerno 77e58 osc/4
obace generira dosta kompakten kod! v nikakav slucai ne misla ce za nekav PIC moje da se napise po kratka programa!
inace istinata e ce za vseko prilojenie si ima nai podhodiast kontroler! tova se opredelia kakto i ot svoistvata na samia procesor(8,16bitov) ot tova kolko kodova pamet sadarja, ot tova kakkva RAM ima (ili moje da mu se dobavi vansno) tak ai ot tova kakvo dopalnitelni ustroistva ima v nego ( ADC, DAC, taimeri, comparatori, seriini kanali i t.n.)
za tova da se kajei ETO TOIA E NAI DOBRIA MIKROKONTROLER e nevazmojno!
obac eaz travra ce v nai obst smisal 8051 si e mnogo dobar kontroler! (maakr i parvia)
kakvo oste?
ne e mnogo barz 1-2 takta instrukcia (takt=osc/12) pri turbo varianta obace primerno 77e58 osc/4
obace generira dosta kompakten kod! v nikakav slucai ne misla ce za nekav PIC moje da se napise po kratka programa!
inace istinata e ce za vseko prilojenie si ima nai podhodiast kontroler! tova se opredelia kakto i ot svoistvata na samia procesor(8,16bitov) ot tova kolko kodova pamet sadarja, ot tova kakkva RAM ima (ili moje da mu se dobavi vansno) tak ai ot tova kakvo dopalnitelni ustroistva ima v nego ( ADC, DAC, taimeri, comparatori, seriini kanali i t.n.)
za tova da se kajei ETO TOIA E NAI DOBRIA MIKROKONTROLER e nevazmojno!
obac eaz travra ce v nai obst smisal 8051 si e mnogo dobar kontroler! (maakr i parvia)
Re: ne zarezvai assemblera!
Na vishcki mnogo vi blagodarq za otgovorite... qvno ste se nalozi i ASM da ucha...
No vse pak, nikoi ne mi preporacha mqsto na koeto moga da vidq konkretno informaciq otnostno kak se pise software za microkontroleri... nesto za nachinaesti... zastoto az i predstava si nqmam kak bi izglezdala primerna programa...
Pozdravi!
Ilia Yordanov,
[линк] ; C++ Resources
No vse pak, nikoi ne mi preporacha mqsto na koeto moga da vidq konkretno informaciq otnostno kak se pise software za microkontroleri... nesto za nachinaesti... zastoto az i predstava si nqmam kak bi izglezdala primerna programa...
Pozdravi!
Ilia Yordanov,
[линк] ; C++ Resources