Здравствуйте, Mystic, Вы писали:
М>>Почему бы не использовать для обучения Си и микроконтроллеры?
M>А зачем микроконтроллеры? Тогда уже Си, UNIX, bash, vim, gdb, консоль. Что, в общем-то, мало отличается от того, с чего начинал я: DOS, Turbo C 1.5
Да нафига и си, юникс, баш и фигаш? 86-я машина, DOS, Trubo Pascal 7.0 и ассемблер.
Здравствуйте, Sharov, Вы писали:
S>>>>>Важно то, что ты работаешь с железом, лучше понимаешь как работает железо. Разница между микроконтроллером и компьютером S>>>>>колоссальна, но базовые принципы у них одни и те же. SK>>>>кроме физических размеров, ВООБЩЕ НЕТ РАЗНИЦЫ. от слова совсем. S>>>В принципах функционирования разницы нет, а в возможностях есть.
SK>>например?
S>Надо сравнитвать i7 и процессор какого-нибудь ардуино?
блесни!
S>Процессор и там и тут, ISA может быть даже совпадает, но производительность мягко говоря отличается.
Здравствуйте, Stanislaw K, Вы писали:
S>>Процессор и там и тут, ISA может быть даже совпадает, но производительность мягко говоря отличается.
SK>заведи ардуины на 3 ГГц и сравни.
Ок, ну если заводить на ардуине на 3 ГГц тогда да, разницы никакой, согласен.
Но обычно-то, на сколько я знаю, на микроконтроллерах процессоры поскромнее (хотя бы из соображений энергопотребления).
Здравствуйте, Mystic, Вы писали:
M>Здравствуйте, мыщъх, Вы писали:
М>>Почему бы не использовать для обучения Си и микроконтроллеры?
M>А зачем микроконтроллеры? Тогда уже Си, UNIX, bash, vim, gdb, консоль.
"какая же гадость эта ваша заливная рыба" (с). вот что говорят студенты, когда после МК возвращаются к писюку (маку). потому что писюк совершенно непригоден для начинающих программистов. температуру, влажность, давление мерять не может. GPS модуль теоритически к нему можно подключить, но взаимодействие с ним выходит за рамки курса начинающего бойца и бойчихи. не говоря уже о том, что МК может мигать _кубом_ из светодиодов и создавать трехмерную реальность без очков.
кстати, под никсы и vim студентов и без меня учат. во всяком случае в сша это повсеместно.
M> Что, в общем-то, мало отличается от того, с чего начинал я: DOS, Turbo C 1.5
угу. в DOS можно быть делать практически все. com файл это аналог дампа, который закачивают в МК. прямой доступ к железу, возможность мигать светодидами по LPT...
защищенный режим вы изучали явно после реального. и уровней абстракций было совсем немного.
почему вы против микроконтроллеров? стоят дешево (даже в виде готовых плат) и выпускают их от кустарных фирм до интела (intel galileo & edison). если Intel выпускает такие платы серийно, то это знак свыше. как минимум о них нужно знать выпускникам. а как максимум... индустрия изменилась. софтверные решения вытесняются АПК, причем вытесняются повсеместно (ибо железо стоит копейки). "умный дом" это реальность сегодняшего дня. и не только умный дом... хотите поиграться с GPS или ГЛОНАСС? да без проблем!!!
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Здравствуйте, elmal, Вы писали:
E>Здравствуйте, мыщъх, Вы писали:
М>>я так и читаю в качесвте факультатива в нашем колхозе. только не на старших курсах. не уверен, что у людей после этого появляется понимание как работает эвм, но вот мотивация появляется точно. и у нас совместно появляются идеи в стиле: а что есть майку на спине усеять множеством микроскопических светодиодов и отображать на ней рекламу, скажем? E>А интересно, сколько планируется платить владельцу такой майки, чтоб он ее носил? Ибо я вообще не могу понять мотивацию того, кто согласится надеть такую майку.
реклама это шутка, конечно. там можно выводить что угодно. выглядит необычно и человек в такой майке сразу же привлекает внимание. девушка в таком одеянии на любой вечеринке притягивает парней словно магнтитом. собственно, девушки отвечают за самый ответственный и кропотливый процесс, распаивая тысячи светодидов строго в определенных местах. это требует сосредоточенности, упорства и терпения.
в принципе мы уже вплотную подошли к разрешению сопоставимому с древними видео-магнитофонами. правда, потребляемая мощность порядка 50 ватт (пиковая). так что к майке прилагаются два чумодана батареек. толстушкам хорошо. у них и спина побольше и батарейки легко прячутся на их могучем теле.
желающих нацепить это на себя -- намного больше, чем самих маеек и потому у нас очередь на полгода вперед.
ЗЫ. а рекламу лучше крутить не на спине, а спереди. чтобы было можно подойти и потрогать груди покликать баннеры. шутки-шутками, но уже есть студенты, ищущие инвесторов под новую бизнес-идею. вы знаете почем стоит рекламная площадь в городах? а тут столько хомячков гуляет бесхозных. теоритически это может взлететь. практически -- слишком много нерешенных проблем.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Здравствуйте, ro_man, Вы писали:
_>Здравствуйте, мыщъх, Вы писали:
_> Программирование микроконтроллеров без (хотя бы базового) знания цифровой схемотехники — это профанация.
тоже самое можно сказать за "большие" компьютеры. к тому же не обязательно брать аналоговый термодатчик, т.к. его еще и калибровать надо. можно взять готовую плату, выдающую цифровые данные. обычно с ней идет и библиотека. обычно в исходных кодах. и обычно в документации описан протокол передачи данных (например, тут. см. стр 5 внизу: http://www.micropik.com/PDF/dht11.pdf). и тут мы внезапно обнаруживаем, что эти темы так или иначе входят в вузовскую программу.
_> Хотя бы для понимания, зачем нужны три состояния для вывода микроконтроллера,
вы имеете ввиду уровни pull up, pull down, pull none? как раз микроконтроллер позволяет сделать наоборот и посмотреть, что из этого получится. не вижу проблемы. и это всяко проще чем объяснить как подключить 8x8x8 куб из светодиодов к микроконтроллеру у которого не 512 выходов, а _сильно_ меньше. более того, предоставленные сами себе даже девушки предлагали решения, лучшие из которых задействовали всего один или два выхода и потому легко масштабировались. были и предложения задействовать более одноно микроконтроллера и это тоже масштабировалось. и это предлагали девушки, которым давалось на размышление минут тридцать.
_> что такое дребезг контактов и как с ним бороться и т.п.
дребез контактов демонстрируется в живую. и может быть основной генератора случайный чисел. и тут же показываем что бороться можно программным или аппаратным путем. студенты это не лоси. если они не могут считать нажатия кнопки, то какой-нидь производственный процесс вообще не смогут контролировать. не всем же сайты клепать. кстати, даже счетчик посещений сайта удивительно похож (схематически) на обрабтку дребезка контактов. разве нет?
_> Поэтому логично начинать с курса цифровой схемотехники и азов аналоговой.
азы аналоговой и цифровой проходят в любом вузе (в той или иной степени).
_> PS. Мы все еще об обучении программированию?
да. не сравнивайте программирование которое было лет 20 — 30 назад с программированием, которое преподают сейчас. жизнь изменилась. нас окружает большое количество устройств с микроконтроллерами на бору. все больше и больше технологических процессов контролируются микоконтроллерами. кто же должен их программировать, да?
уже сегодня студенты программируют _еду_. это не шутка. 3Д принтером никого не удивишь. уже появились принтеры для печати еды за штуку баксов. это, конечно, не микроконтроллеры, но...
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Здравствуйте, Sharov, Вы писали:
S>>>Процессор и там и тут, ISA может быть даже совпадает, но производительность мягко говоря отличается. SK>>заведи ардуины на 3 ГГц и сравни.
S>Ок, ну если заводить на ардуине на 3 ГГц тогда да, разницы никакой, согласен. S>Но обычно-то, на сколько я знаю, на микроконтроллерах процессоры поскромнее (хотя бы из соображений энергопотребления).
но это ты угрожал мне сравнением, так что давай. обнажи кремний..
там дело совсем в другом. не только и не столько в гигагерцах. гигагерцы дают некоторый, незначительный, прирост скорости. но и только. энергопотребление тоже, вторичный, побочный эффект. совсем не этого добивались. но "так тоже хорошо вышло"
М>>>я так и читаю в качесвте факультатива в нашем колхозе. только не на старших курсах. не уверен, что у людей после этого появляется понимание как работает эвм, но вот мотивация появляется точно. и у нас совместно появляются идеи в стиле: а что есть майку на спине усеять множеством микроскопических светодиодов и отображать на ней рекламу, скажем? E>>А интересно, сколько планируется платить владельцу такой майки, чтоб он ее носил? Ибо я вообще не могу понять мотивацию того, кто согласится надеть такую майку. М>реклама это шутка, конечно. там можно выводить что угодно. выглядит необычно и человек в такой майке сразу же привлекает внимание.
Интерфейсы датчиков, мигание светодиодами и управление моторчиками с помощью ШИМ — это все прикладная область. К программированию как таковому это все перпендикулярно.
Я, кажется, понял твой посыл. Сделать так, чтобы студентам было интересно. Моргать светодиодами — это так няшно, а абстрактные типы данных — фу, скукота.
Вот только студенты вузов — это не школьники уже, их завлекать в программирование не надо (разумеется, если они не косят от армии, а целенаправленно поступали на специальность). В программировании микроконтроллеров немалая часть работы — это изучение даташитов. Зачем вводить лишние сущности, внося кашу в учебную программу? Ардуинки, сразу скажу, оставьте школьникам и кружкам юных техников, специалистов на них обучать не надо — получаются в результате "морские свинки".
PS. Микроконтроллеры вместе с их архитектурой и програмированием вполне себе изучаются на спецкурсах. К тому времени, когда база в программировании у студента уже есть. Кому это интересно, могут и соответсвующую тему курсача получить.
Здравствуйте, мыщъх, Вы писали:
М>потому что писюк совершенно непригоден для начинающих программистов. температуру, влажность, давление мерять не может. GPS модуль теоритически к нему можно подключить, но взаимодействие с ним выходит за рамки курса начинающего бойца и бойчихи. не говоря уже о том, что МК может мигать _кубом_ из светодиодов и создавать трехмерную реальность без очков.
Это твои личные интересы. Мне всегда казалось скучным зажигать лампочки на дисководе и переключать Num Lock. Изменять температуру влажно и давление можно, но что с ней делать дальше? Быстро надоедает. А простое управление уже выходит из рамок чистого программирования, тут надо знать операторы Лапласа и прочее ТАУ. Лично с моими предпочтениями у меня сразу возникает тупик. Нет, конечно можно начать реализовывать свою операционную систему, что я однажды делал на Delphi, но тут что комп, что МК...
Но лично мне всегда было интересно писать логические игры, решать сложные задачи. Например, бота для игры в шашки. Или какой-то компилятор/интерпретатор. Или еще что. И тут очень хорошо иметь под рукой файловую систему, чтобы писать логи. Плюс интерактивное взаимодействие с программой. Мне кажется, что для этого все-таки лучше подходит ПК. Преобразовывать байты в принципе все равно где. Но хотя бы libc был бы очень кстати. Может еще что для графики...