LINUX.ORG.RU

Как начать программировать под микроконтроллеры?

 ,


3

2

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

Ну первый вопрос, а собственно что можно сделать( или где можно почитать про это). И второй, а как? Что для этого нужно? В материнке есть COM порт. Где брать МК (живу в довольно небольшом городе и не думаю что найду в магазине такое.)

А если смотреть в область обычной электроники, какие транзисторы и конденсаторы(или что может ещё понадобится?) стоит купить? Денег пока не очень много, порядка 500 рублей на все.

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


Ну без МК и обвеса ты ничего собственно не сделаешь, но попробуй начать с программатора, детали для него (кроме преобразователя уровней max232) ты найдёшь в старом телевизоре. Твоя задача сейчас найти нужных размеров текстолит, выпилить, распечатать (по ссылке ниже) печатную плату из программы SPrintLayout на лазерном принтере на обычной бумаги, используя технологию ЛУТ изготовить печатку и собрать программатор. http://www.qrz.ru/schemes/contribute/constr/extra-pic/

И вообще лор не лучшее место для обсуждения подобного, заходи в irc: rusnet #science.

anonymous
()
Ответ на: комментарий от quickquest

Человек кремневой расчлененки хочет, а ты ему ардуину. Читай топик, программировать он уже осилил, хочет потроха собрать сам. На транзисторах конечно перебор, но на логике пособирать можно. :)

anonymous
()

Я бы посоветовал начинать с MSP430. Простая система команд, богатая периферия. С сайта TI можно заказать Launchpad на MSP, стоит 5 баксов, с двумя контроллерами и USB программатором. Для освоения работы с МК нормальный вариант.

Daeloce
()

Имею хороший опыт в программирование(С++)

Забудь про микроконтроллеры, чтобы под них программировать, нужно не уметь программировать вообще, только так.

anonymous
()
Ответ на: комментарий от anonymous

Ты нихрена не знаешь о программирование. Программист должен уметь строить алгоритмы, разбираться в построении автоматов и операционных систем. Инструмент программисту не важен, иначе он обычный кодер.

anonymous
()
Ответ на: комментарий от quickquest

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

anonymous
()
Ответ на: комментарий от sdio

«куплю зеркалку — стану фотографом», «куплю скальпель — стану нейрохирургом».

«Куплю книжку по Java — стану богач-о-о-м».

anonymous
()
Ответ на: комментарий от prischeyadro

Я уже ощутил прелести российского образования, второй курс... А хотел узнать что меня ждет конкретно по моей специальности. Например, материнские платы, видеокарты и их программирование? Какой яп осиливать? В универе преподают vba (о ужас), сам осваиваю питон, в школе был небольшой опыт с паскалем.

Sparx ★★
()
Ответ на: комментарий от Sparx

Учи математику и фундаментальные основы. Читай Вирта и Кормена. Остальное все частности, освоишь не напрягаясь.

anonymous
()
Ответ на: комментарий от Aswed

О, провинциальная профурсетка опять баттхертит?

anonymous
()
Ответ на: комментарий от Sparx

Микропроцессорный комплект серии КР580 тебя ждёт. Анон выше дал правильный совет - старайся осилить матан, теорвер, ТАУ, ТОЭ и прочее фундаментальное, это самое ценное, что в институте дадут. Из языков учи Си, он нужен везде, где есть хоть какое-то отношение к железу.

prischeyadro ★★★☆☆
()
Ответ на: комментарий от Sparx

Чистый. Всё остальное - уже после. Хотя там лучше смотреть в сторону VHDL и Verilog.

Ассемблер изучить чтобы понять, как работает процессор, после чего никогда его не использовать, особенно не использовать в реальных проектах (если ты не пишешь библиотеку или компилятор, конечно)

Да, из фундаментального ещё отдельно выделю ТФКП, т.к. это вся теория цепей и сигналов, ТАУ, ЦОС, ТОЭ, хоть это и не так очевидно сначала.

Это если тебе интересна электроника. Если тебе интересно стать программистом, то тут мои советы, конечно, нерелевантны.

