Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Микроконтроллеры (MCU) и микропроцессоры (MPU) > Помощь начинающим "с нуля" |
Автор: crazz1 14.8.2007, 11:08 |
Для тех кто очень хочет разобраться, что такое микроконтроллеры и как их использовать, но не знает с чего начать. Предлагаю свою помощь бесплатно. Вы узнаете, что такое микроконтроллер и где они применяются, какие software и hardware инструменты нужны, что такое программатор, что такое архитектура микроконтроллера, где найти нужную документацию и нужные инструменты, как самому собрать программатор, подробное описание схемы и как ее собирать, как начать программировать микроконтроллеры. От вас требуется сильное желание разобраться в теме. Желательно понимание, что такое резистор, диод, транзистор и умение паять. Успевайте, возьму 1-3 человека. Кто заинтересовался, отписывайте здесь. |
Автор: Alexei 15.8.2007, 08:24 |
Меня тревожат смутные сомнения... ![]() |
Автор: Neugierig 19.8.2007, 02:20 |
Здравствуйте, хотелось бы узнать где можно найти ОБЗОРНУЮ информацию по контроллерам и по методам их программирования (опять таки обзорную), дело вот в чём: я программист, писал всегда приложения более высокого уровня, т.е. какая-то железяка куда-то складывает информацию, а моя задача была ее правильно разобрать и разложить в БД, или интерпретировать каким-либо образом чтобы конечные пользователи могли с ней дальше работать, но хотелось бы не замыкаться в своей области, а иметь некоторое представление, что же всё таки внизу делается, (и наконец понять что же все таки за система STEP7 ![]() По образованию, как Вы поняли, я также не железячник, а "чистый" программист, но что касается элементной базы, слов резистор, транзистор, p-n-p переход я не пугаюсь ![]() Спасибо. |
Автор: cardinal 19.8.2007, 03:01 |
Сейчас занимаюсь производством платы под atmega8 (до 8 MHz с внутренним и 16 MHz с внешним кварцем - кварц на плате есть), стоимость при штучной покупке будет около 35 Евро (при оптовой конечно будет дешевле). На плате будет MAX232 и FT232R и все остальное для коммуникации через RS232 и USB. На плате будет 8 LED, которые тоже можно будет использовать по желанию (а можно будет отключить). Все порты выведены на штекеры по краям платы. Где-то с 1 октября планирую начать продажу, но первые платы будут готовы раньше. Эта плата является неплохой точкой начала изучения контроллеров и электроники в целом. Если интересует, свяжитесь со мной и я постараюсь как можно скорее выслать Вам один из первых экземпляров. Так как судя по нику Вы находитесь в Германии, то доставка Вам обойдется в Евро 7. |
Автор: Alexei 19.8.2007, 09:46 |
Это зависит от сложности и кол-ва задач выполняемых контроллером. Если Вы мигаете светодиодом , то думаю нет . А если Вам надо что-то поделать в реальном времени, то да. Я использую что -то отдаленно напоминающее ОС ![]() |
Автор: Alexei 22.8.2007, 09:48 |
Подозреваю, быдите "раскручивать" его сайт! |
Автор: G24_tec 3.9.2007, 04:09 | ||
Как раз для решения данной проблемы я скоро поставлю на продажу одну плату. Всю информацию по ней вы найдете здесь (сайт строиться, но я уже потихоньку добавляю имеющуюся техн. информацию): http://www.g24-tec.com (данное сообщение является рекламой и ее размещение обговорено с администрацией форума) |
Автор: XbiT 15.9.2007, 23:29 | ||
Обзорная есть http://un1tproject.com/index.php?page=articles/pic16/develop_stages.html |
Автор: G24_tec 16.9.2007, 03:49 |
А я могу сообщить об обновлении datasheet'a платы, о которой я говорил. Теперь всю информацию Вы сможете увидеть здесь: http://www.g24-tec.com/counter/counter.php?book=1 |
Автор: Sergio 17.9.2007, 21:00 |
А заинтересовался в теме. Хочу принять участие. Есть инфа по этому делу. Умею паять, программировать(С/С++, Java). Сейчас учу специально для этого - асьму. crazz1, в сколько обойдётся долларов этот мини проект? |
Автор: cardinal 17.9.2007, 21:48 |
Ну вон, например, чуть выше предлагает плату за 39 Евро. Уже как бы рабочая плата, к которой можно черта в ступе подключить (например сворганить маленькую платку для управления моторчиком) и начинать изучение этого дела... |
Автор: Sergio 18.9.2007, 13:58 |
Есть ли какие нибудь эмуляторы микроконтроллеров(програмки которые эмулируют поведение микроконтролеров)? Тоесть, пока я не купил еще програматор и микроконтроллер можна както асемблеровский код проверить на какой-то программе которая эмулирует это дело? Заранее спасибо. |
Автор: Alex1984 18.9.2007, 22:40 |
Можно, протеус, но он не очень и не всегда корректно работает с программой. Не требует лишней обвязки МК и того с чем думаешь работать.. Как по мне, то лучьше на практике, в реале у тебя еще много может гемороя быть с обвязкой, если хочешь с нуля, то тут два пути, или самому ВСЕ собирать и разбиратся, или лучьше купи набор у cardinalа, он тебе поддержку в учебе сможет обеспечить (задай вопрос, что тебе нужно сделать, он тебя возможно обеспечит всем уже готовым для разработки).. да и гемороя на много меньше, сможешь быстрее освоить МК, а потом уже самостоятельно что-то проектировать. |
Автор: Alexei 19.9.2007, 09:00 |
Я бы посоветовал http://algrom.net/russian.html В нем оченьудобный симулятор, Студия -отдыхает! |
Автор: Sergio 19.9.2007, 12:43 |
Alexei, а есть ли какие-то эмуляторы с графическими картинками? Напрмер Вибираеш контроллер, подключаеш к нему светодиод, моторчик(чтобы всё было видно что я спроектировал) |
Автор: Alex1984 20.9.2007, 00:22 | ||
Очень не советую по таким причинам: 1. Сложность реализации больших проектов 2. Не корректность компиляции 3. Не всегда правельно связывает разные блоки программ. В свое время очень намаялся, пока нашел ошибку, на АСМ все работало, а в алгоритм билдере нет.. Лучьше учи Си для МК. Тот же Си, только многое в нем не используется, грубо говоря, тебе понадобится только частрь возможностей Си, потмо подпрограммы легко переносить с одного МК на другой Добавлено через 2 минуты и 2 секунды Sergio, то о чем ты спрашиваешь есть в ПРОТЕУСЕ!!!!! Повторюсь, лучьше всего ручками и на практике отлаживать, так учение на много эффективнее проходит и сразу виден готовый продукт, что тоже радует))))))) |
Автор: Alexei 21.9.2007, 09:13 |
Программ без ошибок не бывает! Глюков хватает и с студии. Следует попробовать и то и др. Си - это осознанная необходимость , надо будет -выучишь. |
Автор: Vadimka 29.11.2007, 00:40 |
Может кто нить дать объяснения как в MPLab`e писать пограммы под PICmicro, у меня стоит 7,42- а вся литератыра которую нашёл описывает поэтапно все действия с нуля как это делать под 4,0. Мне хватит только одно, но очень подробно объяснённого, просто решить пример: Что бы моргало несколько светодиодов именялся алгоритм их мограния нажимая на кнопку/кнопки. Но так что бы это, было объясненно с нуля; только не думайте что я вообще ни чего не понимаю в электронике, и программирование, но просто с этим ни когда не работал и нужен некоторый толчок. Если я смогу разобраться попробовать собрать, то уже будет видно-есть ли смысл мне пытать этим заниматься, или же продолжать работать на микросхемной логике. P.S. не сочтите за наглость, или что то в этом роде. Просто посоветовали ваш портал где отзывчивые и всегда помогаюшие люди. И данное направление очень стемительно развиваеться и шас уже ни кто не использует схемы собраные из кучи микросхем. Поэтому стремлюсь тоже не отставать от времени, может я еще не настолько стар и и все новые технологии смогу постигать в ногу со временем. Очень надеюсь на вашу отзывчивость и помощь. |
Автор: cardinal 29.11.2007, 00:42 |
Первый вопрос: ты сильно привязан к MPLab и PICmicro? |
Автор: Vadimka 29.11.2007, 00:48 |
Ну как сказать, можно сказать что да, потому как по ним я знаю больше всего информации, да и архитектуру считаю их более понятной, да и сама програамма пишеться на языке имеющем синтаксис Ассеблера, что для меня на начальных этапах очень важно, потому как ассемблер знаю очень хорошо, дабы часто писал программы для работы с портами. А с отальными контроллерами как то не особо знаком, знаю немного про Atmel. А про остальные даже проще сказать что незнаю. Мне достаточно делать hex файлы дла МК, в последствии есть чем их записать в МК. |
Автор: cardinal 29.11.2007, 03:17 |
Ну а на Си перейти не хочешь, тогда и ассемблер учить для Atmel'a не надо. Просто по AVR я тебе много могу подсказать, а PIC'и вообще в руках не держал... |
Автор: Vadimka 29.11.2007, 09:00 |
Вопрос какой из С требуеться знать -С (нечто похожее на ассемблер), но с ужастнейщей грамматикой. -С++ -С builder -C# или еще что то? И что за среда разработки, или ато в стандартном можно делать, а потом просто hex файл записывать в контроллер? И где взять информацию по Atmel? P.S. я не очень люблю C и всё ему подобное, поэтому почти не работаю в данной среде разработки, на С начал писать из-за того что когда писал HTML`е сайт, дали Visual Studio, в которой лекго его можно было создавать и сразу же проверять работоспособность. |
Автор: cardinal 29.11.2007, 10:10 |
Нужно знать С. Посмотри в datasheet на Education & Development Board (G24-ATM8) на сайте http://www.g24-tec.com. Там есть ссылки на разную информацию. Тебя интересуют ключевые слова WinAVR и AVR Studio... Я бы пока скачал AVR Studio 4.12 + SP (до Build 4.90 помоему) с http://www.atmel.ru/Software/Software.htm (версия 4.13 у меня постоянно глючит, ее бы не ставил) и поставил WinAVR http://sourceforge.net/project/showfiles.php?group_id=68108 Потом бы повторил кусок схемы из datasheet (см. выше) и закачал бы какую тестовую задачку программатором аля AVR ISP. |
Автор: Lazin 29.11.2007, 14:15 |
C++ то-же не помешает, так как в WinAvr есть компилятор embedded C++ (плюсы с ограничениями, без всяких "тяжелых" возможностей) возможно придется использовать, если тебе нужно будет писать софт который работает с твоим железом |
Автор: xvr 29.11.2007, 15:15 | ||
Во первых, в MPLabe есть примеры (если мне память не изменяет) Во вторых, с последней версией MPLaba в комплекте идет C (HI-TECH lite версия) |
Автор: unicuum 7.12.2007, 03:27 |
А может ну их эти контроллеры? Вот у меня есть образ диска AtmelProducts, разные проги, различные AVR, PonyProg и так далее, но смысл? Этим нужно или заниматься или нет. Наблюдая как юзают программаторы другие люди сделал вывод, микрочип контроллера это навроде процессора только жутко примитивный. Чтобы он работал с реальным миром: 1. Нужно собрать схему. 2. Нужно запрогать прогу и слить её программатором в микросхему, которую нацепить на плату. И что это даёт? Примитивные устройства не идущие ни в какое сравнение с реальным компом. А на производстве легче сразу брать готовые решения. Кстати прогать программаторы не сложно, и язык не имеет значения, надо просто сверяться с доками на что этот программатор способен. Ну а в электронике я не больно то разбираюсь, впрочем как показывает практика для проганья реальных устройств это даже и не нужно. |
Автор: cardinal 7.12.2007, 03:35 |
А они всегда есть? Для проганья устройств как раз познания электроники очень даже не помешают, а вот для написания программ для пользователей это да, тут можно и без них обойтись... |
Автор: xvr 7.12.2007, 09:58 | ||||||||||||||||||
А вто у меня тоже есть пара дисков с AutoCAD'ом и ArchiCAD'ом, вот сижу и думаю, то ли самолет забабахать, то ли занятся строительством элитного жилья, это вроде сейчас прибыльно ![]()
Можно этим заниматься проффесионально или в качестве хобби.
Ой, прямо сразу программаторы? Без ассемблеров/С и пр? Прямо в hex кодах и в микропроцессор. Жуть ![]()
микрочип - это фирма такая, Microchip. Производит микроконтроллеры серии PIC. Микроконтроллер - это 'жутко примитивный' процессор + куча периферии. Кто такая периферия я пожалуй объяснять не буду ![]()
Угу, а что бы собрать например приемник, надо набрать детальки, сделать печатную плату, спаять это все, долго настраивать. Или пойти в ближайший ларек и купить готовый за 100р. Однако есть люди, которые предпочитают первый путь.
![]()
А они на деревьях растут, или их в полях вместе с картошкой собирают?
Во, это надо было написать в первой строке поста, остальное не писать вообще ![]()
Поверь людям, которые немного разбираются в электронике, в мире embedded это нужно. В мире компьютеров - действительно не нужно. |
Автор: Lazin 7.12.2007, 11:36 | ||
в магазине покупают, называется PLC, контроллером можно назвать с натяжкой, так как там внутри мощный проц, RTOS, и куча перифирии. Просто берешь и подключаешь эту хрень куда нужно, главное схемку ему правильно нарисовать ![]() правда стоит такая хрень как минимум тысячь 10... |
Автор: unicuum 10.12.2007, 03:37 | ||||||||
Можешь стебаться сколько угодно, я программировал контроллеры, а вот ты думаю нет.
И не нужно, с тобой всё ясно. Если завтра образуется фирма и будет называть себя пивом или булкой, так ты будешь считать что пиво и булка это именно та фирма и есть.
Наверное ты никогда не слышал о разделении труда. Платы собирают квалифицированные инженеры, для программистов есть специальные студии эмулирующие работу контроллера на компьютере в реальном времени. К тому же познания настоящего инженера сильно отличаются от того же школьника с запалом паящего очередную байду. Я не разбираюсь в электронике по сравнению с настоящими специалистами, прошедшими многолетнее обучение и работающими по специальности. Просто у нас разные понятия о знаниях. А общая мысль такова, нет смысла паять свой контроллер, когда продаются зарубежные программируемые устройства в которых уже всё реализовано. Более того, те кто паяют собственные устройства делают это из тех же зарубежных деталей. А в итоге программирование микрочипов имеет место быть, но скорее уж в любительской электронике. Добавлено через 7 минут и 32 секунды
Я бы лучше сказал, что один блок от десяти тысяч, а вся система выходит в десятки тысяч рублей. Но платит же заказчик, к тому же самоделку без той фирмы которая её ставила заменить почти что невозможно или крайне проблематично. Так же есть человеческий фактор, за свою работу люди берут деньги, и чем дольше они работают, тем больше берут. И далеко не всех волнует, сделана работа в итоге или нет. |
Автор: unicuum 10.12.2007, 03:52 | ||
Если тебе действительно интересно, то вот хороший поставщик от разных фирм http://prosoft.ru/. Филиалы есть во многих городах. |
Автор: xvr 10.12.2007, 19:26 | ||||||||||||||||||||||||||||||||
Позволь усомнится, судя по этому
ты их может и 'программировал', но дальше заливки hex'а в м/сх видимо дело не заходило. Что касается меня, то несколько моих поделий до сих пор продается несколькими фирмами.
Ой мама! Microchip - это 'булка и пиво' ![]()
Ты не поверишь - слышал ![]()
Да ну? Это далеко не всегда возможно, и такая эмуляция далеко не всегда полно отражает поведение реального объекта (точнее - почти никогда)
Инициатор этогй темы относился именно к 'школьнику с запалом паящего очередную байду', если бы он был специалистом, он бы это не спрашивал.
Программист и не должен в ней разбираться на высоком проффесиональном уровне, но если он программирует в области embedded - то хоть отчасти он в ней разбираться должен.
Если задача стоит решить какую то проблему из области автоматизации чего-нибудь, то без сомнения надо брать готовое решение, если задача стоит научится делать embedded приложения, то готовое решение не подойдет (если это конечно не evaluation board) Кроме того, embedded решения тоже бывают разные - PLC за несколько $K вполне уместен для управления станком с ЧПУ, но будет смотреться слегка черезчур в качестве домашнего музыкального звонка на входную дверь ![]()
Не души прекрасные порывы - может это его шаги на пути к проффесиональной электронике. Кроме того, 'программирование микрочипов' имеют место быть в девайсах, которые сами стоят на несколько порядков меньше тех же PLC.
Работал я с одной такой - NetLinx контроллер от фирмы AMX, проще застрелиться ![]()
И ставили, и заменяли, и даже ремонтировали (на плате образовалась микротрешина и порвала пару адресных шин между процессором и FLASH - запаяли)
Это уже к электронике отношения не имеет, а если заказчика не волнует, сделают ему работу в конце концов или нет - то это его личные проблемы. Вменяемые заказчики таких 'исполнителей' гонят в шею ![]() А по поводу Прософта я в курсе ![]() ![]() |
Автор: unicuum 11.12.2007, 01:14 |
xvr, мне кажется ты просто более древний чем я, флаг тебе в руки. ![]() |
Автор: GorbunovDiman 5.3.2008, 08:42 |
![]() Хочу написать драйвер на VB6! Можно ли это! ![]() А с радио я дружу! |
Автор: xvr 5.3.2008, 12:36 | ||
Нет. Для драйверов используют C/C++ и специальные тулзы для их сборки. |
Автор: Serjozha 4.5.2008, 19:15 |
привет! если у меня есть гидравлический насос...нужно, чтобы он начинал работу с нажатия кнопки, работал только строго определенный промежуток времени и выключался...внимание, вопрос (очень глупый) : как запрограммировать контроллер с функцией таймера на С++? ![]() ![]() |
Автор: xvr 4.5.2008, 19:28 | ||
Начинать нужно не с этого. Сначала нужно определить:
|
Автор: SERGSERG 8.5.2008, 12:40 |
Если у Вас есть огромное желание научиться программировать AVR и не знаете с чего начать тогда эта страничка для Вас http://www.yourdevice.net/avr.html. Собрана минимально необходимая информация, которую нужно знать для программирования данной серии микроконтроллеров. Кратко описана последовательность изучения. Есть документация, примеры проектов и ссылки на русском языке к популярным программам Proteus, CVAVR, AVRStudio, IAR. Схемы и готовые устройства USB программаторов и USBJTAG отладчиков. |