Здесь принимаются все самые невообразимые вопросы... Главное - не стесняйтесь. Поверьте, у нас поначалу вопросы были еще глупее :)
Ответить

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 10:07:49

Это оно да?
https://www.microchip.com/en-us/develop ... 28pb-xmini
Так а что такое аппаратный отладчик не пойму. Программный дебаггер понятно, в коде ошибки ищет.
А аппаратный дебаггер на борту что это такое? Светодиодами при ошибках моргает или что?

Ещё раз https://www.youtube.com/watch?v=2MQVKHMn7vw
Многие переходят уже на С++ при программировании МК, так как возможности МК повышаются.

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 10:17:42

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

С++ контроллеру ничего не даёт и возможностей его не повышает, но упрощает написание сложных программ (т.е. он нужен не компьютеру, а программисту)

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 11:01:13

С++ контроллеру ничего не даёт и возможностей его не повышает, но упрощает написание сложных программ (т.е. он нужен не компьютеру, а программисту)

Я имел в виду что С++ больше весит наверное чем С. Но современные МК это могут осилить.
Конечно мне хочется как проще и современнее.
Но parovoZZ писал что SDK на С++ для МК нет.

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 11:39:40

всё зависит от того, что ты хочешь делать контроллером...

если реализуешь простую логику (мк-тини13, 2313 и подобные), то можно до ассемблера спуститься (рекомендую АлгоритмБилдер) как более простой в освоении инструмент (по отношению к ассемблеру) - очень поможет понять как работает МК.

Если задача посложнее и по сложности в тини не влезет, но в аккурат для небольших мег - используй С, (я пишу в кодевижене - у него есть свои плюсы, но рекомендовать я его не могу т.к. есть и минусы, которые перетягивают всё сильнее и неожиданнее :shock: ) сначала хотел перейти на "студию", но теперь думаю, что приближаться к плюсам буду уже на СТМ32... (того что сейчас умею - для для решения имеющихся под АВР задач мне достаточно).

для более сложных задач (работа с разнообразной периферией, графическими дисплеями) наверно лучше подойдёт С++, т.к. код получается стройнее, и хоть результирующая прошивка получается объёмней, но применяемые в этом случае более мощные МК её потянут. (пример - Марлин (прошивка для 3д принтера) написан на С++ в среде ардуино...)
на С++ может стоит посмотреть в сторону PlatformIO (сам я с ней не работал)...

ПС: деления условные, знаю людей, работающих с ЖК экранами из под ассемблера...
ПС2: за видос спасибо - какраз сейчас смотрю.

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 11:45:36

Программный дебаггер понятно, в коде ошибки ищет.

Ошибки в коде ищут тестировщики. Универсальные программные средства, которые бы искали ошибки в коде, мне не известны. Но есть стандарты написания кода, которые призваны минимизировать вероятность появления таких ошибок. Самый известный это MISRA.

Многие переходят

никогда не понимал людей, которые на основании мнения одного единстенного индивидуума делают выводы по всей отрасли.

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 13:08:57

Я пытаюсь смотреть в будущее. Потому что не только лишь все могут это делать, вернее смотреть могут, но не все могут это делать(С)
Ассемблер компактнее С, но сейчас уже мало кто на нём программирует, видимо дело не в компактоности.

Добавлено after 3 minutes 8 seconds:
Этот имели в виду, который с сенсорами на борту? https://www.digikey.com/en/products/det ... LD/2770519
Хотя я только дисплей вижу там.
Может внешние сенсоры подключаются.

Добавлено after 19 minutes 57 seconds:
Это самый навороченный наверное?
Хотя 2011 гор, навряд ли.
https://youtu.be/sHC_-knCpqc

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 13:12:36

Если только начинаешь работать с МК - начинай с простых задач.
Если хочешь хорошо понимать что происходит у МК внутри - нужно поработать и с языком низкого уровня.
по крайней мере если код на ЯВУ заработает не так, как ожидаешь - то всегда сможешь глянуть АСМ листинг проблемного куска...

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 13:17:55

