Ну Евстифеев само-собой как справочник.
И еще... Мега-16А чем отличается от Меги-16(16L) ? Читал где-то шо вроде как поновее и енергопотребления снижено. Хочу её взять за основу при изучении
Она в мелочах да отличается обычная от P и PA версий, обычно и периферия имеет дополнительные функции и так по мелочам. Как яркий пример, в новых чипах с буквой A и PA запись лог.1 в регистр PINx который по логике своей должен работать только на ввод инвертирует состояние вывода на противоположное.
Правда, из-за этого бывает засада. Не все регистры доступны одной командой, приходится обращаться к ним командой STS в два этапа, поэтому то что работало в одном контроллере в другом может не сработать за счет того что адрес регистра находится за пределами доступности команд IN/OUT. То есть в общем случае по исходникам могут быть несовместимости но не принципиальные. Обычно это решается за счет построения прослойки под названием HAL, когда работа непосредственно с железом собрана компактно в одном месте(это и есть так называемый HAL) а логика программы в другом.
Alexeyslav писал(а):Как яркий пример, в новых чипах с буквой A и PA запись лог.1 в регистр PINx который по логике своей должен работать только на ввод инвертирует состояние вывода на противоположное.
Разве это есть в ATmega16A? Дело не в буквах - на относительно новых мегах добавилась эта фича. Например в ATmega48 без буквы это уже было, в ATmega48V, ATmega48P, ATmega48PA тоже есть.
Вместо ATmega16A, имхо, лучше использовать более продвинутую - ATmega164PA/324PA/644PA.
Вместо Естифеева 2007г (много воды утекло), опять имхо, лучше читать родной даташит от производителя - вполне достаточно вместо чтения модных книг.
здравствуйте, начал уже осваивать ардуино, задумал написать себе калькулятор а тут оказывается пинов маловато, погуглив немного нашел инфу о сдвиговых регистрах , в магазине нашел вот такие TPIC6B595N 8-битные с защелкой, с транзисторными ключами на выходе (ток на каждом выходе до 150мА) , они показались мне не дорогими и я заказал себе 7 штук. Скажите пожалуйста в чем их примущество перед другими и с меньшей мощностью?
Доброго времени суток товарищи - радио коты! Занимаюсь какое то время электроникой, начал понемногу осваивать схемотехнику, но в современных схемах широко используются микроконтроллеры... И не научившись писать "прошивки" для контроллеров схему с ним не разработаешь... Посоветуйте с чего можно начать осваивать программирование контроллеров, какую книгу или источник инфы можно взять за учебник, что бы понемногу доходчиво объяснялось... нашел книгу "Самоучитель по программированию PIC контроллеров", и пока было вступление то было понятно, а как началось.............. такое впечатление что авторы пишут книги не тем кто учится, а тем кто уже знает...
Спасибо за ссылку просмотрю обязательно... а с чего начинать осваивать с AVR или PIC, думаю большой разницы нет, я полагаю что они похожи... Хотя читал что PIC проще осваивается...
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".
Я много делаю разных поделок и на 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Мгц