IPB

Здравствуйте, гость ( Вход | Регистрация )

3 страниц V   1 2 3 >  
Ответить в данную темуНачать новую тему
> Программирование МК., С чего начать?
A.T.Tappman
сообщение 23.8.2010, 7:40
Сообщение #1


ЕРЖ-антисемит
***

Группа: Пользователи
Сообщений: 1900
Регистрация: 24.11.2009
Из: Великий Новгород
Пользователь №: 23



Вобчем, начинайте холивары всяки, а я на ус мотать буду. За какую систему браться с самого начала: AVR or PIC? С какого языка начинать: C or ASM? Какие средства разработки качать (интересует под Ubuntu)? Из каких закромов нужную литературу брать?
Перейти в начало страницы
 
+Цитировать сообщение
Гость_MrYuran_*
сообщение 23.8.2010, 8:06
Сообщение #2





Гости






Цитата(A.T.Tappman @ 23.8.2010, 9:40) *
С какого языка начинать: C or ASM? Какие средства разработки качать (интересует под Ubuntu)? Из каких закромов нужную литературу брать?

Начинать надо с си, параллельно просматривая листинги и изучая ассемблер (хотя бы для того, чтобы просматривать листинги smile.gif )
С прицелом на дальнейший переход на С++. (я уже дорос smile.gif , начинаю переход со следующего проекта)
В чём писать?
Поскольку люди мы честные, пользоваться надо православными тулзами системы GNU со свободной лицензией.
Для AVR - WinAVR (avr-gcc). Насчёт линукса не проверял, возможно есть бинарники (должны быть, проект мощный и даже спонсируется атмелом). Тут вам Паша больше расскажет, наверно.

Из IDE рекомендую либо сразу сесть на эклипс (eclipse.org), если тачка не тормозит, либо на CodeBlocks, как я.
Например, с помощью С::В я двумя щелчками мышки "собрал" демо-проекты GTK+ и WxVidgets. То есть, очень универсальное средство.
Не без изъянов, конечно, но мне нравится.
Эклипс - вообще универсальный напрочь. От Java и php до с++, python, Android и Symbian.
В общем, по уровню Eclipse ~ MSVS, только лучше и бесплатно.
Перейти в начало страницы
 
+Цитировать сообщение
A.T.Tappman
сообщение 23.8.2010, 8:12
Сообщение #3


ЕРЖ-антисемит
***

Группа: Пользователи
Сообщений: 1900
Регистрация: 24.11.2009
Из: Великий Новгород
Пользователь №: 23



Цитата(MrYuran @ 23.8.2010, 8:06) *
если тачка не тормозит

4Гб оперативы, Core 2 Duo Е6600 (2Х1.8 ), Ubuntu 10.04 x64. Эклипс на такой пойдёть?
Причина редактирования: заместо цифры восим какой-то смайлик плюющийся вылез
Перейти в начало страницы
 
+Цитировать сообщение
Гость_MrYuran_*
сообщение 23.8.2010, 8:37
Сообщение #4





Гости






Цитата(A.T.Tappman @ 23.8.2010, 10:12) *
4Гб оперативы, Core 2 Duo Е6600 (2Х1.8 ), Ubuntu 10.04 x64. Эклипс на такой пойдёть?

Со свистом!
Это у меня калькулятор Sempron 2600 / 1G DDR-400, на нём тормозят автоподсказки и прочие мегаполезные функции.
Качать собственно эклипс, плюс CDT (C Development Tools) плюс нужные плагины и тулчейны.
На элхе есть обширная тема по эклипсу, основные спецы - Сергей Борщ и АНТОХА, а по С::В - тема имени меня smile.gif
Перейти в начало страницы
 
+Цитировать сообщение
A.T.Tappman
сообщение 23.8.2010, 8:41
Сообщение #5


ЕРЖ-антисемит
***

Группа: Пользователи
Сообщений: 1900
Регистрация: 24.11.2009
Из: Великий Новгород
Пользователь №: 23



По СВ тут ответил http://sharaga.org/index.php?showtopic=812 Новый если только с сайта производителя как-то качать.
Перейти в начало страницы
 
+Цитировать сообщение
Гость_MrYuran_*
сообщение 23.8.2010, 8:53
Сообщение #6





Гости






Цитата(A.T.Tappman @ 23.8.2010, 10:41) *
По СВ тут ответил http://sharaga.org/index.php?showtopic=812 Новый если только с сайта производителя как-то качать.

Скорее всего, просто источник новый прописать
или вот:
Интересно, а дебиановские пакеты нормально на убунту встают?
Там ещё запарка с WxVidgets - надо крайнюю версию иметь. В общем, разбираться придётся.

