Первый робот в школьной масерской.

Эдуард Анисимов

★★★★★★✩
23 Сен 2019
2,416
976
58
Марий-Эл
Получим очень инженеров на выходе. . Ну просто очень плохих.
Если не будут развиваться дальше, а будут сидеть на ардуине.
На ардуине можно то же достичь высот. Но настоящим программистом при этом не стать.
Что бы стать программистом, нужно знать внутреннюю структуру микроконтроллера. Если не будешь этого знать так и останешься ардуинщиком и посредственным программистом.
 
  • Лойс +1
Реакции: PiratFox

PiratFox

★★★★★✩✩
13 Фев 2020
1,706
474

Эдуард Анисимов

★★★★★★✩
23 Сен 2019
2,416
976
58
Марий-Эл
@PiratFox, Инженер системотехник. Компьютерные системы, схемы, сети.
Обучен разрабатывать схемы на микропроцессорах, микроконтроллерах и логике. Писать на них программы на любых ассемблерах и языках высокого уровня. (штук 7). Изучаю любую систему за полгода-год.
Образование Советское и частично капиталистическое.
Только это нахрен никому не нужно.
 
  • Лойс +1
Реакции: poty

PiratFox

★★★★★✩✩
13 Фев 2020
1,706
474
инженеров готовят в вузах
это как кривая вывезет. За деньги сейчас можно всё. Вы что, не знаете левых ВУЗов? Да их полно! И что, диплом купить нельзя? Да бросьте Вы! Только тут жеж один фактор имеет место быть. Диплом купить можно, а вот мозги никак!
 

poty

★★★★★★✩
19 Фев 2020
3,237
942
А я вот считаю, что аргументы, типа, "нет нормальных библиотек" и говорят как раз о том, что современные программисты (якобы профессионалы) - нифига не разбираются во внутреннем устройстве. Типичная отговорка программиста: вот эта библиотека (фреймворк, API, драйвер...) не работает, всё, кранты! Кодеры, не более того!
Непонятно, почему возникло мнение, что в среде Ардуино нельзя полноценно использовать все внутренние возможности? Вот Алекс, пусть я и не могу согласиться с его стилем программирования, взял и написал библиотеки, которые ему были нужны, в частности - управление прерываниями. В простейшем скетче часов - прямое управление регистрами микропроцессора. В среде Ардуино. Так что здесь не инструмент важен, а тот, кто им пользуется.
 
  • Лойс +1
Реакции: bort707 и Nikanor

PiratFox

★★★★★✩✩
13 Фев 2020
1,706
474
@poty, это Вы, батенька того... Перегибаете. По Вашей логике, если у меня есть ключ на 17, а мне нужен на 19, так я что, растачивать его должен? Не проще ли поменять ключ? Это я про инструменты.
 

Nikanor

★★✩✩✩✩✩
1 Окт 2020
178
51
@poty, это Вы, батенька того... Перегибаете. По Вашей логике, если у меня есть ключ на 17, а мне нужен на 19, так я что, растачивать его должен? Не проще ли поменять ключ? Это я про инструменты.
это Вы, батенька того... Перегибаете.
если я делаю проект в ардуино иде и мне хватает мозгов атмеги328 и работает зашибись, то я должен чувствовать себя ущербным и страдать, что не изучил и не использовал кейлы фсякие и стмы?
да ну его нафиг.
Это я про ардуино.
 

Nikanor

★★✩✩✩✩✩
1 Окт 2020
178
51
Вот Алекс, пусть я и не могу согласиться с его стилем программирования, взял и написал библиотеки, которые ему были нужны, в частности - управление прерываниями. В простейшем скетче часов - прямое управление регистрами микропроцессора. В среде Ардуино.
это давно уже реализовали другие товарищи, тот же киберлиб.
 

bort707

