|
|
|
Языки программирования для контроллеров, микроконтроллеров и пр.26.03.2013, 21:11. Показов 8040. Ответов 47
Метки нет (Все метки)
Извините за нубский вопрос: а собственно на каком языке можно программировать например ПЛИС, и какие среды разработки, для этого существуют или подходят? если ответ уже где-то есть, можете удалить тему, показав мне где это. Просто интересно, а книжки все сразу перечитывать некогда.
0
|
|
| 26.03.2013, 21:11 | |
|
Ответы с готовыми решениями:
47
Языки программирования для контроллеров
Настройка QT Creator для программирования микроконтроллеров |
|
Почетный модератор
|
|
| 26.03.2013, 21:15 | |
|
1
|
|
|
|
|
| 26.03.2013, 21:28 [ТС] | |
|
спасибо. я смотрел эту закреплённую тему. дело в том, что каждый разработчик свои среды расширяет с каждым годом, дополняя их функциями, а каждая книга становится менее актуальной, касательно некоторых вопросов. по этому и тема.
0
|
|
|
|
||||||
| 26.03.2013, 23:39 | ||||||
Под МК: CVAVR, ICC AVR, Proteus, Altium, PureBasic, МикроПаскаль, МикроСи, MPLab, WinAVR, CoIDE, Ecllipse, Visual Studio с плагином под ардуину и т.д...
Коллекция исходников по алгоритмам и ссылок по работе с интерфейсами в МК https://www.cyberforum.ru/elec... 26610.html Темы по просьбам ТС не закрываются и не удаляются.
1
|
||||||
|
|
|
| 27.03.2013, 07:44 [ТС] | |
|
вот интересное видео, и там куча ещё прилагается по этой же тематике https://www.youtube.com/watch?v=xXX-QtCkrDw
0
|
|
|
|
||
| 27.03.2013, 08:34 | ||
1
|
||
|
10 / 10 / 7
Регистрация: 05.12.2013
Сообщений: 42
|
|
| 26.04.2014, 14:03 | |
|
Я задался вопросом что лучше для простого программирования МК С++ или СИ.
Под простым я имею ввиду программирование на начальном уровне.
0
|
|
|
|
|
| 26.04.2014, 14:56 | |
|
Лучше не язык, а понимание работы железяки, ознакомление с даташитом. Язык может быть любой, почти.
Языки программирования для контроллеров, микроконтроллеров и пр. Builder C++ и контроллер Ардуино p.s.: будете холиварить, выплюну тему в холивары.
1
|
|
|
62 / 187 / 31
Регистрация: 14.02.2013
Сообщений: 1,696
|
|
| 27.04.2014, 00:17 | |
|
Скажем если человек изучает и знает C++ и вдруг начал изучать программирования для МК то конечно ему будет проще на C++ писать для МК.
0
|
|
|
1280 / 1185 / 175
Регистрация: 02.12.2013
Сообщений: 4,883
|
|
| 28.04.2014, 10:29 | |
|
Холиварный такой вопросик
![]() >>Скажем если человек изучает и знает C++ и вдруг начал изучать программирования для МК то конечно ему будет проще на C++ писать для МК Не будет проще! Но С++ позволяет писать в стиле чистого СИ. ИМХО: C++ с точки зрения возможностей конечно более продвинутый чем чистый СИ, но все эти возможности реализованы за счет увеличения размера исполняемого кода и уменьшением производительности. Для современных PC это не актуально, в вот в МК может быть решающим фактором. Но не всё так плохо, если понимать какие вещи в С++ не дают сильного увлечения размера и уменьшение производительности исполняемого кода.
0
|
|
|
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
|
||
| 28.04.2014, 12:15 | ||
. А то ведь действительно дла PIC10F200 с ее 384-мя байтам flash (256 слов). на Си++ как-то програмить будет избыточно. А если речь идет о кортексах М4 и т.д. - то тогда Си будет явно маловато.ЗЫ: а какие вы видите различия между Си и Си++? ООП?
0
|
||
|
10 / 10 / 7
Регистрация: 05.12.2013
Сообщений: 42
|
|
| 28.04.2014, 13:41 | |
|
Я хотел узнать какой язык лучше для новичка. Для начального изучения программирования МК. Из всего выше сказанного я понял что: СИ лучше для новичка так как он легкий и в нем нет много заумного. А программировать МК на С++ лучше для более сложных проектов.
А ООП тут роли не играет. ООП необходимо при прокладном программирование и не нужно при системном.
0
|
|
|
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
|
|
| 28.04.2014, 19:34 | |
|
ну да. А еще практически все SDK написаны на трушном Си. Си++ встречается в более продвинутых темнологиях, начиная с серьезных ОСей типа линухи. Даже относительно простые [ОС] ThreadX, RTX, free/safeRTOS и всякие программно-аппаратные "обертки" OSAL для очень разных платформ написаны как правило на сях. Если кто-то знает другое- поправьте меня, плиз.
1
|
|
|
zzzZZZ...
527 / 358 / 94
Регистрация: 11.09.2013
Сообщений: 2,041
|
||
| 29.04.2014, 14:55 | ||
|
1
|
||
|
0 / 0 / 0
Регистрация: 17.05.2014
Сообщений: 5
|
|
| 17.05.2014, 14:46 | |
|
Доброго времени суток! Прошу помощи в следующем вопросе. Заранее извиняюсь за рваное изложение.
Перехожу от простого Си к C++ для embeded на микроконтроллерах без выскоуровневых операционок (только RTOS). Поскольку за плечами только опыт работы на процедурном Си, то турдновато в плане в плане мировозрения и проектирования структуры программы. Тут то и прошу совета: каким образом должна быть устроена программа? Я после прочтения книжек по С++ имею представления как писать ГУИ с окнами и сайты, но вот как быть в реалтайм системе пока не совсем догоняю, каким образом подбирать классы и объекты? Я себе это вижу так: в программе будет один единственный объект создаваемый статически в главном файле (то есть простым объявлением, чтобы не связываться с динамическим выделением памяти). Этот объект будет экземпляром класса, который будет наследовать множество дургих классов, таких скажем как классы стеков протоколов связи, классы с алгоритмами обработки данных, классы с драйверами периферии и т.д. Так , например, пусть мне надо собирать данные с датчиков, подключенных к шине CAN к моему устройству по протоколу CanOpen, обрабатывать эти данные и передавать скажем по GPRS открывая соединение с телнет сервером. В программе я создаю несколько классов: класс мастера протокола CANopen, он будет наследовать класс драйвера CAN, который будет уже привязан к железу; класс\сборщик данных с тензодатчиков, наследующий свойства класса протокола CANopen (раз уж датчики подключены к этой шине); класс тензодатчиков будет наследовать уже верхний класс приложения, которое по определенному алгоритму будет считывать эти данные, этот же класс будет наследовать класс для работы с GPRS модемом. Экземпляр этого то класса и будет создаваться в main() и он будет запускать в работу всё приложение. У меня нет идей как быть с прерываниями, как их обработчики закладывать в классы драйверов? Как все это дело привязвать к RTOS? Вообщем буду очень признателен за любые комментарии по теме. Правда сразу хочу оговориться: Зачем это надо и надо ли вообще - крайне не хотелось бы обсуждать, ибо разговоры на эту тему набили аскомину. Выслушивать, что мол динамическое выделение памяти и микроконтроллеры вещь, приводящая к болезням излечимыми анальными свечками тоже избежать бы.
0
|
|
|
0 / 0 / 0
Регистрация: 17.05.2014
Сообщений: 5
|
|
| 18.05.2014, 12:07 | |
|
Есть, сейчас почти все компиляторы под arm (keil, iar, eclipse, avr) поддерживают С++. RTOS здесь вообще ни при чем.
0
|
|
|
71 / 45 / 24
Регистрация: 11.05.2014
Сообщений: 179
|
|
| 18.05.2014, 12:26 | |
|
Знаете, когда-то программировал на голом C от Keil разные контроллеры и чего только не реализовывал в плане структур данных, прерываний и проч. Вам зачем именно C++ на контроллерах?? Хотите связываться со всеми прелестями интенсивной работы с памятью из-за примочек C++?? Не боитесь, что всякими темплэйтами и прочим потеряете в производительности? IMHO, C++ хорош на своем месте - это всякие RADы и встроенные интерфейсы, но чтобы CAN на C++ - зачем??
0
|
|
|
1280 / 1185 / 175
Регистрация: 02.12.2013
Сообщений: 4,883
|
||||||
| 18.05.2014, 12:48 | ||||||
|
Ну зачем так категорично. Уже писал здесь на форуме, что если знать/понимать как С++ транслирует свои навороты в асм, то С++ даже очень удобен. Тот же CAN будет выглядеть в коде более удобно.
0
|
||||||
| 18.05.2014, 12:48 | |
|
Помогаю со студенческими работами здесь
20
Какой язык выбрать для программирования микроконтроллеров Ассемблеры для программирования микроконтроллеров, 8-битных микропроцессоров Графический язык ДРАКОН для программирования микроконтроллеров Языки программирования для хака Какие книги, статьи и материалы необходимо изучить для программирования микроконтроллеров Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536
Одним из. . .
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 19.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|