С эклипсом проще, но труднее.
Проще установить, потому как на яве, труднее потом разобраться с настройками (их существенно больше).
Но лучше всё-таки сразу идти по правильному пути и качать эклипс. Не для контроллеров, так для другого чего подойдет.
Перейти в начало страницы
 
+Цитировать сообщение
A.T.Tappman
сообщение 23.8.2010, 11:41
Сообщение #7


ЕРЖ-антисемит
***

Группа: Пользователи
Сообщений: 1900
Регистрация: 24.11.2009
Из: Великий Новгород
Пользователь №: 23



Собсна, тема несколько ширее, ибо всё же прихожу к мысли об нужности (хотя бы для себя) кодопейсательства под РС, а конкретно под Linux. Под венду чего-то не хочется, ибо постепенно сползаю с неё.
Перейти в начало страницы
 
+Цитировать сообщение
Student Pupkin
сообщение 26.1.2011, 23:36
Сообщение #8


Активный участник
***

Группа: Пользователи
Сообщений: 133
Регистрация: 24.7.2010
Пользователь №: 185



Еще вот такой вопрос - каков необходимый минимум знаний по программированию для начинающего эмбедера? И из каких книг его почерпнуть? 

Поясню. smile.gif Суть, как мне она видится, в том, что в случае МК - здесь и программирование, и железо. И по идее созревание молодого ума должно проходить при балансе и того и другого - без сильного углубления на начальных этапах в теорию программирования, но и, по возможности, без сильного крена в железо (т.е. по возможности не торопиться лепить абы-какую программу только чтоб заработало побыстрее). Пока во времени я сильно не стеснен.

Просто ни разу не делал сколько-нибудь сложного проекта, поэтому не представляю, какие знания в области программирования чаще всего требуются ымбедерам. smile.gif Сейчас хочу вплотную заняться изучением USB.

Основные алгоритмы - сортировка, поиск, динамические структуры данных, - освещаются практически в любой книге по СИ. Обычно не освещаются - алгоритмы на графах, переборы, управление памятью, вычисление элементарных функций и т.п. ... Где освещаются специфические вопросы для ымбединга - тоже не знаю, кстати (и есть ли такие книги, на русском???) 

Из тырнета по алгоритмам нарыл вот такие книги:

1) Кнут "Исскуство программирования" (само собой smile.gif )

2) Ахо, Хопкрофт, Ульман "Построение и анализ вычислительных алгоритмов"

3) Рейнгольд, Нивергельт, Део "Комбинаторные алгоритмы: теория и практика"

и еще ряд подобных (сборники задач, а также книги с ужасными примерами на СИ - это даже мне видно).

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

Перейти в начало страницы
 
+Цитировать сообщение
stells
сообщение 27.1.2011, 6:34
Сообщение #9


внештатный сотрудник
***

Группа: Пользователи
Сообщений: 1568
Регистрация: 21.11.2009
Из: МО, Медвежьи озера
Пользователь №: 12



Цитата(Student Pupkin @ 27.1.2011, 0:36) *
Или же можно смело садиться и пробовать кодить для МК, попутно осваивая и жлезо, и алгоритмы?

во всех книжках и учебниках по МК сразу приводятся примеры простых схем и программки пишутся для них. это не случайно smile.gif
Перейти в начало страницы
 
+Цитировать сообщение
_pasha
сообщение 27.1.2011, 7:04
Сообщение #10


тот самый
Иконка группы

Группа: Мод
Сообщений: 13629
Регистрация: 24.11.2009
Из: Харьковская обл., UA
Пользователь №: 25



У мну начиналось все чуть ли не с "Радио86-РК" , вернее, с ПК "Специалист", если кто помнит, он выгодно отличался прозрачным доступом к видеопамяти, посему я не советчик.
Intel8080->OS CP/M->ZilogZ80->MCS51->PIC16/Scenix/PIC18->AVR-> pardon.gif и вот я перед Вами. К армоводам себя не причисляю, т.к. без "словаря" писАть на ихнем асме не могу.
ЗЫ понты проколотил, а мысль так и не донес. Студентов очень долго мучали лекциями по архитектурам I8080/8086/8051 и я теперь понял, почему. Просто, никто лучше не смог написать литературу. Помните фразу
Цитата
Все, что недоделали наши отцы - это мы.
- дальше было хуже.
Сташин, Урусов итд
Злобин В.К., Григорьев В.Л. Программирование арифметических операций в микропроцессорах
Вирт Н. Алгоритмы и структуры данных

К современным книгам отношусь с недоверием - хуле их читать, с одной стороны, с другой - слышу ропот, что, мол программы в корявом стиле, концептуальные "подсадки" на конкретный программный продукт итд итп, сам не проверял, это ж усилие нада сделать, время выделить, а зачем, если я не препод?

