реклама на сайте
подробности

 
 
> Embedded C++.
Jenya7
сообщение May 22 2016, 06:49
Сообщение #1


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Я хочу выучить С++ под ембедед. Подскажите какие нибудь он лайн курсы или другой материал. Хотелось бы также посмотреть готовые проекты на С++ чтоб прочувствовать все аспекты.
Go to the top of the page
 
+Quote Post
3 страниц V   1 2 3 >  
Start new topic
Ответов (1 - 14)
Onkel
сообщение May 22 2016, 09:11
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 708
Регистрация: 8-05-11
Из: Чг
Пользователь №: 64 861



Цитата(Jenya7 @ May 22 2016, 09:49) *
Я хочу выучить С++ под ембедед. Подскажите какие нибудь он лайн курсы или другой материал. Хотелось бы также посмотреть готовые проекты на С++ чтоб прочувствовать все аспекты.

easyelectronics
Go to the top of the page
 
+Quote Post
Jenya7
сообщение May 22 2016, 09:58
Сообщение #3


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Цитата(Onkel @ May 22 2016, 15:11) *
easyelectronics

спасибо. там действительно хорошие статьи по С++. плохо что в разброс.
Go to the top of the page
 
+Quote Post
Slash
сообщение May 23 2016, 00:01
Сообщение #4


Местный
***

Группа: Участник
Сообщений: 202
Регистрация: 10-04-05
Из: Санкт-Петербург
Пользователь №: 4 011



Цитата(Jenya7 @ May 22 2016, 10:49) *
Я хочу выучить С++ под ембедед. Подскажите какие нибудь он лайн курсы или другой материал. Хотелось бы также посмотреть готовые проекты на С++ чтоб прочувствовать все аспекты.

С++ в embedded обычный, поэтому изучайте по любой книге. Специфика embedded в ограниченности ресурсов, поэтому нужно отчетливо понимать "сколько стоит" та или иная языковая конструкция.
К примеру, RTTI - тяжелая вещь, ее не применяют в первую очередь (хотя можно, если хочется).
https://vk.com/wall-112797241_4
https://vk.com/wall-112797241_104?w=away-112797241_104
https://vk.com/wall-112797241_147
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение May 23 2016, 04:26
Сообщение #5


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(Slash @ May 23 2016, 03:01) *
С++ в embedded обычный, поэтому изучайте по любой книге. Специфика embedded в ограниченности ресурсов, поэтому нужно отчетливо понимать "сколько стоит" та или иная языковая конструкция.
К примеру, RTTI - тяжелая вещь, ее не применяют в первую очередь (хотя можно, если хочется).
https://vk.com/wall-112797241_4
https://vk.com/wall-112797241_104?w=away-112797241_104
https://vk.com/wall-112797241_147


Надо же!
И сколько же стоит?

Столько ссылок и все ни о чем.
Это не embedded.

Go to the top of the page
 
+Quote Post
Jenya7
сообщение May 23 2016, 06:44
Сообщение #6


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Погуглив я обнаружил что нет нормальных обучалок по С++ именно под микроконтролеры. Так чтоб объяснили с азов и именно под микроконтролеры. Скачал пару проектов сижу разбираюсь на примерах. Не факт что эти примеры являются образцом.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение May 23 2016, 07:12
Сообщение #7


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



QUOTE (Jenya7 @ May 23 2016, 09:44) *
нет нормальных обучалок по С++ именно под микроконтролеры.
И чернил для второго класса тоже не выпускают...


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
k155la3
сообщение May 23 2016, 07:38
Сообщение #8


Профессионал
*****

Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848



Цитата(Jenya7 @ May 23 2016, 09:44) *
Погуглив я обнаружил что нет нормальных обучалок по С++ именно под микроконтролеры. Так чтоб объяснили с азов и именно под микроконтролеры. Скачал пару проектов сижу разбираюсь на примерах. Не факт что эти примеры являются образцом.


Если Вы знаете как использовать базовый С (без привязки на контроллеры), и знаете-умеете использовать C++
т.е. анализ задачи, разбивку ее на объекты, их иерархию и все подобное, то курсы Вам (как-бы) не нужны.
Если этой базы у Вас нет, то курсы мало помогут. Разве что курсы по ООП.

Особенность контроллеров - мало ресурсов (оперативная память, память программ).
Соотв-но, основное отличие программирования с OOP под PC от embeded - ХОРОШО-ОПТИМАЛЬНО
продуманная-спроектированная структура данных и методов их обработки.





Цитата(Jenya7 @ May 22 2016, 09:49) *
Я хочу выучить С++ под ембедед. Подскажите какие нибудь он лайн курсы или другой материал. Хотелось бы также посмотреть готовые проекты на С++ чтоб прочувствовать все аспекты.


PS
Чтобы прочуствовать.
Возьмите простую задачу отрисовки простых граф. объектов, и действий с ними (движение, вращение, модификация формы)
И попробуйте реализоваь эту задачу на С и на C++

Go to the top of the page
 
+Quote Post
AlexandrY
сообщение May 23 2016, 08:17
Сообщение #9


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050




