|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 7:11 pm
Търся насоки за начинаещ при микроконтролерите
| Автор |
Съобщение |
|
sparkybg
Ранг: Форумен бог
Регистриран на: Вто Авг 23, 2005 12:02 pm Мнения: 3070 Местоположение: София
|
 Re: Търся насоки за начинаещ при микроконтролерите
Добавят си съвсем конкретни неща, поне в по-голямата си част. Нормален днешен 16 битник няма купищата измишльотини в 8 битниците от времето, когато да сложиш допълнителни 20 транзистора в ядрото е било канско усилие и като време, и като пари. Имат си нормални прекъсвания, с приоритети, нормални стекове, нормално адресиране, barrel shift, накои имат резервно копие регистри за бързи прекъсвания и т.н. Да, сигурно има и някой и друг 8 битник, дето има някои от тия неща, ама де го смисъла, ако струва пак толкова? Конкретно, ако сравним и най-наточения микрочепски 8 битник с най-мизерния им 16 битник, разстоянието е светлинни години във абсолютно всяко отношение. Асемблер на 8 битник пък е съвсем безсмислена история за човек, дето тепърва ще се ориентира какво да ползва. Утре ще му хареса нещо друго и не само че ще започне от нула, ами и навиците от едното ще му пречат, докато свикне на новото.
|
| Сря Мар 11, 2015 12:54 pm |
|
 |
|
itso.t
Ранг: Форумен бог
Регистриран на: Чет Фев 03, 2005 2:21 am Мнения: 12765 Местоположение: София
|
 Re: Търся насоки за начинаещ при микроконтролерите
Като си се научил да се оправях с прекъсвания без приоритети, след това лесно ще се оправиш и с такива със... Има си и съответната полза да почоплиш контролер без таймер - например цитираният 10F200. И т.н. Всяка от тия дребни стъпки носи своята си ползва.
Пределно ясно е, че първият проект ще е blink.c или нещо около него, а не Ethernet to CAN bridge. В тоя аспект, усложненият контролер само би затруднил процеса... А по време на процеса трябва освен купищата съобщения за грешки трябва да се вижда и някакъв положителен резултат. Поне понякога. Мисля да е ясно защо...
|
| Сря Мар 11, 2015 1:15 pm |
|
 |
|
palavrov
Ранг: Форумен бог
Регистриран на: Вто Окт 11, 2011 11:53 pm Мнения: 4582 Местоположение: Brussels / Пловдив
|
 Re: Търся насоки за начинаещ при микроконтролерите
 |  |  |  | sparkybg написа: Добавят си съвсем конкретни неща, поне в по-голямата си част. Нормален днешен 16 битник няма купищата измишльотини в 8 битниците от времето, когато да сложиш допълнителни 20 транзистора в ядрото е било канско усилие и като време, и като пари. Имат си нормални прекъсвания, с приоритети, нормални стекове, нормално адресиране, barrel shift, накои имат резервно копие регистри за бързи прекъсвания и т.н. Да, сигурно има и някой и друг 8 битник, дето има някои от тия неща, ама де го смисъла, ако струва пак толкова? Конкретно, ако сравним и най-наточения микрочепски 8 битник с най-мизерния им 16 битник, разстоянието е светлинни години във абсолютно всяко отношение. Асемблер на 8 битник пък е съвсем безсмислена история за човек, дето тепърва ще се ориентира какво да ползва. Утре ще му хареса нещо друго и не само че ще започне от нула, ами и навиците от едното ще му пречат, докато свикне на новото. |  |  |  |  |
Всичкото това го има в 32 битовия кортекс/мипс, че и отгоре ... затова казвам, че ако започне с един 8 битов на асемблер и след това един 32 битов на C ще е минал горе долу през всичко. В този ред на мисли добавяне и на 16 битов контролер към 8 и 32 не носи нищо различно освен още малко практика. А за пикльовците е много спорно колко битови са с тези 11-12-13-14 битови инструкции 
_________________ Мразя да мразя ...
|
| Сря Мар 11, 2015 4:24 pm |
|
 |
|
Desert Leo
Ранг: Форумен бог
Регистриран на: Чет Фев 10, 2005 3:25 pm Мнения: 5677 Местоположение: София
|
 Re: Търся насоки за начинаещ при микроконтролерите
