С чего начать программировать микроконтроллеры?
Хороший учебник по Atmega
Комрады! У меня появился Atmega16. Подскажите базовый интересный учебник по нему, по AVR'у в целом. Чтобы и теория, и примеры... Хотелось бы на C уже писать, но если нормальный учебник и на ассемблере примеры - тоже узучу.
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: С чего начать программировать микроконтроллеры?
Сюда перенёс. Ищите и обрещите.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
-
BeerserkN1
- Родился
- Сообщения: 12
- Зарегистрирован: Вс май 19, 2013 10:00:58
С чего начать изучение миркпропроцессоров
Добрый день! Хочу научиться работать с микропроцессорами, чтобы применять в профессии и в быту. В этом деле я новичок, до этого никогда с микропроцессорами не сталкивался, программировал только на паскале, и то, очень мало. Базовые знания по электронике имеются. Подскажите, с чего стоит начать изучение микропроцессоров, может, есть какая-то специализированная литература, программное обеспечение? Стоит ли приобрести простой микропроцессор и что на нём можно делать в целях обучения?
Начать можно с чтения данной темы, поэтому сюда и перенес.
Все равно ничего нового уже никто не напишет.
aen
Начать можно с чтения данной темы, поэтому сюда и перенес.
Все равно ничего нового уже никто не напишет.
aen
Re: С чего начать изучение миркпропроцессоров
BeerserkN1 писал(а):с чего стоит начать изучение микропроцессоров
и изучения работы системы поиска хотя бы на этом форуме

тематические ответы только в форуме, в приват не пишите
Re: С чего начать изучение миркпропроцессоров
Сейчас это называется микроконтроллерами. Микроконтроллер, в отличии от микропроцессора, уже имеет в своём составе (внутри кристалла) и, собственно микропроцессор, и всё остальное, необходимое для работы. Ну, там, ОЗУ, ПЗУ, Всяческие таймеры, АЦП и энергонезависимую память. То, что раньше делалось на одельной плате со множеством корпусов микросхем, теперь имеется на одном, весьма маленьком, кристалле, внутри одного корпуса.BeerserkN1 писал(а):Хочу научиться работать с микропроцессорами, чтобы применять в профессии и в быту.
Для этого надо:
1. Выбрать семейство микроконтроллеров.
2. Выбрать среду разработки, которая поддерживает то самое семейство.
3. Поиметь программатор, который поддерживается той самой средой разработки. Можно спаять, можно купить готовый.
А дальше, всё просто. Разрабатываете программу в среде разработки, зашиваете её в микроконтроллер с помощю программатора, и наслаждаетесь её работой.
1. Я выбрал семейство AVR от фирмы Atmel.
2. Я выбрал среду разработки CodeVisionAVR. Язык программирования - C
3. Я выбрал программатор STK200/300. Спаял сам.
Возможно, это был не самый лучший выбор. Начал знакомство с микроконтроллера ATtiny13. Получил массу удовольствия. В микроконтроллере всего 8 ног, но сколько возможностей!
Последний раз редактировалось Барсик Вс сен 07, 2014 11:43:05, всего редактировалось 1 раз.
Re: С чего начать изучение миркпропроцессоров
Барсик писал(а):3. Я выбрал программатор STK200/300. Спаял сам.
Ну не все же счастливые обладатели Пентиум-1 с LPT
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: С чего начать изучение миркпропроцессоров
Jack_A писал(а): Ну не все же счастливые обладатели Пентиум-1 с LPT
Не надо. Dual-Core 2.6 GHz с LPT.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
- Mishany
- Электрический кот
- Сообщения: 1031
- Зарегистрирован: Чт июн 20, 2013 00:00:58
- Откуда: москва, м.Сходненская
Re: С чего начать программировать микроконтроллеры?
Я тоже начал освоение с attiny13 и AVR Studio5 и программатором TL866A, за 1 день из полного нуля научился моргать диодами, ни сколько не жалею выбором атмела и ЯВУ(язык высокого уровня) Си. Через полгода написал сам библиотеку для знакосинтезируюших индикаторов мэлт.
Re: С чего начать изучение миркпропроцессоров
Jack_A писал(а):Ну не все же счастливые обладатели Пентиум-1 с LPT
Системник 3ГГц, два ядра, AMD на AM2, 2xCOM, 1xLPT, купил этим летом на стенд, причем дешевле, чем 2 МК с доставкой из ЧипДип. Да еще и ХРюшу в нагрузку подарили.
Барсик Вот правильные ты вопросы перечислил, и спасибо, что сам на них же и ответил. Я лично пока пытаюсь понять, что же собой представляет АВР, что бы выбрать чип с "запасом", потом попытаюсь разобраться, как же его прошивать, чем компилировать проги, и наличие и удобство эмуляторов, и если есть дебагеров. Потом придется делать то же самое с ПИКами. Хотя, что-то у меня уже огромное подозрение, что писать под пики на асме, из-за всего одного регистра, будет очень гиморно. А писать буду только на асме.
Из АВР пока стоит выбор из: ATmega8/ATmega48/ATmega88/ATtiny2313/ATtiny26
Чего-то нет в одном, но есть в другом. Читаю, думаю, а нужно ли мне то, чего нет.
Чего-то я пока не понимаю, хотя все буквы знакомы. Например, в контролере заявлено UART. Где-то на форумах пишут, что его не получится использовать для связи с ПК через КОМ, и даже дают примеры софтверной реализации, другие что UART это совместимая с КОМ приблуда, и байтики гонять получится, хотя и медленно, и желательно с кварцем "некрасивой" частоты.
- Engineer_Keen
- Друг Кота
- Сообщения: 3868
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: С чего начать изучение миркпропроцессоров
MisHel64 писал(а):Например, в контролере заявлено UART. Где-то на форумах пишут, что его не получится использовать для связи с ПК через КОМ
Это где такое пишут?
MisHel64 писал(а):и даже дают примеры софтверной реализации, другие что UART это совместимая с КОМ приблуда
Это практически одно и то же, только логические уровни RS232 и UART разные, проблема решается использованием MAX232 или ее аналога.
MisHel64 писал(а):и байтики гонять получится, хотя и медленно,
Смотря какую скорость получится выставить со стороны ПК. Со стороны МК с этим проблем нет, хоть 2.5Mbps, а вот железо ПК позволяет далеко не все. Из стандартных скоростей 38400 получалось выставить.
MisHel64 писал(а):и желательно с кварцем "некрасивой" частоты.
Можно даже со встроенным RC на 8МГц гонять 38400, но без гарантий

