» » Страница 10

 
 
 
Статья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на Датагоре
1

Сделай сам преобразователь сигналов для механического энкодера, v.2

Разместил dedmazay 12 ноября 2011. Просмотров: 29 641


Хотелось бы дополнить и продолжить мою статью про энкодер «Преобразователь сигналов для механического энкодера»

Как я писал ранее, собрав эту небольшую схемку на любом микроконтроллере (исходный текст программы прилагается) и одном конденсаторе можно сильно облегчить использование энкодера в своей конструкции. Устройство формирует на выходе два сигнала, один тактовый соответствующий приходу пары импульсов от энкодера и второй направления, который устонавливается в 0 или 1 в зависимости от того с какого входа сигнал пришёл раньше.

Данное устройство можно использовать не только в конструкциях содержащих микроконтроллер, им также можно легко управлять реверсным счётчиком.
  • Лайков:
    20
 
Статья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на Датагоре
16

USB-программатор AVR на FT232RL с буффером

Разместил error 14 октября 2011. Просмотров: 34 631

Иметь дело с микроконтроллерами (как и вообще с цифровой техникой) мне приходится довольно редко и если мне надо было прошить микроконтроллер, я просто просил на работе ближайшего «софтверщика» и через 10 минут получал ожидаемое. Но зависимость от других не давала покоя и я решил сделать собственный программатор.
  • Лайков:
    14
 
Статья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на Датагоре
9

Програмирование в AVR Studio 5 с самого начала. Часть 4

Разместил galrad 13 октября 2011. Просмотров: 28 181


Сегодня рассмотрим программу “бегущих огней” и “бегущих теней”. Примеры “бегущих огней” можно найти почти в любой обучающей литературе. Чтобы получить “бегущие огни” на выходах порта, нужно последовательно переключать один бит

“Бегущая тень” получается при инверсии “бегущих огней”. В принципе сложностей никаких нет – и вам под силу сделать это самостоятельно.

Мы же попробуем усложнить задачу и объединить в одной программе “бегущие огни” и “бегущие тени”, сделать их непрерывными т.е. рисунок светящихся огоньков будет переходить из конца в начало, а еще включим функцию реверса огней т.е нажав на кнопку сможем “двигать” огоньки в обратном направлении.
  • Лайков:
    12
 
Статья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на Датагоре
2

PIC16F873: универсальный таймер на 99 минут 59 секунд по мотивам блондинко-таймера Насти

Разместил galrad 12 октября 2011. Просмотров: 13 277

Когда-то, в прошлом веке фотолюбители пользовались пленочными фотоаппаратами, которые заправлялись 35 мм пленкой, чтобы получить негативы, нужно было эту пленку проявить. Проявляли пленку по стрелочному механическому таймеру, минут 8 или 10, Затем наступала вторая часть этого процесса — печать фотографий на фотобумагу, а тут уже требовались секундные экспозиции и чтобы облегчить себе жизнь фотографы пользовались устройствами, называемыми – реле времени.
Вспомнил я про те времена не спроста, сидя в затемненной ванной комнате, с наклеенным фоторезистом на фольгированный стеклотекстолит, в судорожных поисках электронного секундомера в меню своего сотового телефона. Такое вот вступление…

Короче говоря, потребовался мне таймер, причем таймер переносной и универсальный, способный отчитывать и минуты и секунды. Полез в интернет, потратил полдня и не нашел то, что хотел. На следующий день свершилось! Одна хорошенькая девушка по имени Настя выложила на Радиокоте очень простой таймер, всего из 6 деталей, которых у меня не было и не оказалось в ближайшем магазине электроники. В общем, по мотивам этого таймера сделал свой, из тех деталей, которые оказались у меня в наличии.
  • Лайков:
    10
 
Статья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на Датагоре
11

Програмирование в AVR Studio 5 с самого начала. Часть 3

Разместил galrad 1 октября 2011. Просмотров: 28 297


Мы научились включать и выключать светодиоды, а как сделать, чтобы они сами заморгали? Понятно, что после того, как их включили, нужно сделать паузу, затем выключить, снова выждать паузу и снова включить. А как сделать паузу?
Есть конечно, команда NOP, которая сделает паузу равную одному такту, но мы ее никак не увидим.
Такт – это один импульс тактового генератора. Современные контроллеры работают с тактовыми частотами от 1 до 60 мегагерц (от 1 до 60 миллионов импульсов в секунду). Большинство команд AVR выполняется за один такт, где то около 10 команд выполняется за 2 такта.
Поэтому паузу сделанную одной командой NOP, увидеть невозможно, а если нам нужна пауза в полсекунды - тогда нужно минимум написать 500 тысяч команд NOP. Но, это не реально!.
Может, остановить программу?
  • Лайков:
    12
 
Статья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на Датагоре
16

Програмирование в AVR Studio 5 с самого начала. Часть 2

Разместил galrad 24 сентября 2011. Просмотров: 52 781

Пишем первую программу!