В днешно време да се започва с асемблер си е чиста глупост. Разрядността на процесора е без значение - важно е какво предлага като памет, периферия, възможности и компилатора да предлага удобна работа.
|
| Сря Мар 11, 2015 5:34 pm |
|
 |
|
palavrov
Ранг: Форумен бог
Регистриран на: Вто Окт 11, 2011 11:53 pm Мнения: 4582 Местоположение: Brussels / Пловдив
|
 Re: Търся насоки за начинаещ при микроконтролерите
Когато трябва да се реши конкретен проблем безпорно е така. В случая обаче говорим за навлизане в професията ... спомни си как си започнал навремето ...
_________________ Мразя да мразя ...
|
| Сря Мар 11, 2015 6:23 pm |
|
 |
|
itso.t
Ранг: Форумен бог
Регистриран на: Чет Фев 03, 2005 2:21 am Мнения: 12765 Местоположение: София
|
 Re: Търся насоки за начинаещ при микроконтролерите
То и в началото не е като да няма проблеми за разрешаване, но обикновено те са от по-друг тип. Например - защо броят на грешките за които съобщава компилатора превишава броят на редове написан код... 
|
| Сря Мар 11, 2015 7:07 pm |
|
 |
|
Desert Leo
Ранг: Форумен бог
Регистриран на: Чет Фев 10, 2005 3:25 pm Мнения: 5677 Местоположение: София
|
 Re: Търся насоки за начинаещ при микроконтролерите
Помня. Микропроцесорната техника на EMK-12 (CM601) - пишеш на асемблер, обръщаш кодове и операнди в hex и го набиваш в паметта с hex клавиатура, после мигаш на парцали, гледайки hex резултата на дисплея. Програмирането на Ябълка-2 и Фортран. Това е имало, това сме учили. Сега е друго. От поне 10г. не съм написал и ред на асемблер и не възнамерявам да го правя. Това е минало. След 10-ита години, а може и по-скоро, микроконтролера вероятно ще е с някорко кура и клок и памет в гиги.
|
| Сря Мар 11, 2015 7:14 pm |
|
 |
|
palavrov
Ранг: Форумен бог
Регистриран на: Вто Окт 11, 2011 11:53 pm Мнения: 4582 Местоположение: Brussels / Пловдив
|
 Re: Търся насоки за начинаещ при микроконтролерите
То и аз от там някъде не съм писал на асемблер, ама то това е като карането на колело - умение кеото дори не се замисляш, че все още го ползваш. При дебъгване винаги помага да можеш да гледаш дизасм, да си наясно с архитектурата на процесора, регистри, инструкции т.н. Не, че не може и без това, но е много по лесно като го знаеш. Колегата в бившата работа беше точно C програмист - на ниско ниво гола вода ... иначе, пекън, ама опре ли до дебъгване вдигаше ръце и ме викаше да помагам. По темата - друго умение на което си струва също да се наблегне е навигацията в чужд код ... света все повече отива в посока embedded linux или ползване на готов rtos - ако не можеш да се навигираш в сорсовете за да видиш кое как и защо ами разчиташ само на документация и вдигаш врява като има разминаване господ да ти е на помощ.
_________________ Мразя да мразя ...
|
| Сря Мар 11, 2015 7:38 pm |
|
 |
|
ike
Ранг: Форумен бог
Регистриран на: Пет Фев 04, 2005 9:59 pm Мнения: 6019 Местоположение: София
|
 Re: Търся насоки за начинаещ при микроконтролерите
Много си малд Лео. Спомням си едно интервю, което гледах по ютуб. И хората разправят как са "почнали навремето". Единия се хванал да прави хардуера, а другия да пише на тетрадка опкодовете за софтуера ... за компютър който още не е започнат.
_________________ Warriors of the Night, ASSEMBLER!!!
|
| Сря Мар 11, 2015 7:46 pm |
|
 |
|
ДедоБоре
Ранг: Форумен бог
Регистриран на: Нед Ное 21, 2004 11:31 pm Мнения: 10088
|
 Re: Търся насоки за начинаещ при микроконтролерите
|
| Сря Мар 11, 2015 8:35 pm |
|
 |
|
4040
Ранг: Почетен член
Регистриран на: Сря Фев 04, 2015 8:11 pm Мнения: 610
|
 Re: Търся насоки за начинаещ при микроконтролерите