Ага, забыл отдельное мерси сказать Microchip community - полезные аппликухи почти все. Минимализм из раздела "Design for dollar$" тоже. Тексты программ обычно не читаю, более интересна инженерная интерпретация задач.
Перейти в начало страницы
 
+Цитировать сообщение
Harbinger
сообщение 27.1.2011, 8:34
Сообщение #11


посіпака Хунти
Иконка группы

Группа: Мод
Сообщений: 20016
Регистрация: 21.11.2009
Из: Vinnitsa
Пользователь №: 11



Если не считать "Специалистов" и "Спектрумов" (халтурки на продажу, сильно глубоко не вникал), то начинал как раз с 51 (AT89...). Коллега уволился и оставил несколько недоделанных проектов. Я доделал, понравилось. С тех пор на этих самых 51 и "сижу", но не на атмеле, а на P89LPC9xxx. Экстремально дёшевы и почти не уступают AVR по быстродействию. Только в последнее время им появился явный конкурент - STM8. Заказал вчера несколько штук STM8L151K6T6 и дискавери, надеюсь, через неделю начну развлекаться - генерить несколько сот кГц посредством DDS. smile.gif
Те книжки, что есть - по сути переводы даташитов и аппноутов. И дело не в переводе, просто книжку листать как-то удобнее, чем PDF smile.gif.
Перейти в начало страницы
 
+Цитировать сообщение
_pasha
сообщение 27.1.2011, 8:45
Сообщение #12


тот самый
Иконка группы

Группа: Мод
Сообщений: 13629
Регистрация: 24.11.2009
Из: Харьковская обл., UA
Пользователь №: 25



Отлаживаетесь кейлом?

Блин, вот что задрачивает: мимо прошел весь чухасский дсп. GCC кто-то портировал даже на них, но не выкладывают, сцуки. А ГЦЦ - это сила.
Перейти в начало страницы
 
+Цитировать сообщение
Harbinger
сообщение 27.1.2011, 10:08
Сообщение #13


посіпака Хунти
Иконка группы

Группа: Мод
Сообщений: 20016
Регистрация: 21.11.2009
Из: Vinnitsa
Пользователь №: 11



В Кейле только компилю, отладка - в железе.
Для STM8 поставил "резонанс" с лицензией на 32КБ, для тех мелочей, которыми занимаюсь, хватит с избытком.
Перейти в начало страницы
 
+Цитировать сообщение
Idle
сообщение 27.1.2011, 14:51
Сообщение #14


Активный участник
***

Группа: Пользователи
Сообщений: 1075
Регистрация: 22.11.2009
Пользователь №: 20



Цитата(Student Pupkin @ 27.1.2011, 0:36) *
Основные алгоритмы - сортировка, поиск, динамические структуры данных, - освещаются практически в любой книге по СИ. Обычно не освещаются - алгоритмы на графах, переборы, управление памятью, вычисление элементарных функций и т.п. ... Где освещаются специфические вопросы для ымбединга - тоже не знаю, кстати (и есть ли такие книги, на русском???)
Из тырнета по алгоритмам нарыл вот такие книги:
1) Кнут "Исскуство программирования" (само собой smile.gif )
2) Ахо, Хопкрофт, Ульман "Построение и анализ вычислительных алгоритмов"
3) Рейнгольд, Нивергельт, Део "Комбинаторные алгоритмы: теория и практика"

вот на алгоритмы я вообще начхать хотел, нужны только для собеседования, перед ними собсно и повторяю, а после - не нужны smile.gif потом это всё успешно забывается
Перейти в начало страницы
 
+Цитировать сообщение
Гость_MrYuran_*
сообщение 27.1.2011, 15:23
Сообщение #15





Гости






Цитата(Student Pupkin @ 27.1.2011, 0:36) *
Вопрос в том, что с каждой из этих книг я могу зависнуть минимум на месяц-два, забыв про МК в принципе (с Кнутом - скорее вообще никогда не осилю). Само собой, что постепенно какие-то из них осилить надо. Вопрос - надо ли это изучать в полном объеме на первых порах? Можно ли выделить необходимый минимум? Или же можно смело садиться и пробовать кодить для МК, попутно осваивая и жлезо, и алгоритмы?

Перво-наперво надо брать паяльник, писать хелловорлд и мигать светодиодом.
Когда получится, постепенно усложнять.
Задача-минимум - максимально быстро пройтись по всем граблям, потом за книги.
И тогда уже примерно понимаешь, о чём там пишут.
Типа:
- Точно!
- Блин, я так и думал!
- Ах вот оно что!
- Эх, вот это да, я бы не додумался!
ну итд.
Перейти в начало страницы
 
+Цитировать сообщение
Прохожий
сообщение 27.1.2011, 20:04
Сообщение #16


сундук
***

Группа: Пользователи
Сообщений: 4043
Регистрация: 21.11.2009
Из: Ростов-на Дону
Пользователь №: 15



