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

Здесь принимаются все самые невообразимые вопросы... Главное - не стесняйтесь. Поверьте, у нас поначалу вопросы были еще глупее :)
Аватара пользователя
alex_
Опытный кот
Сообщения: 781
Зарегистрирован: Сб июн 01, 2013 22:24:21
Откуда: ПФО

Re: С чего начать программировать микроконтроллеры?

Сообщение alex_ »

Я люблю эту почитать: Микроконтроллеры AVR семейства Mega А.В.Евстифеев 2007-600RM.djvu, перед сном :))
Что то вроде справочника по АВР мегам с описанием
Реклама
Аватара пользователя
kalyanzb
Открыл глаза
Сообщения: 54
Зарегистрирован: Чт май 28, 2009 15:46:53
Откуда: Україна, Тернопільська обл., м. Зборів

Re: С чего начать программировать микроконтроллеры?

Сообщение kalyanzb »

Ну Евстифеев само-собой как справочник.
И еще... Мега-16А чем отличается от Меги-16(16L) ? Читал где-то шо вроде как поновее и енергопотребления снижено. Хочу её взять за основу при изучении
Реклама
Аватара пользователя
FreshMan
Друг Кота
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Re: С чего начать программировать микроконтроллеры?

Сообщение FreshMan »

от себя могу посоветовать следущее:

AVR Microcontroller and Embedded Systems
Make_AVR_Programming_2014
AVR GCC Tutorial (WinAVR)
Джон Мортон Микроконтроллеры AVR. Вводной курс
:tea:
Tell Me The Truth
Alexeyslav
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич
Контактная информация:

Re: С чего начать программировать микроконтроллеры?

Сообщение Alexeyslav »

Она в мелочах да отличается обычная от P и PA версий, обычно и периферия имеет дополнительные функции и так по мелочам. Как яркий пример, в новых чипах с буквой A и PA запись лог.1 в регистр PINx который по логике своей должен работать только на ввод инвертирует состояние вывода на противоположное.

Правда, из-за этого бывает засада. Не все регистры доступны одной командой, приходится обращаться к ним командой STS в два этапа, поэтому то что работало в одном контроллере в другом может не сработать за счет того что адрес регистра находится за пределами доступности команд IN/OUT. То есть в общем случае по исходникам могут быть несовместимости но не принципиальные. Обычно это решается за счет построения прослойки под названием HAL, когда работа непосредственно с железом собрана компактно в одном месте(это и есть так называемый HAL) а логика программы в другом.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Re: С чего начать программировать микроконтроллеры?

Сообщение oleg110592 »

Alexeyslav писал(а):Как яркий пример, в новых чипах с буквой A и PA запись лог.1 в регистр PINx который по логике своей должен работать только на ввод инвертирует состояние вывода на противоположное.
Разве это есть в ATmega16A? Дело не в буквах - на относительно новых мегах добавилась эта фича. Например в ATmega48 без буквы это уже было, в ATmega48V, ATmega48P, ATmega48PA тоже есть.
Вместо ATmega16A, имхо, лучше использовать более продвинутую - ATmega164PA/324PA/644PA.
Вместо Естифеева 2007г (много воды утекло), опять имхо, лучше читать родной даташит от производителя - вполне достаточно вместо чтения модных книг.
Реклама
mehanik_universe
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт дек 09, 2014 00:47:04

Re: С чего начать программировать микроконтроллеры?

Сообщение mehanik_universe »

здравствуйте, начал уже осваивать ардуино, задумал написать себе калькулятор а тут оказывается пинов маловато, погуглив немного нашел инфу о сдвиговых регистрах , в магазине нашел вот такие TPIC6B595N 8-битные с защелкой, с транзисторными ключами на выходе (ток на каждом выходе до 150мА) , они показались мне не дорогими и я заказал себе 7 штук. Скажите пожалуйста в чем их примущество перед другими и с меньшей мощностью?
Реклама
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Re: С чего начать программировать микроконтроллеры?

Сообщение Gudd-Head »

Ну, вы же сами написали:
— 8-битные
— с защелкой
— с транзисторными ключами на выходе (ток на каждом выходе до 150мА)
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
mehanik_universe
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт дек 09, 2014 00:47:04

Re: С чего начать программировать микроконтроллеры?

Сообщение mehanik_universe »

да ,но мощность то зачем такая? есть и меньшей мощности они что чем-то хуже?
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Re: С чего начать программировать микроконтроллеры?

Сообщение Gudd-Head »

Моща чтобы управлять чем-то мощным. Светодиоды, двигатели... Да мало ли.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
mehanik_universe
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт дек 09, 2014 00:47:04