Можно начать изучение AVR 1-серии. Они гораздо интереснее (хотя бы из-за того, что ОЗУ, флеш, EEPROM находятся в едином адресном пространстве), но литературы по ним очень мало.

А, это как раз про что parovoZZ писал.
Это https://www.youtube.com/watch?v=UthOiIxp2mY называется AVR XMEGA-A1

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 13:23:02

Нет, ATXMega - совершенно другая линейка.
Прежде, чем смотереть в будущее, необходимо изучить элементарные вещи.

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 13:40:08

ATXMega мне не подойдёт? Там всё вроде бы есть что нужно.
https://www.youtube.com/watch?v=EJ-6T3Kugt8

Добавлено after 4 minutes 42 seconds:
https://aliexpress.ru/item/400010178234 ... 0266231985

Добавлено after 8 minutes 33 seconds:
Здесь тоже язык С использует? https://youtu.be/UwI9OkNNen0

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 14:27:12

Прежде, чем задавать вопросы подойдёт/не подойдёт, я бы начал с изучения литературы по теме.
На том же ютубе можно поискать лекции Артамонова ну или других авторов. Только именно лекции (или записи конференций), а не тупых дуринщиков, которые сами не вывозят предмет.

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 14:54:07

Основные основы я знаю. Я давным давно на ява скрипте что то писал, но забросил быстро.

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 14:55:51

Я про устройство микроконтроллеров и микропроцессоров. Цель-то, ещё раз повторюсь, какая?

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 15:10:42

Так а что такое аппаратный отладчик не пойму.

Аппаратный дебаггер состоит из ТРЕХ частей.
1. Блок отладки в чипе. Его задача осуществлять управление исполнением кода (старт, стоп, стоп по breakpoint-ам и сканирование памяти), а так же ввод/вывод по интерфейсу отладки (ICSP, SWD, JTAG).
2. Внешний инструмент отладки. Это по сути продвинутый программатор, который способен прошивать МК, а так же пробрасывать данные между софтом на ПК и блоком отладки в чипе.
3. Софт поддерживающий отладку через программатор-отладчик подключенный к МК. Это IDE - интегрированная среда разработки. Обеспечивает визуализацию работы МК, а так же управление процессом. Позволяет видеть содержимое регистров ядра, регистров периферии, ОЗУ и флеша, наблюдать за пошаговым исполнением в исходном программном коде и т.д.. В зависимости от архитектуры МК это возможно в процессе исполнения кода (через SWD и JTAG), но НЕ В РЕАЛЬНОМ ВРЕМЕНИ. Скорость сканирования данных аппаратным отладчиком в МК очень низкая по сравнению с исполнением кода, но медленно изменяющиеся переменные можно достаточно комфортно наблюдать.

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 16:29:14

Артамонов говорит что самые перспективные это Cortex-M.
STM32 кажется принадлежит к Cortex-M4 группе.

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 16:36:26

Там разные есть. Семейство большое, от солидных дядечек до мелкотни.

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 17:05:57

Есть нормальные сборки на cortex? С множеством функций, программатором и что ещё там надо.

Добавлено after 2 minutes 1 second:
cortex заметно дороже arm, печалька.

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 17:15:29

cortex заметно дороже arm, печалька.

Это как сказать, что брюки дороже одежды. :)))
Кортекс - это и есть АРМ. Точнее одно из его семейств.
И нынешние цены на ЛЮБЫЕ МИКРОСХЕМЫ не отражают реальных цен в "мирное" время.
Сначала определитесь С КЛАССОМ РЕШАЕМЫХ ЗАДАЧ. Нет универсальных контроллеров на все случаи жизни.

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 17:36:24

Так что мне надо то. Научиться всему наверное.

Re: С чего начать программировать микроконтроллеры?

Пт авг 13, 2021 17:42:59

Научиться всему

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