Главная » Микроконтроллеры
Призовой фонд
на январь 2017 г.
1. 5000 руб.
Академия Благородных Металлов
2. 1000 руб.
Radio-Sale
3. Регулируемый паяльник 60 Вт
Паяльник
4. 600 руб.
От пользователей
5. Тестер компонентов LCR-T4
Паяльник

Похожие статьи:


Электронная читалка своими руками на микроконтроллере 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 Поиск в FivelВ блокнот
D1, D2 Выпрямительный диод
1N4001
2 Поиск в FivelВ блокнот
С1, С2 Конденсатор22 пФ2 Поиск в FivelВ блокнот
С3 Электролитический конденсатор100 мкФ1 Поиск в FivelВ блокнот
С4 Конденсатор100 нФ1 Поиск в FivelВ блокнот
R1 Резистор
10 кОм
1 Поиск в FivelВ блокнот
R2-R4 Резистор
4.7 кОм
3 Поиск в FivelВ блокнот
R5-R7 Резистор
1 кОм
3 Поиск в FivelВ блокнот
LCD1 LCD-дисплейLM014L1 Поиск в FivelВ блокнот
X1 Кварц8 МГц1 Поиск в FivelВ блокнот
Кнопка4 Поиск в FivelВ блокнот
Выключатель1 Поиск в FivelВ блокнот
M1 Слот MMC1 Поиск в FivelВ блокнот
BAT1-BAT3 Батарея1.5 В3 Поиск в FivelВ блокнот
Добавить все

Скачать список элементов (PDF)

Прикрепленные файлы:

Теги:

Опубликована: 0 0
Я собрал 0 4
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 4.8 Проголосовало: 4 чел.

Комментарии (18) | Я собрал (0) | Подписаться

-5
while(1) #
Китайцы продают более лучшие читалки, с большими экранами и прочими функциями. А это так, но в обучающих целях отлично. Жалко, что не на "СИ".
Ответить
+6

[Автор]
alex98y #
Китайцы, китайцы... Вот поэтому современная молодёжь по подьездам шатается и здоровье разными гадостями гробят, ведь конечно проще китайское купить, ничего делать не хотят. Как по мне, то лучше сделать полезную вещь своими руками, пускай даже она будет проигрывать китайцу по параметрам и её себестоимость будет в несколько раз дороже. Я человек творческий и мне как для саморазвития и поддержания морали это нужно.
Ответить
0
Макс #
Китайские читалки не представляют дидактической ценности.
Ответить
0
Attiny2313 #
Можно и на си
Ответить
0
Nick #
Ну так вот, нужно присобачить больший дисплей!
Ответить
+1
Stelsing #
Так причем тут китайцы и их разработки? Там сколько денег и людей выделяют на разработку устройств...
А так очень хорошая идея, я о таком еще никогда не думал.
Ответить
0
Black #
Интересностью конструкции здесь является организация чтения файлов с флешки, отформатированной в FAT, ну а остальное дело техники. Сама идея интереснее не как читалка, а как шпаргалка... Дисплей поменьше бы (например от 3310) в виде часов, а остальное "в рукавах".
Лет 15 назад так и сдавал экзамены в школе, но читалось всё это с флешки 29F020 процессором Z80 и десятком микрух логики, в общем обрезок Спектрума и выводилось на дисплей от "тамагочи", правда была всего одна графическая строчка 32х8 пикселей, но скроллинг никто не отменял.
Ответить
0
Egor #
Как в протеусе увидеть русский на дисплее? В файл образа карты можно было бы положить один *.тхт файл, для примера...
Ответить
0
Борис #
А можно использовать LCD16*2? А то в моем городе 16*4 нигде нету. И еще вопрос: можно использовать atmega 16 вместо atmega 32?
Ответить
0

[Автор]
alex98y #
Чтобы испольовать LCD 16*2 нужно будет переделывать прошивку. Можно и Atmega16 использовать, нужно будет перекомпилировать прошивку для неё.
Ответить
0
Евгений #
Учусь программировать atmega8, пишу программы в Bascom, использую ЖКИ 1602 HD44780. Вопрос - как у Вас получилось отображать на контроллере HD44780 кириллицу?
Ответить
0

[Автор]
alex98y #
Дело в том что в ASCII таблице HD44780 присутствует кириллица, но не вся. Некоторые русские буквы можно заменить аналогичными английскими. Посмортите исходник, там я приводил ASCII адреса для отображения русских букв. Кстати, есть прекрасная программа Rus-LCD 20*2 вот она может переводить кириллицу специально для написания её в программе.
Ответить
0
Sem #
Я попытался переделать прошивку под Atmega16 и LCD 16*2 и у меня почему то не получается компилировать в HEX файл. Потом попробовал компилировать ваш исходник bas в hex. Тоже не получается. Почему не выходит, в чем ошибка и как у вас получилось в итоге получить hex? Если можете помогите с прошивкой. Очень нужен этот девайс. Заранее спасибо. Еще есть возможность добавить индикатор разряда АКБ?
Ответить
0
yuretc #
Как вы сделали так что заработало на атмега32? Мне Bascom выдает что недостаточно SRAM
Ответить
0

[Автор]
alex98y #
Я использовал "усечённые" библиотеки AVR-DOS. В интернете их полно
Ответить
0
fanzone #
Уважаемый автор, интересней было бы прикрутить дисплей типа wg12864
Ответить
0
Дмитрий #
А можно подключить дисплей побольше, не меняя прошивки?
Ответить
0

[Автор]
alex98y #
Нет
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическая мощность?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

AVR-программатор USB ASP
AVR-программатор USB ASP
Конструктор для сборки: предусилитель на лампе 6N3 Набор для сборки - УНЧ 2х60 Вт на TDA7294
вверх