USB счетчик посещений на AVR ATtiny25

ATtiny25 MAX7219

Почему счетчики посещений являются атрибутикой только виртуального мира? Сегодня у Вас появилась возможность исправить эту ошибку и сделать счетчик посещений вполне реальной вещью. Владельцам личных страничек посвящается…

USB счетчик посещений

Посредником между компьютером и дисплеем будет служить микроконтроллер. Выбор автора пал на AVR. За отображение информации отвечают драйвер MAX7219 и 7-ми сегментный LED дисплей (к сожалению, проект рассчитывается на странички, количество посетителей которых не переваливает за 7-мизначный рубеж). «Мозг» устройства - ATtiny25, код написан в AVR-GCC и является модификацией примера EasyLogger разработанного Christian Starkjohann из Objective Development, ему же принадлежит разработка крайне полезной USB прошивки AVR-USB, использующую медленный USB 1.1 для Atmel AVR микроконтроллеров. Теперь отпадает необходимость дополнительно нагружать схему или использовать уже не популярный RS232. Драйверу MAX7219 необходимо внешнее питание (чтобы не перегрузить порт) - 300 мА, 9-12 В DC или AC. Не забудьте использовать радиатор для ИС1. ИС3 питается от шины.


Нажмите для увеличения

MAX7219 используется в режиме декодирования, т.к. это заметно снижает размер программы ATtiny25. Ссылки на исходный код Вы можете найти в конце статьи. Теперь поговорим о программном обеспечении на компьютере. Вам понадобятся следующие библиотеки:

  • LibUSB-Win32 , библиотека Windows, позволяющая программам обращаться к USB устройствам напрямую, а не через ядро.
  • Также могут понадобиться компоненты CoolTrayIcon и TextTrayIcon для Delphi.

Это позволит сворачивать окно программы в трей, что согласитесь, очень удобно.

Программа к сожалению не имеет никаких дополнительных функций, т.к. является всего лишь примером.

Принцип работы крайне прост: каждые 10 секунд (интервал timer1) программа обращается к файлу hits.txt на Вашем сервере, «хостинге» если Вам угодно, и, считав ВСЮ! информацию, посылает ее на дисплей. Теперь поговорим о необходимом ПО на стороне сервера. На сервере создаем файл hits.txt, в который мы будем записывать количество посетителей, присваиваем ему следующий chmod (то есть права) - не менее 755 (rwxrw-rw-, если мне не изменяет память). Согласитесь, просто так, и даже если мы его назвали hits.txt, файл считать посетителей не будет. Поэтому разместим на главной странице нашего сайта (выберите изменить HTML код главной страницы, если вы используете систему управления сайтом) следующий код:

ПО тестировано только на Windows XP. Используемый программатор - PonyProg.

Скачать ПО, компоненты для Windows и исходный код можно здесь: Исходный код AVR

ПО для компьютера (как исходный код Delphi 6, так и .exe приложение)

Перевод: Ale)(ander, по заказу РадиоЛоцман

На английском языке: USB Physical Hit Counter Based on AVR ATtiny25

JLCPCP: 2USD 2Layer 5PCBs, 5USD 4Layer 5PCBs

ATtiny25 Купить ЦенаКупить ATtiny25 на РадиоЛоцман.Цены — от 26,64 до 125
25 предложений от 12 поставщиков
Исполнение: SO-8. Микропроцессор AVR, 2K-Flash 128B-SRAM 128B-EEPROM, 20MHz, ADC 4x10bit, 40°C...85°C
Стандарт СИЗ
Россия
ATTINY25-20SSN
Atmel
27 ₽
ЭИК
Россия
ATTINY25-20SUR
Atmel
от 45 ₽
ДКО Электронщик
Россия
ATTINY25-20SSN
Microchip
от 54 ₽
Кремний
Россия и страны СНГ
ATTINY25-15SZ
по запросу
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя