Перейти к содержанию
    

Освоение микроконтроллеров

По опыту работы со студентами: AVR или 51 как первый микроконтроллер - в течение курсового осваивается самостоятельно...
Вот здесь большой вопрос. Что полезнее студентам. Уже устаревший микроконтроллер или какой нить воодный курс по нескольким архитектурам процов с элементами ассемблера. То что "осваивается" - быдлокодерство чистой воды. Остается вопрос что же дает ВУЗ? :)

 

ARM7 - с трудом и большим объемом помощи от преподавателя...

Для того преподаватель то и нужен... Но вообще тоже непонятно. Вы им что всю периферию даете какого-то конкретного поца?

 

TMS320C6416 - безнадега.

Так понятное дело...

 

Причина - в количестве подробностей, которые нужно понять, учесть и сопрячь.

Обычно природа такой причины в преподавателе. Физика, математика и химия тоже неисчерпаемы в разнообразии своих проявлений. Но у одного получается за 10 лекций подготовить студентов так как у другого не получится за 256...

 

Чтобы написать "Hello Led" и поморгать ножкой, приходится изучить всю модель процессора, понять ее, понять, как залить ее через кабель, какие биты поставить для режима загрузки и запуска, куда класть код и данные, т.е. как прописать linker description file и т.д..

Модель процессора приходится изучать по-любому. Иначе вообще что это за предмет? Заливка, конфигурация линкера(боже да там многие вообще понимают что это?) для новичка вещи второстепенные. И если у преподавателя распайка шнура заливки и архитектура проца уравновешивают чашу весов, то это только характеризует его как бездарь. Человек не способен выделять частное и фундаментальное, а пытается чему-то научить... А по-поводу кода и данных - вообще не догнал :( ...

 

Конечно, обычно есть работающие примеры. Но это немногим лучше. Студент на автомате компилирует, прошивает - работает. Потом пишет свою программу - и все, опять проблемы. Не работает.

Ну завтра он придет на работу(хотя кому я вру :) ) и все повторится снова. Только имя хоть какой-то опыт преодолеть трудности много легче...

 

P.S.: кстати, когда-то бродил по своей местной локальной сети - а она огромная, и там натыкался на курсовые и дипломы. В каком-то киевском техникуме изучают ARM'ы, а когда этот чел поступил во ВТУЗ - там сдавал x51. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По опыту работы со студентами: AVR или 51 как первый микроконтроллер - в течение курсового осваивается самостоятельно, ARM7 - с трудом и большим объемом помощи от преподавателя, TMS320C6416 - безнадега.

 

Причина - в количестве подробностей, которые нужно понять, учесть и сопрячь. Чтобы написать "Hello Led" и поморгать ножкой, приходится изучить всю модель процессора, понять ее, понять, как залить ее через кабель, какие биты поставить для режима загрузки и запуска, куда класть код и данные, т.е. как прописать linker description file и т.д..

 

Конечно, обычно есть работающие примеры. Но это немногим лучше. Студент на автомате компилирует, прошивает - работает. Потом пишет свою программу - и все, опять проблемы. Не работает.

 

Очень убедительно.

Сделаю так: сначала погоняю AVR в протеусе, потом перейду на ARM (для него есть железяка)...

 

(на всё про всё есть год)

 

кстати читал в одной известной книге по встраиваемым системам: "Для освоившего х51 освоение любого проца - тривиальная задача"

Изменено пользователем Zelepuk

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Модель процессора приходится изучать по-любому. Иначе вообще что это за предмет? Заливка, конфигурация линкера(боже да там многие вообще понимают что это?) для новичка вещи второстепенные. И если у преподавателя распайка шнура заливки и архитектура проца уравновешивают чашу весов, то это только характеризует его как бездарь. Человек не способен выделять частное и фундаментальное, а пытается чему-то научить... А по-поводу кода и данных - вообще не догнал :( ...

 

Ну завтра он придет на работу(хотя кому я вру :) ) и все повторится снова. Только имя хоть какой-то опыт преодолеть трудности много легче...

 

P.S.: кстати, когда-то бродил по своей местной локальной сети - а она огромная, и там натыкался на курсовые и дипломы. В каком-то киевском техникуме изучают ARM'ы, а когда этот чел поступил во ВТУЗ - там сдавал x51. :)

Дабы не скатываться на философские и психологические аспекты преподавания замечу: обучить надо того студента, какой есть. Ну да, Hello World - это быдлокодерство. А вы хотите, чтобы в первой же программе я их заставил проверять все статусы ошибок? Запускать все под ОС с драйверами, не написав ни одного обработчика прерывания? Все постепенно.

 

Если студент не может в течение недели запустить простейшую программу потому, что он поставил не тот бит в конфигурации какого-либо режима, это его невероятно демотивирует. И тут конфигурация бит, определяющих режим загрузки и карту памяти и конфигурация линкера заслоняют собой архитектуру проца начисто (как и матан с химией).

 