★★★★★★✩
21 Сен 2020
3,064
912
Непонятно, почему возникло мнение, что в среде Ардуино нельзя полноценно использовать все внутренние возможности?
....
здесь не инструмент важен, а тот, кто им пользуется.
полностью согласен. Никто не мешает в Ардуино ИДЕ работать с регистрами и таймерами. вставлять ассемблерные вставки...
Например, тот же аддон Ардуино для СТМ - позволяет вообще писать весь код работы с периферией через CMsis и HAL. Вот вам код(не мой) мигалки светодиодом через таймеры и ДМА:
C++:
uint32_t ledstate[2] ={1<<29, 1<<13};
void setup() {
pinMode (PC13,OUTPUT);
RCC->AHB1ENR |=1<<22;// dma2 clock enable
RCC->APB2ENR |= 1;// tim1 clock enable
TIM1->DIER=(1<<8); //тактировать DMA при событии: Update timer
TIM1->PSC=8400; //поделить тактовую на..
TIM1->ARR=10000;// и ещё раз на 10 тыщ (период 1 секунда)
TIM1->CR1=1; //запуск таймера
DMA2_Stream5->CR= (6<<25)|(10<<11)|(1<<10)|(1<<8)|(1<<6);//Ch:6,WORD,MINC,CIRC,Mem2per
DMA2_Stream5->PAR= (uint32_t)&(GPIOC->BSRR);//управлять регистром BSRR
DMA2_Stream5->M0AR=(uint32_t)ledstate;
DMA2_Stream5->NDTR=2; DMA2_Stream5->CR|= 1;//запуск DMA
}

void loop() {}
покажите в нем хоть одну директиву ардуино, кроме pinMode() :)

Вообще, по моим наблюдениям, гордое заявление на форуме "ардуино отстой. я пишу в Атмел студио" - обычно выдает махрового чайника. Грамотный программист напротив, может написать красивую и быструю программу в любой среде.

Возвращаюсь к теме ветки - для начинающих удобнее стартовать с Ардуино. Главное в программировании - научится алгоритмически мыслить, использовать базовые структуры. А регистры МК - это, вообще, второстепенно. Сегодня человек пишет для АВР. завтра для СТМ, а через 10 лет в тренде будет совсем иная архитектура. Конечно, в изучении регистров тоже есть своя польза, но упиратся в это не стоит. Имея базу - переучится не проблема. Знание ЯВУ и базовых алгоритмов куда важнее.
 
Изменено:
  • Лойс +1
Реакции: Nikanor

Midarusa

✩✩✩✩✩✩✩
8 Дек 2020
2
0
Замечательное желание. Я не первый день знаком с ардуино, но новичок можно сказать в железе. Программист. И такая затея меня ставит в тупик.
1) Робот должен здороваться. Значит нужен какой то громкоговоритель + то , что будет на него говорить. Допустим mp3 плеер от DF. На карту можно записать фразы и по номеру их взывать. Но говорить он же должен не просто так, а когда допустим кто то подходит.
2) Значит нужен например 2датчик расстояния типа HC-SR04. Как составить карту расстояний у Гайвеар есть отличное видео в уроках.
3) Чтобы крутить головой ( ну еще и махать крыльями ) значит нужны сервы. 3 минимум и не SG90, а луче что то по мощнее. Ведь сова будет куклой ?
4) Если говорить о времени , то DS3231 - модуль часов.
5) Горсть светодиодов для глаз. Или пара адресных , что бы цвет глаз менять можно было.
6) Модуль микрофона , пусть если слышит что то пытается головой туда посмотреть. О! Сова крутит головой на 360 градусов, сервой можно не обойтись. Или сделать редуктор.

Я бы советовал взять меГу про, она маленькая, но объемная.

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

Старик Похабыч

★★★★★★★
14 Авг 2019
4,266
1,303
Москва
Про комплексные Алекс Гайвер сделал хороший обзор, не поленитесь , поищите и посмотрите. Выбор зависит от многого. Я себе бы не взял, даже изначально, т.к. есть такие вещи, которые мне совсем не интересны. Для школы.. Ну может быть и не один, что бы дети сидели по 2 человека, а не 10 смотрели как один провода втыкает. Это Вам решать.
Инструменты мультиметр, кусачки, паяльник ++ , может обжимка проводов , может еще что.
 
  • Лойс +1
Реакции: Midarusa

PiratFox

★★★★★✩✩
13 Фев 2020
1,706
474
если я делаю проект в ардуино иде и мне хватает мозгов атмеги328 и работает зашибись, то я должен чувствовать себя ущербным и страдать, что не изучил и не использовал кейлы фсякие и стмы?
Соглашусь с Вами в том, что если задача не требует высокой производительности, то и нефиг мощные контроллеры юзать. А изучать или нет кейлы и стмы - так это дело Ваше.
 
  • Лойс +1
Реакции: Nikanor