Большинство начинают с мигания светодиодов, и мы не исключение. Если микроконтроллер, даже самый быстрый, не “общается” с внешним миром, ценность его сводится к нулю. Нам нужно чтобы микроконтроллер принял информацию, обработал по заданному алгоритму и выдал результат в понятной для нас форме.

Алгоритм, (от имени персидского математика аль-Хорезми) — точный набор инструкций, описывающих порядок действий исполнителя для достижения результата решения задачи за определенное время.
Чтобы правильно писать программы нужно понять, как работает микроконтроллер, чем мы и будем заниматься, а пока составим первую программу на ассемблере.
  • Лайков:
    30
 
Статья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на Датагоре
8

Програмирование в AVR Studio 5 с самого начала. Часть 1

Разместил galrad 22 сентября 2011. Просмотров: 108 628

Каждый человек, который только начинает осваивать программирование микроконтроллеров, да и вообще программирование, упирается сразу в несколько вопросов:
1. Какой микроконтроллер выбрать для максимально быстрого освоения?
2. Какой основной инструмент (программу) использовать для начала работы?
3. Какие аппаратные средства доступны для начала программирования?
4. Какую литературу использовать?
5. Где общаться и получать вразумительные советы?

Когда я начинал, то сам столкнулся с этими вопросами. Начал искать литературу и решил, что надо начинать с PIC-ов. Перевес в сторону PIC-ов определился из за небольшого количества команд микропроцессоров среднего семейства  — всего 35 против 136 у AVR, и наличием IDE  — интегрированной среды разработки MPLAB. К сожалению, до последнего времени для микроконтроллеров AVR не было удобной интегрированной среды разработки, многие пользовались AVR Studio 4, кто то писал на C в IAR, для отладки пользовались дополнительными программами, все зависило от личных приоритетов.

В этом году компания ATMEL наконец то «родила» IDE — AVR Studio 5 для программирования микроконтроллеров AVR. Много критических замечаний было сказано в адрес этой программы, но она существует и работает, возможно, компания со временем учтет все критические замечания, и сделает программу более гибкой, совершенной и не такой большой по размеру. Конечно по объему это монстр — инсталлируемый файл занимает 600 с лишним МБайт. Но, есть в ней и определенные удобства в работе, и не только для начинающих! Программа ориентирована для работы в среде C, но ассемблер поддерживается полностью.
  • Лайков:
    49
 
Статья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на Датагоре
1

Программатор JTAGICE 3. Что внутри?

Разместил galrad 18 сентября 2011. Просмотров: 23 538

Совершенно случайно попался мне в руки программатор JTAGICE3, который был выпущен компанией Atmel взамен JTAGICEII, что явилось хорошим стимулом для начала изучения программирования микроконтроллеров AVR и среды программирования Atmel® AVR Studio® 5.

  • Лайков:
    11
 
Статья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на Датагоре
17

SHT10 + Atmega8: Микроконтроллерный модуль управления вентилятором санузла, v2

Разместил hsl 10 августа 2011. Просмотров: 29 056

Доброго дня, сограждане!
Представляю вторую версию блока управления вентилятором для ванной, выполненный на микроконтроллере (МК) Atmega8, теперь с использованием цифрового датчика SHT10.
Тут читайте первую подробную статью.

Немного изменился внешний вид отображаемой информации

SHT10 + Atmega8: Микроконтроллерный модуль управления вентилятором санузла, v2

Добавилась информации о температуре, а в остальном функционал остался прежним, только его показаниям теперь больше доверия, напомню

Что может устройство:

В автоматическом режиме включать/выключать вентилятор по установленным в настройках порогам влажности, пороги включения/выключения выставляются раздельно.
В ручном режиме можно включить/выключить вентилятор соответствующими кнопками. В обоих режимах осуществляется индикация, температуры, состояния вентилятора (Включен/Выключен), текущей влажности (%), режима работы (Ручной/Автомат).
  • Лайков:
    20
 
Статья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на ДатагореСтатья на Датагоре
65

Цифровой измеритель остатка топлива и напряжения АКБ для автомобиля (ATMega8 и дисплей от Nokia 1110i)

Разместил hsl 18 июня 2011. Просмотров: 121 691


Не знаю кому как, а мне лично не нравится точность, вернее ее полное отсутствие у автомобильного индикатора топлива. Поэтому, как только появилась у меня машина, решил эту недоработку исправить.

В итоге появился этот индикатор, который умеет следующее:
1. Отображать остаток топлива с точностью до литра, поддерживаемый объем бака выбирается от 30 до 99 литров
2. Отображать напряжение бортовой сети
3. Компенсировать качание поплавка в баке многократными (количество выбирается в меню) замерами и выводом среднеарифметического значения.
4. Менять яркость подсветки в зависимости от освещенности, 2 режима, день/ночь, определяется по включению подсветки приборной панели.
5. Менять режим отображения индикатора обычный/инверсный.
  • Лайков:
    57