Поэтому наезд по поводу частного и фундаментального оставляю на Вашей совести. Вообще, у Вас что-то многовато неявных и необоснованных наездов в этом посте.

 

Что фундаментального в архитектуре процессора, если уж говорить серьезно? Возможность дать пару определений RISC/CISC и и.д., которые зачеркнет развитие технологии? Если человек не понимает, кому и какие преимущества дает та или иная особенность в архитектуре процессора, так лучше бы он этого вообще не знал.

 

P.S. Заметьте, я изначально говорил о курсовом, а это как раз предполагает в значительной степени самостоятельное освоение студентом используемой модели процессора по документации. Поэтому, конечно, никто "всю" периферию не читает.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

"Для освоившего х51 освоение любого проца - тривиальная задача"

Да ну?!

А мужики-то не знают...©

:)

 

Это примерно как брякнуть, что перебравшему "копейку" от и до любой "мерс" нипочём.

Это мелочи, что там даже стеклоподъёмник и омыватель фар CAN-ом управляется, всё тривиально...

 

Если студент не может в течение недели запустить простейшую программу потому, что он поставил не тот бит в конфигурации какого-либо режима, это его невероятно демотивирует. И тут конфигурация бит, определяющих режим загрузки и карту памяти и конфигурация линкера заслоняют собой архитектуру проца начисто (как и матан с химией).

Трудно не согласиться.

Насчёт демотивации.

Да и не только студент, даже я могу в тоску впасть, если неделю бьюсь лбом об одну и ту же стену.

Но вот если дать толковую методичку - возможны варианты.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Но вот если дать толковую методичку - возможны варианты.

А вот тут-то как раз я считаю, что всю жизнь по методичке не проживешь и надо учиться читать документацию. Пусть с документации на что-то простое. Кроме того, чем будет эта методичка - переводом документации и заметок по применению на русский? Пусть осваивают технический английский.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 Вообще, у Вас что-то многовато неявных и необоснованных наездов в этом посте. 

+1 :)

 

По поводу сути вопроса. Действительно лучше начать с чего попроще. 51 или AVR без разницы. По поводу "бронзового века" - тоже не согласен. Сейчас 51 у того же silabs весьма не плохи. 

 

 

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По поводу "бронзового века" - тоже не согласен. Сейчас 51 у того же silabs весьма не плохи. 

Вот их бы я с удовольствием попробовал.

Особенно доставляет кросс-матрица ног и качественные сигма-дельта АЦП 16-24р в некоторых моделях

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сделаю так: сначала погоняю AVR в протеусе, потом перейду на ARM (для него есть железяка)...

Я не работал с Протеусом и не знаю его возможностей, но в выборе между симулятором (если я правильно понимаю) простого проца и железкой под несколько более сложный... не уверен, что бы я выбрал.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кстати, про Силабс, у некоторых линеек (12х серия например) есть аппаратный МАС 16х16 бит с аккумулятором на 40 бит. В последней версии Кейловского компиллятора есть поддержка для этой штуковины.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кстати, про Силабс, у некоторых линеек (12х серия например) есть аппаратный МАС 16х16 бит с аккумулятором на 40 бит. В последней версии Кейловского компиллятора есть поддержка для этой штуковины.

 

Интересно сколько MMACs выдают эти контроллеры?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мак адреса штука хорошая конечно... но я имел ввиду другое. Есть БигМАк а есть МегаМак. Ну будерброд большой такой!)))

Не могу не парировать Друида)))

 

Конечно я о такой характеристика как Миллион операций умножения с накоплением с секунду! На что способен Силабс 12х серии в этом плане?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мак адреса штука хорошая конечно... но я имел ввиду другое. Есть БигМАк а есть МегаМак. Ну будерброд большой такой!)))

Не могу не парировать Друида)))

 

Конечно я о такой характеристика как Миллион операций умножения с накоплением с секунду! На что способен Силабс 12х серии в этом плане?

Пока Вы намереваетесь заняться изучением МК, не заморачивайтесь этими цифрами. Они и позже мало о чём скажут.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Цитирую

 

fontp:

 

С точностью туда-сюда в 2-4 раза в обе стороны количество маков в секунду соответствует тактовой частоте процессора. Поскольку у нас есть такие приборы, что и 4 мака на такт процессора делают, с одной стороны.

Обычно 2, если стараться. Если не стараться или процессор устаревший, то 1. Один - этот точно.

 

конец цитаты

 

Силабс обещает 100 мипсов для своих контроллеров 12x, стало быть 100 MMAC/s от них можно ждать???

 

Тогда это очень круто!

 

Я мне в итоге надо принимать данные от 16-разрядного (ну на крайняк 13) АЦП и реализовывать алгоритмы ЦОС в реальном авремени.

Так один из алгоритмов по подсчётам требует 10 MMAC/s c 16-ти разрядными числами.

Неужели Силабовские х51 контроллеры с этим справяться?

Изменено пользователем Zelepuk

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...