prischeyadro ★★★☆☆
()
Последнее исправление: prischeyadro (всего исправлений: 1)
Ответ на: комментарий от mentalmenza

Я, конечно, сам впервые его буду проходить, но судя по описанию, по тому, что планируют использовать ТАУ и моделирование в Matlab - должна быть годнота.

И ещё, кстати, всем рекомендую почитать пост одного из юзеров Курсэры для вдохновения и мотивации.

prischeyadro ★★★☆☆
()
Ответ на: комментарий от knotri

Можно сделать программатор на ftdi для avr и он не будет требовать ещё одного программатора, или взять любой usb<->uart (собрать cвой на cp21xx) и начать с stm32. Использовать jtag с самого начала не рекомендую.

amaora ★★
()
Ответ на: комментарий от Deleted

На ком порт avr-pg1b можно спаять. В интернете есть схема.

shamaz
()
Ответ на: комментарий от knotri

Что это за погромирование такое без английского?

shamaz
()
Ответ на: комментарий от anonymous

Sébastien Drouyer· 5 months ago

Hi there,

I am an ex-student of this course (I participated in the first instance about two years ago and received a 100% statement of accomplishment), and just passed by to say thanks for this amazing course.

Indeed, this course introduced me to the field and really captivated me. At the end, it allowed me to participate to various contests, and the new knowledge I acquired during the course really changed everything.

On April 2013, Nasa launched the Robonaut Challenge. Nasa has developed a Robot – the Robonaut – they want to send to the International Space Station in order to replace astronauts on some tasks. Take a look at the video for more details:

http://www.youtube.com/watch?feature=player_embedded&v=g3u48T4Vx7k

One feature is that Robonaut can operate on a task board, by changing the state of some switches / buttons. The contest objective was to implement the vision part of this feature ; detecting the position and states of switches, buttons and leds.

Take a look at the full contest subjects:

http://www.topcoder.com/iss/robonaut/

http://community.topcoder.com/longcontest/?module=ViewProblemStatement&rd...

Below is one sample image where the algorithm had to detect switches, buttons, and leds.

image

The taskboard to be processed had always the same configuration.

image
I heavily used what I learned from this course :

I used PCA and Neural Network to detect the type and state of objects.
I also used linear regressions for some extruded areas.
I applied some precious advices ; for instance, I implemented an interface which allowed me to easily label the pictures in order to improve my data. I also optimised the detection using image segmentation, instead of having a window scanning the whole picture.
I basically used the exercises materials for training my algorithm. I did some changes though; I implemented a script which allowed me to fully use the processor and to multiply the learning rate by a factor of 3. I also created scripts which allowed me to export the data to C++, the language used for this contest.

Of courses, I used techniques I didn't learn from this course such as homography or image segmentation ; but an important part comes from Andrew's course.

Below is the general process of my algorithm:

image

To summarise my approach, I first searched on the pictures screws and leds (I called Secondary Objects) because they were very easily separated by the image segmentation process. Using these secondary objects coordinates, I used homography to evaluate the position and orientation of the taskboard and to deduce switches and buttons positions (Primary Objects). Then I only had to recognise their state, and to synchronise results for images coming from the left / right eye.

Here is a sample result:

image

At the end of the contest, I finished on the 2nd place over 1190 registered participants. However, Nasa decided to extend the contest for one more week. During this week, I mostly optimised my algorithm, and I finished 1st!

http://www.topcoder.com/iss/robonaut/winners/

My algorithm has a 89% success rate. If it wasn't for this course – and Coursera – I would never have succeeded so well. This course have improved the life of astronauts on the International Space Station :).

This course had also a great impact on my life. I bet it will have the same impact on other students.

Thanks again for this amazing Machine Learning course! And thanks for Coursera, this revolutionary website!

prischeyadro ★★★☆☆
()
Ответ на: комментарий от prischeyadro

Збс. Надо бы заботать курс.

anonymous
()

рекомендую для начала попробовать это

http://www.falstad.com/circuit_ru/

если математика норм, то электроника без особых проблем пойдет

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.