Программирование

Печать

ucGoZilla - USB программатор микроконтроллеров AVR

Опубликовано . Опубликовано в Программирование AVR

Рейтинг:   / 5

Устройство предназначено для программирования микроконтроллеров (МК) AVR фирмы ATMEL. В зависимости от версии программного обеспечения управляющего контроллера, плата может работать по протоколам STK500v2 или JTAGICEmkII. Основные характеристики:

Прошивка STK500v2

- Работа с программными средами AVRStudio, CodeVisionAVR, AVRDUDE по протоколу STK500v2.
- Программирование МК серии AT89 (только для AT89S51, AT89S52) по интерфейсу ISP;
- Программирование всех МК AVR серий AT90, ATtiny, ATmega по интерфейсу ISP;
- Тактовая частота порта ISP от 1.21 кГц до 1.845 МГц;
- Наличие дополнительного генератора с изменяющейся частотой от 15 Гц до 3.68 МГц (поддерживается пакетом AVRStudio);

Прошивка JTAGICEmkII

- Работа с программными средами AVRStudio и AVRDUDE по протоколу JTAGICEmkII.
- Программирование всех МК AVR серий AT90, ATtiny, ATmega, ATXmega по интерфейсам ISP, JTAG, PDI;
- Тактовая частота интерфейсов JTAG и PDI от 26.2 кГц до 3.6 МГц;
- Тактовая частота интерфейса ISP от 51 Гц до 8 МГц;

Печать

Использование библиотеки для работы с LCD HD44780

Опубликовано . Опубликовано в Программирование на Си

Рейтинг:   / 28

В этой статье я расскажу как с помощью достаточно распространенной библиотеки управлять LCD дисплеем на базе контроллера HD44780 и выводить на него информацию. Библиотека состоит из двух файлов lcd_lib.h и lcd_lib.c для использования с дисплеем подключенным по четырехбитной шине данных. В заголовочном файле прописываются настройки подключения дисплея к контроллеру, которые можно изменить по своему усмотрению, а также переменные и функции.

Ниже представлены базовые функции управления и вывода информации на LCD.

lcd_com – посылка команды в LCD

Пример:
lcd_com(0x01); // очистка дисплея
lcd_com(0x38); // интерфейс 8 бит 2 строки

Печать

Биты конфигурации и биты блокировки памяти микроконтроллеров AVR

Опубликовано . Опубликовано в Программирование AVR

Рейтинг:   / 6

Биты блокировки памяти (Lock Bits)

Исторически сложилось так, что даже самые первые модели микроконтроллеров имели программируемые ячейки защиты информации. Микроконтроллеры AVR так же имеют такую защиту. Это специальные ячейки, построенные по принципу Flash-памяти (то есть, энергонезависимой памяти с электрическим стиранием информации). Каждый микроконтроллер имеет как минимум две защитные ячейки LB1 и LB2. Запись и чтение этих ячеек возможна только в режиме программирования. При записи нуля в LB1 блокируется запись данных во Flash и EEPROM память. Одновременно блокируется возможность изменять конфигурационные ячейки. Если записать ноль еще и в LB2, то блокируется и возможность чтения всех данных. После этого прочитать содержимое вашей программы становится невозможным. Для повторного использования микроконтроллера нужно выполнить команду «Стирание микросхемы». При этом вся информация, записанная в микросхему теряется, зато способность чтения и модификации восcтанавливается. В микроконтроллерах семейства Mega имеются дополнительные ячейки защиты BLB02, BLB01, BLB12, BLB11. Они служат для ограничения доступа к различным областям памяти программ. Подробнее об этом смотрите в описании конкретной микросхемы.

Печать

Программатор HVProg с USB интерфейсом

Опубликовано . Опубликовано в Программирование AVR

Рейтинг:   / 2

Этот программатор отличается от обычного HVProg тем, что ему не нужно внешнее питание 15 Вольт и тем что соединение с компьютером осуществляется по шине USB. Так же от USB берется напряжение +5 Вольт для питания цифровой части программатора, а для работы в режиме высоковольтного программирование оно повышается до 12 Вольт при помощи импульсного преобразователя на микросхеме MC34063. Преобразователь интерфейса USB -> UART выполнен на специализированном микрочипе CP2102, который имеет неплохие характеристики и недорогую стоимость. Перед началом работы с программатором необходимо установить драйвер виртуального COM - порта, который находится в архиве к статье или скачать с официального сайта производителя CP2102.

Печать

Работа с внутренней памятью EEPROM