Re: С чего начать программировать микроконтроллеры?

Сообщение mehanik_universe »

понял спасибо.
CB1
Прорезались зубы
Сообщения: 232
Зарегистрирован: Чт янв 01, 2015 13:44:12

Программирование микроконтроллеров

Сообщение CB1 »

Доброго времени суток товарищи - радио коты! Занимаюсь какое то время электроникой, начал понемногу осваивать схемотехнику, но в современных схемах широко используются микроконтроллеры... И не научившись писать "прошивки" для контроллеров схему с ним не разработаешь... Посоветуйте с чего можно начать осваивать программирование контроллеров, какую книгу или источник инфы можно взять за учебник, что бы понемногу доходчиво объяснялось... нашел книгу "Самоучитель по программированию PIC контроллеров", и пока было вступление то было понятно, а как началось.............. такое впечатление что авторы пишут книги не тем кто учится, а тем кто уже знает...



Тема дубль.
Сюда перенес.
Читайте.
aen
Аватара пользователя
Stupid
Опытный кот
Сообщения: 779
Зарегистрирован: Пт дек 26, 2014 09:14:33
Откуда: K-PAX

Re: Программирование микроконтроллеров

Сообщение Stupid »

Видео по программированию AVR
PICами не интересовался но подозреваю что тут можно найти что-то подобное
Я играю дураков, поэтому меня везде воспринимают как родного.
©Савелий Крамаров.
CB1
Прорезались зубы
Сообщения: 232
Зарегистрирован: Чт янв 01, 2015 13:44:12

Re: Программирование микроконтроллеров

Сообщение CB1 »

Спасибо за ссылку 8) просмотрю обязательно... а с чего начинать осваивать с AVR или PIC, думаю большой разницы нет, я полагаю что они похожи... Хотя читал что PIC проще осваивается...
Все гениальное - просто
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Программирование микроконтроллеров

Сообщение Ser60 »

С чего начинать? Здесь по этому поводу специалная тема есть. Читали?
http://www.radiokot.ru/forum/viewtopic. ... ad=-1&t=33
Аватара пользователя
Stupid
Опытный кот
Сообщения: 779
Зарегистрирован: Пт дек 26, 2014 09:14:33
Откуда: K-PAX

Re: Программирование микроконтроллеров

Сообщение Stupid »

CB1 , решать конечно вам ,но в свое время на мое решение повлияла вот эта ссылочка http://www.getchip.net/posts/a-pochemu-imenno-avr/ ну там кроме ентой статейки есть еще много полезной информации...
Перелом случился вот после этих слов
СпойлерНу, во-первых, меня просто до глубины души возмущала такая нелогичность как 14битные ячейки памяти программ. Ну не укладывалось у меня в мозгу, как так может быть, чтоб слово программы было так бессовестно кастрировано. А как тада хранить данные в памяти? Разбивать байты на части или херить 6ти битные обрезки. И это во времена, когда память стоит дешевле семечек. Дальше – больше. Ну нафига в микроконтроллере с размером памяти в 4-16 килобайт страничная организация памяти? Ну хоть убейте не понимаю. А размазать по 4 страницам управляющие регистры вперемешку с ячейками памяти это вообще мазохизм какойто. Еще, почему-то, в книжке преподносилось как достоинство небольшое(скудное) количество инструкций ассемблера – 30 с хвостиком. Короче, писать на ассемблере мне резко перехотелось. Ладно, думаю, буду писать на Си – он все разрулит. Я живо себе представил офигевший компилятор Си который, по ходу программы, переключается между страницами, пытается хранить константы в 14 битных ячейках памяти, строит комбинации из этих самых «всего 30+ инструкций», при этом тратя на каждую инструкцию по 4 такта. В общем разочарование полное. На мое счастье тот самый стартовый проект, о котором я говорил ранее, был в 2х вариантах. Вернее сначала он был сделан на PIC-е, а вторую версию автор переделал с применением Atmel ATtiny2313. Так как я уже до этого почитывал топики с холиварами PIC vs AVR, то я решил посмотреть как там дела у конкурента. И был сразу поражен различием архитектуры у вроде-бы равнозначных микроконтроллеров. Гениальное произведение корпорации Атмел с архитектурой RISC сразу меня покорило.
Создатели умудрились сделать микроконтроллер быстрый, простой, можно даже сказать элегантный. Почти все команды микроконтроллера выполняются за 1 такт, память линейная с четкой разбивкой по функциональности, куча команд контроллера(130 с хвостиком) подогнанных под Си (теперь компилятор не фигеет – он фривольно работает с вариантами оптимизации кода) и самое для меня ставшее просто неожиданным сюрпризом – 32!!! аккумулятора – регистра общего назначения. То есть с каждым из них можно делать все что угодно – любые операции! Программаторы у AVR очень просты – самый простой «5 проводков» – реально 5 проводков цепляются на LPT порт и шьется микроконтроллер (позже мы рассмотрим различные конструкции программаторов). Я был покорен AVR. С таким жирным набором плюсов было решено делать проект только на AVR и только на ассемблере. Вот так я выбирал микроконтроллер.
да и мой первый опыт, неудачный, к стати, был именно с AVRами "Адаптер для джойстика от SONY PS под USB".
Я играю дураков, поэтому меня везде воспринимают как родного.
©Савелий Крамаров.
Аватара пользователя
FreshMan
Друг Кота
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Re: С чего начать программировать микроконтроллеры?

