Jump to content

    

Помогите выбрать МК для учебных целей ВУЗа

Recommended Posts

barabek

Преамбула. Сейчас на кафедре моего ВУЗа лабораторные по микропроцессорной технике выполняются на базе УМК (как на фото). Кто не знает, это древние аппараты выполненные на процессорах 8080. С втычными платами расширения. С вводом микропрограммы в виде машинных кодов с клавиатуры вручную. Конечно же, для понимания сущности микропроцессоров/микроконтроллеров весьма наглядные устройства. Но.

1. Стендам около 30 лет и обслуживать их становится все сложнее и сложнее.

2. В настоящее время написание программ, отладка и заливка программы в целевое устройство, мягко говоря отличается от описанного.

Нужно базу менять. Количество деньг на это дело очень ограниченно. Решено собрать (или купить готовые) платы с установленным МК и какой-то переферией типа светодиодов, потенциометров и тд. и тп., это уже детали. А вот с выбором МК у нас разгорелись споры. Коллега предлагает выбрать для этого что-нибудь из вариантов 51-го контроллера от Atmel, с внутрисхемным программированием. Плюсы. 1 - 51 ядро имеет кучу литературы, даже на русском языке. 2 - после сброса не нужно настраивать порты ввода-вывода.

Я против этого выбора. Мои доводы против. Нет внутрисхемного отладчика. Сами камни уж сильно "бородатые". Я не против 51-го, но хотелось бы что-нибудь посовременнее. Но, например, МК от silabs сложноваты в первоначальной настройке. Что бы тем же светодиодом помигать нужно сделать побольше усилий. И вообще мне больше импонируют сейчас stm8. Доставабельны, дешевы. Т.е. если что студент может купить плату отладочную и тут же применить свои знания в какой-либо поделке "для дома, для семьи".

Может коллективный разум что-нибудь посоветует другое или добавит "голосов" в одину из наших копилок?

post-29831-1428894599_thumb.jpg

Share this post


Link to post
Share on other sites

vovanse

По мне так STM32, по ним сейчас большое количество информации в интернете. Средства отладки к ним дешевле чем к Atmel - достаточно сравнить стоимость AVR Jtag и st-link v2, существенное различие. Так же много плат discovery, с бюджетной стоимостью, которые уже содержат в себе отладчик/программатор кнопку да пару светодиодов + еще что-нибудь... Взять что-то вроде STM32VLDISCOVERY и устанавливать ее в свои платы - с кнопками, светодиодами и т.п. Если есть сложности с первоначальной настройкой - поможет STM32Cube. А 51 ядро - прошлый век. Понятно, где-то и оно в самый раз, но обучать ему - смысл? Да и, например, в телефоне у студента ARM установлен... Вероятность того, что пригодится знание ARM архитектуры намного выше.

Share this post


Link to post
Share on other sites

barabek
По мне так STM32..

Заманчиво. У меня была такая мысль. Ядро у всех производителей одинаково. Сред разработки много. Цена низкая. Все хорошо. Но сложноваты, как мне кажется, для первоначального изучения студентами. Причем необходимо ориентироваться на сферического среднего студента и на ограниченное время, выделенное для лабораторных работ. Кортекс все-таки для более продвинутых. Иначе можно спугнуть.

Share this post


Link to post
Share on other sites

vovanse

Да нет там ничего сложного :) STM32Cube генерирует готовый код для запуска, или самим сделать шаблон, который студенты будут использовать. Сделать подпрограммы/библиотеку для своих плат. Студенту остается писать программу на С и вызывать уже написанные "LedOn", "LedOff", "GetKey"

 

В сети огромное количество всевозможных проектов на STM32. Как когда-то все творчество делалось на Atmel, так сейчас на STM32. Т.к. за те же деньги, а то и дешевле, можно купить намного превосходящий по характеристикам процессор.

Share this post


Link to post
Share on other sites

RabidRabbit
Да нет там ничего сложного :) STM32Cube генерирует готовый код для запуска, или самим сделать шаблон, который студенты будут использовать. Сделать подпрограммы/библиотеку для своих плат. Студенту остается писать программу на С и вызывать уже написанные "LedOn", "LedOff", "GetKey"