Има си таймер ,обаче сега забелязах, че няма прекъсване. Мислех ,че всички микроконтролери си имат прекъсване , а то имало и без. Готино! Така няма кой да ти пречи и да те прекъсва.  Дадох му за пример тази въшка защото даташита й е под 100 страници. Не знам как ще се научи да програмира контролери, ако не свикне да им чете даташитите? С това за 1 ден ще може да изучи ЦЯЛ микроконтролер. Човека иска да се научи да смята , а му казвате да не си губи времето с таблицата, а направо да си купува калкулатор и да си инсталира матлаб-а на ПиЦи-то. И така може, но дали това е пътя? Еволюцията не прескача предните стъпки , а само ги ускорява!
|
| Сря Мар 11, 2015 8:52 pm |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
 Re: Търся насоки за начинаещ при микроконтролерите
Аве направо да да взема нещо Java, .net, C# или квото там е удобно и на 64 битова ОС да си пише програмки за мигане на светодиод. Желателно е да използва поне 2 гиги рам и минимум 1GHz процесор за целта.
Ако не може да вкара задача за 10F200 в самия 10F200 значи не става за тая работа. Навремето като пишехме за ябълка 2, се налагаше да вкараме програма в някви мижави килобайти. Правих една програма дето трябваше да борави с "база данни" дето беше на няколко дискети. Сега кво - битовете им били малко, рамта и флаша малко. Хард диск 1Т не искат ли да има сложат в микроконтролер. Начлото трябва да е началото - жалко че няма 4 битови.
|
| Чет Мар 12, 2015 12:01 am |
|
 |
|
stefan63
Ранг: Форумен бог
Регистриран на: Вто Фев 07, 2012 11:22 pm Мнения: 3084
|
 Re: Търся насоки за начинаещ при микроконтролерите
|
| Чет Мар 12, 2015 12:27 am |
|
 |
|
sparkybg
Ранг: Форумен бог
Регистриран на: Вто Авг 23, 2005 12:02 pm Мнения: 3070 Местоположение: София
|
 Re: Търся насоки за начинаещ при микроконтролерите
Задачата за 10F200, писана на друго освен асемблер се състои в 20 реда максимум. Ми, аз навремето на правешкия каскет такива ги пишех на втората седмица, след като изобщо помирисах компютър за сефте. Писал съм и на презряния X86 асемблер, даже захванах и SIMD разширенията на AMD. Сефтето на 8051 също ми беше на асемблер върху атмелски 8051. Ама какъв е смисъла сега - просто не виждам. Какъв е смисъла да се бориш с калпави и оразани аргитектури, с мижаво количество памет, с изчекнат асемблер и още по-изчекнато адресиране и т.н., още повече не виждам, освен ако не произвеждаш хиляди бройки от нещо. Това от моята камбанария, естествено. С програмиране си изкарвам хляба откак работя, с програмиране на микроконтролери не съм изкарал и половин месечна заплата, но пък съм загробил доста месечни заплати в него.
|
| Чет Мар 12, 2015 12:47 am |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11266 Местоположение: Добрич
|
 Re: Търся насоки за начинаещ при микроконтролерите
Поне един от екипа трябва да поназнайва асемблера на съответната. Както каза palavrov поне заради дебъга в някои ситуации. А човек който ще си вади хляба с контролери трябва да поне един асемблер да знае. Между другото асемблера за 32- бит е по-лесен за учене, защото в контролерите ползват RISC ядра и всичко е просто и чисто, почти няма никакви изгъзици или пък липси дето да изискват сложни акробатики. То това важи и за Ц-то, поне читавите компилатори са 100% стандартни и то поддържат и последните Cх014 версии, а пък тия дето са нестандартни само който ги ползва си знае защо... ако наистиня знае  Между другото Ц трябва да се познава, но не бива да се остава само на чисто Ц. Знам че има доста колеги дето се страхуват от Ц++, но това си е изцяло за тяхна сметка. Всъщност ако нещо няма бъдеще това е чистото Ц. Поне от 5 години не съм пускал чиста Ц компилация и не мисля, че някога ще ми се наложи. Виж писане на асемблер чат-пат се налага все още.
|
| Чет Мар 12, 2015 10:59 pm |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 2 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|