Электронная читалка своими руками на микроконтроллере ATmega32

Сколько себя помню всегда любил читать, но на дворе 21 век и порой необходимую литературу можно найти только в интернете. Да и читать электронные книги можно на электронном устройстве типа планшет, компьютер или ридер. В итоге получилось небольшое устройство, которое может читать текстовые файлы с SD или microSD карты и выводить их содержимое на экран.

mc220_1.jpg

Мозгом устройства служит микроконтроллер Atmega32 работающий на частоте 8МГц. МК тактируется от внешнего кварца на 8МГц, в качестве экрана устройства я применил небольшой ЖК индикатор WH1604A на контроллере HD44780 разрешением 4 строки по 16 знакомест каждая. Кнопки использовал обычные тактовые, что касается SD карты для её подключения к микроконтроллеру я использовал резисторные делители чтобы согласовать логические уровни.

Принципиальная схема устройства:

Схема

На схеме распиновка верна только для SD карты или SD адаптера, для подключения других карт пользуйтесь их распиновкой!

Устройство поддерживает SD, miniSD и microSD карты памяти размером до 4ГБ отформатированные в файловой системе FAT, FAT16. Следует помнить что устройство не поддерживает каталоги поэтому все файлы нужно записывать только в корень флешки. Текстовые файлы должны быть в обычном txt формате и без форматирования, имена файлов должны быть не длинее 8 знаков (не считая расширения).

При включении устройства на дисплее появится заставка:

DispLoad.png

Если SD карта не установлена в устройство, неправильно подключена, или ещё чего то появится следующие сообщение:

DispSDerr.png

Если же всё в порядке, то появится главное меню:

DispMenu.png

Пользуясь кнопками вы можете войти в пункт «Обзор файлов» где можете выбрать нужный вам для прочтения файл.

DispFiles.png

В пункте «Настройки» вы можете выбрать с каким расширением файлы отображать в «Обзоре файлов».

DispSetting.png

И в последнем пункте «О системе…» вы можете почитать информацию об устройстве, его авторе и т.д.

DispAbout.png

Прошивку для устройства я писал в среде BASCOM-AVR с использованием библиотеки AVRDOS, прошивка занимает всего 30% программной памяти микроконтроллера поэтому есть место для творчества. Внутри устройство собрано на двух печатных платах: на одной расположен МК с обвесом, на другой разъём под SD карту и согласующие цепочки логических уровней.

Вот фото устройства внутри:

mc220_2.jpg

Для питания я использовал Ni-Cd аккумулятор на 4.8В, 600мАч. После прошивки микроконтроллера необходимо установить следующие фьюз-биты:

fuse(11).png

Список радиоэлементов

Обозначение Тип Номинал Количество Примечание Магазин Мой блокнот
U1 МК AVR 8-бит ATmega32 1
D1, D2 Выпрямительный диод 1N4001 2
С1, С2 Конденсатор 22 пФ 2
С3 Электролитический конденсатор 100 мкФ 1
С4 Конденсатор 100 нФ 1
R1 Резистор 10 кОм 1
R2-R4 Резистор 4.7 кОм 3
R5-R7 Резистор 1 кОм 3
LCD1 LCD-дисплей LM014L 1
X1 Кварц 8 МГц 1
Кнопка 4
Выключатель 1
M1 Слот MMC 1
BAT1-BAT3 Батарея 1.5 В 3