Сообщение FreshMan »

а вот моя отправная точка http://www.fanatnauki.ru/index.php?opti ... &Itemid=18 :tea:
Tell Me The Truth
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Программирование микроконтроллеров

Сообщение dosikus »

Stupid писал(а): Перелом случился вот после этих слов
Вот так и бывает - один дурак сочинит легенду, другие ему в рот смотрят...
АСУ
Друг Кота
Сообщения: 3342
Зарегистрирован: Ср янв 02, 2013 08:37:35

Re: Программирование микроконтроллеров

Сообщение АСУ »

dosikus писал(а):один дурак сочинит легенду
Человек высказал своё мнение, не более того… а представитель ПИКов, без объяснения причин, сразу перешёл на личность – железный аргумент… :facepalm:
Аватара пользователя
Stupid
Опытный кот
Сообщения: 779
Зарегистрирован: Пт дек 26, 2014 09:14:33
Откуда: K-PAX

Re: С чего начать программировать микроконтроллеры?

Сообщение Stupid »

Я много делаю разных поделок и на PICах и на AVRах но почему-то вторые мне легче даются и в плане программирования, даже с ихним вечным геммором - фьюзами , да и по цене "народный" контроллер
ATmega8
СпойлерSupply Voltage - Max: 5.5 В
Supply Voltage - Min:2.7 В
Вид монтажа: SMD/SMT
Встроенный в чип АЦП: да
Высота: 1.05 мм
Длина: 7 мм
Интерфейс: SPI, TWI, USART
Количество линий ввода/вывода: 23
Количество таймеров: 3
Рабочий диапазон температрур: - 40 C ... + 85 C
Размер ОЗУ: 1 Кб
Размер ПЗУ данных: 512 B
Размер памяти программ: 8 Кб
Серия процессора: ATMEGA8x
Тактовая частота максимальная: 16 МГц
Тип корпуса: TQFP-32
Тип памяти программ: Flash
Шина данных: 8 бит
Ширина: 7 мм
Ядро: AVR
RoHS: да
от 54,40 руб.
дешевле чем такой же "народный"
PIC16F628
СпойлерШина данных:Supply Voltage - Max: 5.5 В
Supply Voltage - Min: 3 В
Вид монтажа: SMD/SMT
Встроенный в чип АЦП: нет
Высота: 2.31 мм
Длина: 11.53 мм
Интерфейс: SCI, USART
Количество линий ввода/вывода: 16
Количество таймеров: 3
Рабочее напряжение питания: 3 В ... 5.5 В
Рабочий диапазон температрур: 0 C ... + 70 C
Размер ОЗУ: 224 B
Размер ПЗУ данных: 128 B
Размер памяти программ: 3.5 Кб
Серия процессора: PIC16
Тактовая частота максимальная: 20 МГц
Тип корпуса: SOIC-18
Тип памяти программ: Flash
Упаковка: Tube
Шина данных: 8 бит
Ширина: 7.49 мм
Ядро: PIC
RoHS: да
65,50 руб..
... и да это мое отдельно взятое мнение и никоим образом на истину в последней инстанции не претендует.
Единственное приемущество ПИКа - максимальная частота, у ПИКа 20 Мгц а АВРки 16Мгц
Я играю дураков, поэтому меня везде воспринимают как родного.
©Савелий Крамаров.
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: С чего начать программировать микроконтроллеры?

Сообщение dosikus »

АСУ, поменьше эмоций.
Это , как ты выразился "мнение" , руководство к действию новичкам. На что они и клюют.
Причем аргументы высосаны из пальца ...

Stupid , наверное сравнивать Atmega и пЫк16f628 так же глупо как и обозвать пЫк16f628 "народным" ?
Ответить

Вернуться в «Теория»