Цитата(k155la3 @ May 23 2016, 10:38) *
Соотв-но, основное отличие программирования с OOP под PC от embeded - ХОРОШО-ОПТИМАЛЬНО
продуманная-спроектированная структура данных и методов их обработки.


Это наивное заблуждение.
Люди обычно не сидят и не продумывают.
А кодят. А потом переписывают. Это рефакторинг, он самое главное. Только так и можно что-то написать.
Поэтому С++ здесь идёт стороной, и потому никто практичных примеров для embedded на C++ показать и не может.


Цитата(k155la3 @ May 23 2016, 10:38) *
Возьмите простую задачу отрисовки простых граф. объектов, и действий с ними (движение, вращение, модификация формы)
И попробуйте реализоваь эту задачу на С и на C++


Ну так и почувствуйте. Возьмите uC/GUI написанную на чистейшем C и переведите ее на C++.
Или операционку вроде FreeRTOS и покажите что там даст C++.
biggrin.gif

Ничего не даст абсолютно кроме тормозов.
Go to the top of the page
 
+Quote Post
Jenya7
сообщение May 23 2016, 08:29
Сообщение #10


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Я давно пишу на С. Я также пишу на С# так что знаком с ООП. Мне нужен конкретный,толковый туториал по которому можно начать писать под ембедед. Именно со спецификой ембедед. И такого я еще не нашел к сожалению.
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение May 23 2016, 08:56
Сообщение #11


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(Jenya7 @ May 23 2016, 11:29) *
Я давно пишу на С. Я также пишу на С# так что знаком с ООП. Мне нужен конкретный,толковый туториал по которому можно начать писать под ембедед. Именно со спецификой ембедед. И такого я еще не нашел к сожалению.


Ставьте компилятор IAR и там в хелпе найдете кое-что. Еще есть статьи у IAR как правильно применять embedded С++.
Но пожалейте свое время, пользы от C++ в embedded ноль.
Лучше уж портируйте .NET micro framework и продолжайте писать на C# для микроконтроллеров.
Go to the top of the page
 
+Quote Post
Jenya7
сообщение May 23 2016, 09:01
Сообщение #12


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Цитата(AlexandrY @ May 23 2016, 14:56) *
Ставьте компилятор IAR и там в хелпе найдете кое-что. Еще есть статьи у IAR как правильно применять embedded С++.
Но пожалейте свое время, пользы от C++ в embedded ноль.
Лучше уж портируйте .NET micro framework и продолжайте писать на C# для микроконтроллеров.

я с вами согласен на 120%. но это не мои требования. есть пару проектов которые по дикому желанию заказчика должны быть написаны на С++. что я могу поделать.
Go to the top of the page
 
+Quote Post
CrimsonPig
сообщение May 23 2016, 09:09
Сообщение #13


Местный
***

Группа: Участник
Сообщений: 329
Регистрация: 23-04-14
Пользователь №: 81 502



Цитата(AlexandrY @ May 23 2016, 09:17) *
Это наивное заблуждение.
Люди обычно не сидят и не продумывают.
А кодят. А потом переписывают. Это рефакторинг, он самое главное. Только так и можно что-то написать.
Поэтому С++ здесь идёт стороной, и потому никто практичных примеров для embedded на C++ показать и не может.
Ну так и почувствуйте. Возьмите uC/GUI написанную на чистейшем C и переведите ее на C++.
Или операционку вроде FreeRTOS и покажите что там даст C++.
Ничего не даст абсолютно кроме тормозов.


Я таки извиняюсь, Ваше Великолепие.... Можно я вставлю свои 2 пенса ? Это ничего, что самая распространенная на планете Земля операционка (на свое время) Symbian OS была полностью написана на С++, включая драйвера и realtime kernel (EKA2) ? Да, С++ в ядре и драйверах был искуственно ограничен, в юзере более-менее нормален...
Решение спорное, но тем не менее так было.
Насчет симбиановского гуя: как правило, каждая компания, лицензировавшая ОС писала свой гуй с сопутствующими глюками и тормозами..
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение May 23 2016, 10:08
Сообщение #14


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Есть хорошие бесплатные курсы по C++ на https://www.coursera.org/
Лично проходил. Понравилось, что обучают последним версиям языка и очень много дают шаблонного программирования и использования stl.
Курс назывался C++ для Си программистов.


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение May 23 2016, 10:20
Сообщение #15


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(Jenya7 @ May 23 2016, 12:01) *
я с вами согласен на 120%. но это не мои требования. есть пару проектов которые по дикому желанию заказчика должны быть написаны на С++. что я могу поделать.


Ну так переименуйте файлы .c в .cpp и делов-то.
Вон даже Mentor в своей операционке Nucleus Plus так делать не стесняется.
И в Symbian так наверняка было сделано.

Go to the top of the page
 
+Quote Post

3 страниц V   1 2 3 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd August 2025 - 03:38
Рейтинг@Mail.ru


Страница сгенерированна за 0.01485 секунд с 7
ELECTRONIX ©2004-2016