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

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

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

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

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

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

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

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

post-29831-1428894599_thumb.jpg

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


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

Я тоже за stm8, а еще лучше за stm32. Купить какую-нибудь из плат discovery для работы.

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


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

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

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


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

По мне так STM32..

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

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


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

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

 

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

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


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

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

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

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

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


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

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

 

 

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

 

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

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


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

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

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

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


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

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

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

 

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

 

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

 

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

 

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

 

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

 

 

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

 

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


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

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

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

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

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


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

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

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


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

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

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


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

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

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

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

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


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

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

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

Гость
Ответить в этой теме...

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

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

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

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

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

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