Неправильно собранная из неисправных деталей схема нуждается в отладке и сразу не работает... (С)
Re: С чего начать изучение миркпропроцессоров
После многих лет диалапа не верю, что у ПК проблемы со скоростями выше 38'400. Может дело то вовсе не в ПК?
И еще такой вопросик...
Много где встречал схему программатора на COM порт. Инверторов в нем нет и TxD закорочен с RxD.
Как я понимаю, для правильной работы UART инверторы нужны.
То есть получится, что для программирования через ком и для общения с компом придется изобретать велосипед, или все намного проще?
И еще такой вопросик...
Много где встречал схему программатора на COM порт. Инверторов в нем нет и TxD закорочен с RxD.
Как я понимаю, для правильной работы UART инверторы нужны.
То есть получится, что для программирования через ком и для общения с компом придется изобретать велосипед, или все намного проще?
- Engineer_Keen
- Друг Кота
- Сообщения: 3868
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: С чего начать изучение миркпропроцессоров
MisHel64 писал(а):После многих лет диалапа не верю, что у ПК проблемы со скоростями выше 38'400. Может дело то вовсе не в ПК?
Проблема в том, что драйвер ком порта позволяет устанавливать скорости только из определенного стандартного набора (например 1200, 9600, 38к, 56к и т.д.) ну по крайней мере стандартными средствами, при этом кварц или внутренний RC на 8МГц позволяет при точности 0.2% выставлять максимум 38к, дальше идет 76к, а его нет среди доступных на ПК (после 56к идет сразу 112к). Вот и вся арифметика...
MisHel64 писал(а):И еще такой вопросик...
Много где встречал схему программатора на COM порт. Инверторов в нем нет и TxD закорочен с RxD.
Как я понимаю, для правильной работы UART инверторы нужны.
Инвертора мало, там еще и уровни отличаются (COM +-12В, UART 0-5В), я же говорил что нужен преобразователь типа MAX232. Но это что касается общения, а для программирования достаточно простой схемы с диодами и делителями (как пример - программатор Громова).
MisHel64 писал(а):То есть получится, что для программирования через ком и для общения с компом придется изобретать велосипед, или все намного проще?
Зачем изобретать, если этих велосипедов уже и так тьма...
Неправильно собранная из неисправных деталей схема нуждается в отладке и сразу не работает... (С)
Re: С чего начать программировать микроконтроллеры?
Engineer_Keen Что-то у меня подозрение, что ты пишешь, только ради того что бы писать, причем демонстрируя не компетентность. Вот смотрю дата шит atmel-2486-8-bit-avr-microcontroller-atmega8_l_datasheet.pdf.
С "некрасивым" кварцем никаких проблем быть не должно на 115.2k. Скорость 76.8k стандартна для КОМ порта. Я конечно не знаю, что там индусы в коде вашей винды понаписали. Но если проблема в рукожопости индусов пишущих вашу ОС, то это проблема вовсе не в ПК, как ты утверждаешь. Или я что-то не то читаю?
Про шнурок... Я конечно понимаю, ты пытался сказать нечто умное с претензией на гениальность...
Но если бы ты чуть внимательней прочитал мой предыдущий пост, то понял, что информационной ценности твое сообщение не имеет, и иметь не могло. Может еще раз попробуешь, только по существу, и без изрекания с умным видом прописных истин.
С "некрасивым" кварцем никаких проблем быть не должно на 115.2k. Скорость 76.8k стандартна для КОМ порта. Я конечно не знаю, что там индусы в коде вашей винды понаписали. Но если проблема в рукожопости индусов пишущих вашу ОС, то это проблема вовсе не в ПК, как ты утверждаешь. Или я что-то не то читаю?
Про шнурок... Я конечно понимаю, ты пытался сказать нечто умное с претензией на гениальность...
Но если бы ты чуть внимательней прочитал мой предыдущий пост, то понял, что информационной ценности твое сообщение не имеет, и иметь не могло. Может еще раз попробуешь, только по существу, и без изрекания с умным видом прописных истин.
- Engineer_Keen
- Друг Кота
- Сообщения: 3868
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: С чего начать программировать микроконтроллеры?
MisHel64 писал(а):Вот смотрю дата шит atmel-2486-8-bit-avr-microcontroller-atmega8_l_datasheet.pdf.
С "некрасивым" кварцем никаких проблем быть не должно на 115.2k. Скорость 76.8k стандартна для КОМ порта.
Я написал про конкретное значение тактовой частоты, да, с некрасивым кварцем можно и 115.2к сделать, и работать будет.
MisHel64 писал(а):Я конечно не знаю, что там индусы в коде вашей винды понаписали. Но если проблема в рукожопости индусов пишущих вашу ОС, то это проблема вовсе не в ПК, как ты утверждаешь. Или я что-то не то читаю?
Где я писал про винду? Кстати, никакая ось не позволит выставить произвольный baudrate (в отличии МК), если эти baudrate-ы фиксированы в самом контроллере порта (например в ИМС 16550).
MisHel64 писал(а):Про шнурок... Я конечно понимаю, ты пытался сказать нечто умное с претензией на гениальность...
Но если бы ты чуть внимательней прочитал мой предыдущий пост, то понял, что информационной ценности твое сообщение не имеет, и иметь не могло. Может еще раз попробуешь, только по существу, и без изрекания с умным видом прописных истин.
Вот тут я вообще не догнал... Вопрос был конкретный, про совместимость RS232 и UART, про инверторы? Ответ был? Был. Вопрос про программатор был? Был. Ответ с примером дан? Дан.
Впрочем...
MisHel64 писал(а):Что-то у меня подозрение, что ты пишешь, только ради того что бы писать, причем демонстрируя не компетентность.
...с таким подходом далеко пойдете.
Неправильно собранная из неисправных деталей схема нуждается в отладке и сразу не работает... (С)
Микроконтроллеры с нуля
Всем привет. Решил начать изучение микроконтроллеров. Нарыл кучу информации в интернете и от её переизбытка мозги просто закипели. Подскажите пожалуйста с чего же всё таки начать?
Re: С чего начать программировать микроконтроллеры?
Языки программирования хорошо знаешь?
- Аlex
- Модератор
- Сообщения: 4614
- Зарегистрирован: Чт мар 18, 2010 23:09:57
- Откуда: Планета Земля
- Контактная информация:
Re: Микроконтроллеры с нуля
C основ цифровой электроники - логика, регистры, счётчики, дешифраторы ,....Felix_V писал(а):с чего же всё таки начать?
Re: Микроконтроллеры с нуля
я советую вам - краткий курс программирование AVR для начинающих с нуля - www.proavr.narod.ru - многим помогло начать.Felix_V писал(а): Решил начать изучение микроконтроллеров. Подскажите пожалуйста с чего же всё таки начать?
Будете проходить мимо- проходите!
Re: С чего начать программировать микроконтроллеры?
menzoda писал(а):Языки программирования хорошо знаешь?
Языки программирования не знаю вообще. Буквально вчера начал изучать "С" с этого источника http://www.youtube.com/watch?v=K3ROGavUCzU
Re: Микроконтроллеры с нуля
radio-kot писал(а):я советую вам - краткий курс программирование AVR для начинающих с нуля - http://www.proavr.narod.ru - многим помогло начать.Felix_V писал(а): Решил начать изучение микроконтроллеров. Подскажите пожалуйста с чего же всё таки начать?
Спасибо. Очень полезная статья. Но возник вопрос - почему рекомендуют начать именно с AVR архитектуры, а не с ARM, например?
Последний раз редактировалось aen Пн окт 06, 2014 01:11:19, всего редактировалось 1 раз.
Причина: Нарушение Правил форума п. 2.2
Причина: Нарушение Правил форума п. 2.2