Студенты должны понимать, как отдельные команды работают, как влияют на флаги, за сколько тактов команда исполняется, научиться понимать документацию.

А пользуясь Вашей методикой, это будут "курсы программистов", после которых человек спрашивает: "я вызвал функцию HAL_bla-bla-bla() для настройки режимов выводов, а они не настраиваются, мир рушится, что делать-то????"

Share this post


Link to post
Share on other sites

vovanse
Студенты должны понимать..

 

 

Это я так, для примера. Есть готовый шаблон, для запуска и настройки учебной платы, а уж какое задание дадут, писать на ассемблере и самому переключать пины или на С и пользоваться библиотеками это дело преподавателя.

 

P.S. Коллега преподает в местном политехе. Рассказывал, на первом курсе студенты доучивают математику и русский язык (пишут с ошибками). Некоторые на четвертом курсе по слогам читают "термокаталитический датчик". Родителей вызывают в ВУЗ - родительские собрания, как в школе. С кем-то папа ходит на зачеты. Понятно, не все такие, но большинство. Так что даже курсы программистов могут оказаться неподъемными.

Share this post


Link to post
Share on other sites

scifi
И вообще мне больше импонируют сейчас stm8.

Мне тоже нравится STM8. В первую очередь потому, что на него сразу ложится Си без всяких костылей и примочек, в отличие от 8051 или AVR. К тому же эти МК значительно проще, чем тот же STM32. Так что мой голос - "за".

Share this post


Link to post
Share on other sites

_4afc_

Стенды с 8080 существуют В ВУЗе не сами по себе. А для проведения практических работ. После теоретических. Т.е. существует курс лекций по 8080 где долго и нудно объясняют архитектуру, систему команд и адресацию...

Поверьте, и 10 лет назад изучение 8080 было абсурдом. Но под этот абсурд подведена научная теория, что на его примере легче осваивать другие процессоры. Все понимают, что это - как учить латынь вместо английского, но в ЛЭТИ до сих пор изучают Паскаль вместо Си!

 

Т.е. вам надо не только выбрать МК, но и написать курс лекций под этот МК. А затем ваш курс лекций должен заменить курс лекций по 8080. Это должно утвердить руководство ВУЗа и всякие акредитующие ВУЗ организации...

 

Кроме того, всё ПО, JTAGи и платы с МК должны быть приобретены легальным путём с соответствующими его подтверждающими документами.

 

Ещё одна проблема - сами студенты. Это всего лишь 18 летние дети. Они не смогут освоить современный МК за семестр, приходя раз в неделю на лекцию.

 

Изучать программирование АРМа на ассемблере несколько странно - в реальной жизни под него в 99,9% пишут на Си - а это другая кафедра.

 

Если вы обучите 51 или PIC - есть реальная опасность, что человек найдёт потом работу и всю жизнь будет мигать светодиодами на ассемблере.

 

 

Мне кажется, что реальную пользу принесло бы не зажигание светодиода, а работа с периферией, какой-нибудь ШИМ регулятор с контролем результата через АЦП и управлением по RS232 на мелкой мало потребляющей AVR.

 

Share this post


Link to post
Share on other sites

scifi
Поверьте, и 10 лет назад изучение 8080 было абсурдом. Но под этот абсурд подведена научная теория...

Научная теория :-) Помню, как на военной кафедре полковник излагал биты из заголовка пакета TCP, причём с очень гордым видом :-)

Все эти "теории" с лёгкостью заменяются парой кратких курсов "для чайников", скачанных из интернета. То, что наши ВУЗы остались где-то в каменном веке - беда, конечно.

Share this post


Link to post
Share on other sites

Советую вот эту плату STM32F4DISCOVERY. К ней также можно подключить кнопки, индикаторы и её возможностей хватит Вам и на будущее.

Share this post


Link to post
Share on other sites

becopt

Стенды - это хорошо. А еще очень хорошо когда есть симулятор-отладчик в IDE и моделька в протеусе: выше правильно сказали, студент должен понимать что происходит по каким инструкциям. Да и ядро поэтому стоит брать как можно проще.

Share this post


Link to post
Share on other sites

krux
STM32. Заманчиво. Но сложноваты, как мне кажется, для первоначального изучения студентами.

нельзя научится плавать, барахтаясь в тазике.

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

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.