Цитата(Student Pupkin @ 27.1.2011, 0:36) *
Еще вот такой вопрос - каков необходимый минимум знаний по программированию для начинающего эмбедера? И из каких книг его почерпнуть? 

Любые книги по конечным автоматам для мигания светодиодами и более серьезных алгоритмов.
Так же любая информация о парсерах текстов вплоть до теории трансляторов - для связи Вашего МК с внешним миром.
Про USB пока забудьте. Не забивайте голову ерундой. Это все потом.
Ссылки на вполне приличные книги по PIC-ам я уже давал...
Можете, конечно, начать с ARM-ов. Но там все за бабло.
Можно, конечно, краденное. Но сами понимаете...
А об GCC и Eclipse уже не один начинающий эмбеддер обломал зубы.
Да и симулятора там как не было, так и нет...
А без него, лично мне не очень удобно.
Перейти в начало страницы
 
+Цитировать сообщение
Harbinger
сообщение 27.1.2011, 20:34
Сообщение #17


посіпака Хунти
Иконка группы

Группа: Мод
Сообщений: 20016
Регистрация: 21.11.2009
Из: Vinnitsa
Пользователь №: 11



Цитата(MrYuran @ 27.1.2011, 15:23) *
Перво-наперво надо брать паяльник, писать хелловорлд и мигать светодиодом.

Всякий мной рождённый девайс, выводящий хоть что-то хоть куда-то в текстовом виде, сначала пишет "Hello, Lamer!"
Это чтобы не расслабляться, ну и для проверки интерфейса тоже wink.gif.
Светодиодов там, кстати, 3 штуки, в кадр не влезли. М.б., заметно, что руки, в которые брал паяльник, слегка тряслись. wink.gif
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Перейти в начало страницы
 
+Цитировать сообщение
_pasha
сообщение 27.1.2011, 20:58
Сообщение #18


тот самый
Иконка группы

Группа: Мод
Сообщений: 13629
Регистрация: 24.11.2009
Из: Харьковская обл., UA
Пользователь №: 25



Цитата(Прохожий @ 27.1.2011, 20:04) *
А об GCC и Eclipse уже не один начинающий эмбеддер обломал зубы.
Да и симулятора там как не было, так и нет...

Тю блин, шо там такого(г) сложного? Эклипсом правда не пользуюсь, он мне жвачку напоминает biggrin.gif
Перейти в начало страницы
 
+Цитировать сообщение
Idle
сообщение 27.1.2011, 21:29
Сообщение #19


Активный участник
***

Группа: Пользователи
Сообщений: 1075
Регистрация: 22.11.2009
Пользователь №: 20



не, эклипс нужен
-индексатор - без него нереально, сума сойду, хотя к контроллерам нарно не относится
-рефакторинг
-make targets
-поиск по исходникам там же
-свновский плагин, мержить удобно
нету, нету жизни без эклипсу

Цитата(Harbinger @ 27.1.2011, 21:34) *
Fuck china!

вот это правильно, Е***ь Китай, е***ь!
Перейти в начало страницы
 
+Цитировать сообщение
Прохожий
сообщение 27.1.2011, 21:43
Сообщение #20


сундук
***

Группа: Пользователи
Сообщений: 4043
Регистрация: 21.11.2009
Из: Ростов-на Дону
Пользователь №: 15



Цитата(_pasha @ 27.1.2011, 21:58) *
Тю блин, шо там такого(г) сложного? Эклипсом правда не пользуюсь, он мне жвачку напоминает biggrin.gif

Все...
Слишком много надо изучать всяких ненужностей.
Вместо изучения самого железа МК и его окрестностей.
Не поверите, я сам начинал с перфоленточного ассемблера и такого же редактора для "Электроники 60" (PDP11).
Потом появилась первая операционная система. Все записывалось на 5-ти дюймовых гибких дисках, емкостью аж 256 кБайт.
В редакторе были только большие латинские буквы.
Был Фортран-4 и Ассемблер.
Так же был компоновщик.
Вот тогда, в детстве я повеселился от души, когда связывал между собой модули, написанные на разных языках, на этапе компоновки.
Были огромнейшие файлы для компоновщика, описывающие оверлейную загрузку отдельных модулей, потому как памяти на все было всего 16 кБайт.
А хотелось и АЦП почитать и графики разные построить. В реал-тайме.
Так же были пакетные файлы, создающие некое подобие среды для отладки.
Наелся я этого выше крыши...
Назад в пампасы чего-то не хочется.
Хочу, чтобы можно было открывать окошки и нажимать на иконки.
И никаких лишних текстов, помимо программных модулей.
Перейти в начало страницы
 
+Цитировать сообщение

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

 



Текстовая версия Сейчас: 28.3.2024, 18:52