Подписаться на получение новых статей на почту:

Литература и программы для AVR. Шаг №1

Обновлено 10.02.15. Всем привет. В первой записи блога я выложил краткую информацию необходимой литературы, ссылок и программ, которыми мы будем пользоваться для изучения, рассмотрения и разработок дальнейших устройств на AVR. Например от простого термометра в статье №6 до более сложного устройства -  фазосдвигателя на ATmega8 и другое. Выбор языка для дальнейшего программирования, это дело вкуса. Я лично склонился к Си, и если кто-то захочет его осваивать то могу сказать, что первым делом необходимо прочитать классику:
Литература для изучения языка Си. Керниган и Ритчи.Язык программирования Си. Керниган Б. Ритчи Д. Стандарт ANSI.
Хочется сказать о стандартах языка, всего их пять. Предпоследний это С99, но хочется отметить что книга описанная стандартами С90 и ANSI, если не обращать на тонкости внимания, то они особо не отличаются, и для начального уровня подойдут просто идеально. Что касается последнего стандарта 2011 года С11, то он сильно приближен к объектно-ориентированному языку и это уже совсем отдельный разговор. Итак с момента появления языка Си было пять стандартов «K&R» C (1978), ANSI C (1989), C90 (1990), C99 (1999), C11 (2011). Смело можно начинать изучение предпоследних трех. Для закрепления материала, и рассмотрение стандартов С90 и С99  могу порекомендовать:

Литература для изучения языка Си. Шилдт.— Герберт Шилдт. Полный справочник по С (4-ое издание) (Герберт Шилдт) . Довольно интересно написана книга. Приятно ее читать. В принципе для ознакомления, этих двух книг, хватит вполне. В дальнейшем в программах, кое-где будут фрагменты кода ассемблера. Литературу я не привожу, т.к. сам особо не читал, да и то что используется можно “подглядеть” в интернете. Конечно же  знание данного языка приветствуется. Но тут, как говорится – дело вкуса.

 

Для освоения выше приведенной литературы нам необходима программа, для консольного программирования. Лично я выбрал CodeBlocks -это кроссплатформенная интегрированная среда разработки (IDE), а главное бесплатная. Информацию можно взять прямо с родного сайта http://www.codeblocks.org, там же качаем эту среду. Данная программа создает только исходники, заголовки прилинковывая библиотеки и др., но нам необходим еще и компилятор который переводит программу в машинный язык. В архиве с графической оболочкой идет бесплатный компилятор minGW (Minimalist GNU for Windows).

Литература для ознакомления с AVR. Шпак.Теперь перейдем к литературе для освоения микроконтроллеров AVR. Осмелюсь посоветовать следующую книгу:  — программирование на языке Си для AVR и PIC микроконтроллеров Шпак Ю.А. 2-е издание, 2011 г.   Есть более ранние издание, выбор за вами. Данная книга описывает архитектуру микроконтроллеров как AVR так и PIC, начальное описание языков Си, ассемблер и примеры.

 

Справочник микроконтроллеров AVR. Евстифеев.Следующая книга и последняя и наверное самая основная это справочник: -  Микроконтроллеры AVR семейств Tiny и Mega фирмы Atmel Евстифеев А.В. Где описываются все тонкости и режимы работы с регистрами. В принципе это тот же даташит, только собранный в кучу, сведен в таблицы, более разжеван ну и переведен. Да и не стесняемся читать техническую документацию, т.е. даташит к каждой модели контроллера отдельно взятой, правда она на английском.

            

Ниже перечислены программы для работы непосредственно с микроконтроллерами:
- WinAVRэто набор инструментальных средств для программирования RISC-микроконтроллеров семейства AVR на языке Си. В комплект входит компилятор GNU GCC, а также программа Notepad. В этой среде создаются рабочие файлы с расширением .hex. С помощью этой же программы мы можем залить рабочий файл в микроконтроллер, вызывая утилиту mfile, в закладке makefile выбираем строку programmer.

Программа для работы с AVR. AVRStudio.- AVR Studio – среда которая используется для загрузки созданных программ в программатор, а также эмуляция выполнения программ на том или ином микроконтроллере.  Данная среда разработана непосредственно самой компанией Atmel. Является бесплатной и довольно неплохой. По этой ссылке http://www.atmel.com вы всегда сможете скачать данную программу. А также более детально ознакомится c контроллерами и разработками.

По программам в принципе все. Работу с ними детально описывает, все тот же Шпак.

программатор пять проводков или stk200Хочется сказать пару слов о программаторе — это устройство с помощью которого Вы «заливаете» непосредственно вашу программу в микроконтроллер а также изменяете регистры.  Самый простой stk200 либо “программатор пять проводков”, (рис. слева) т.е. работа непосредственно с портом lpt. Для начинающих, данная возможность — это способ попробовать свои силы не производя затраты на аппаратный программатор. Конечно стоит отметить что здесь присутствует риск “прожечь” данный порт. Благо есть интернет и куча решений.

последовательный USB программатор ISPЯ приобрел последовательный USB программатор ISP  (рис. слева) для внутрисхемного программирования. Также существуют параллельные программаторы, где имеется два уровня напряжений 5 и 12 В. Они более функциональные и дорогие))). Выбор за Вами.

Ну и последнее, можно попробовать свои силы не имея контроллеров вообще под рукой или перед их прошивкой, да и сборкой проекта вообще, используя PROTEUS (например подключение ЖКИ к МК статья №27), что представляет собой пакет программ для автоматизированного проектирования (САПР) электронных схем.

На этом и остановимся. Выше были перечислены литература а также программы, которые мы будем использовать в дальнейшем для написания кода и разработки устройств. В следующей статье (№2) перейдем к рассмотрению настроечного файла Makefile программы WinAVR, перед тем как мы с Вами напишем первую программу и зальем в наш «камень». На этом Все. Всем пока.

Просмотрено 6861 раз.

Я на Google+

Добавить комментарий

Ваш e-mail не будет опубликован.

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Subscribe without commenting