Опубликовано . Опубликовано в Программирование на Си

Рейтинг:   / 9

Все микроконтроллеры семейства Mega имеют в своем составе энергонезависимую память (EEPROM память). Объем этой памяти колеблется от 512 байт в моделях ATmega8x до 4 Кбайт в старших моделях. EEPROM память расположена в своем адресном пространстве и так же, как и ОЗУ, организована линейно. Для работы с EEPROM памятью используются три регистра ввода/вывода: регистр адреса, регистр данных и регистр управления.

Печать

Использование интерфейса USART микроконтроллеров AVR

Опубликовано . Опубликовано в Программирование на Си

Рейтинг:   / 14
Микроконтроллеры AVR имеют в своем составе модуль полнодуплексного универсального асинхронного приемопередатчика UART (в семействе Mega универсальный синхронный/асинхронный приемопередатчик USART). Через него осуществляется прием и передача информации, представленной последовательным кодом, поэтому модуль UART часто называют также последовательным портом. С помощью этого модуля микроконтроллер может обмениваться данными с различными внешними устройствами.
Печать

Зажигаем RGB светодиод. Программный ШИМ

Опубликовано . Опубликовано в Программирование на Си

Рейтинг:   / 12

Для отображения всей палитры видимых оттенков теоретически достаточно иметь три цвета. Это — так называемый RGB-синтез (Red — красный, Green — зеленый, Blue — синий). Но в реальности трех цветов бывает недостаточно. Смешивание цветов может происходить одним из трех способов. Светодиоды могут раздельно располагаться в светильнике, а цвета смешиваются уже непосредственно на освещаемом объекте. Преимущества такого подхода — простота конструкции и высокая светоотдача. Недостаток — наличие нескольких разноцветных теней для объектов, расположенных близко к светильнику. Более сложный вариант — оптическая система, смешивающая лучи от разных светодиодов. Наконец, выпускаются специальные RGB-светодиоды, объединяющие в одном корпусе три кристалла разных цветов. Использование RGB-светодиодов позволяет создать очень тонкий осветительный прибор, дающий равномерный свет без заметных зон затенения.

Печать

АЦП микроконтроллеров AVR. Делаем цифровой вольтметр 0 - 25V

Опубликовано . Опубликовано в Программирование на Си

Рейтинг:   / 33

Продолжим изучать аналого-цифровой преобразователь микроконтроллеров AVR на примере цифрового вольтметра постоянного напряжения, с пределами измерения от 0 до 25V. Измеряемое напряжение будет отображаться на трехразрядном семисегментном индикаторе с общим анодом. В этом примере применим динамическую индикацию о которой подробней рассказано на одном из предыдущих занятий, кусок исходного кода возьмем от туда же. Микроконтроллер Atmega8 тактируется от внутреннего генератора частотой 8MHz.

Далее займемся настройкой АЦП. В этот раз попробуем использовать внутренний источник опорного напряжения 2,56V, т.к. выход Aref микроконтроллера соединен с ИОН, для обеспечения стабильности ИОН подключаем к выводу Aref конденсатор. Резистор R3 - подстроечный, он служит для регулировки номинального уровня напряжения, желательно многооборотный.

Печать

Аналого-цифровой преобразователь микроконтроллеров AVR

Опубликовано . Опубликовано в Программирование на Си

Рейтинг:   / 34

Аналого-цифровые преобразователи (АЦП) являются устройствами, которые принимают входные аналоговые сигналы и генерируют соответствующие им цифровые сигналы, пригодные для обработки микропроцессорами и другими цифровыми устройствами. АЦП входит во многие современные модели МК AVR, он многоканальный. Обычно число каналов равно 8, но в разных моделях оно может варьировать от 4 каналов в младших моделях семейства Tiny, 6 в ATmega8, до 16 каналов в ATmega2560.

Печать

Воспроизведение однотональных мелодий с помощью AVR

Опубликовано . Опубликовано в Программирование на Си

Рейтинг:   / 13

Формирование звука с помощью микроконтроллера не составляет большого труда. Достаточно взять за основу программу мигающего светодиода и подключить вместо него динамик, а в самой программе поменять константу задержки таким образом, чтобы частота на выходе повысилась до звукового диапазона. Человек может услышать звуки с частотой от 50Hz до 15kHz. Светодиод в одном из наших уроков мигает с частотой 4Hz, а если уменьшить время задержки в 1000 раз, то можно получить частоту на выходе 4Hz.

Рекомендуем посмотреть

No result...