Краткое описание и предназначение устройства
Данное устройство собирал ради интереса, какой-то конкретной цели не ставил, но получилось довольно любопытно. Идеально подойдет для освоения азов бэйсика. В планах расширить бэйсик, добавить команды для управления внешними устройствами и считывания информации с датчиков. Записав программы в EEPROM и отладив взаимодействие контроллера с периферией можно найти не мало применений этому девайсу. Один из главных плюсов которого будет заключаться в автономности и для того, что-бы переписать программу не придется тащить контроллер к программатору, а просто подключив дисплей с клавиатурой сразу через среду TinyBasic вести необходимые поправки.
А пока немного о самом устройстве.
Основные технические характеристики
- Ширина шины данных — 8 bit
- Тактовая частота — 16 МГц
- Размер ОЗУ — 16 Кб
- Тип ОЗУ — SRAM
- Размер ПЗУ — 4 Кб
- Тип ПЗУ — EEPROM
- Рабочее напряжение контроллера: от 4.7 до 5.5 В
- Питание: от 5 до 35 В (за счет L7805AB)
- Рабочая температура: от -40 до +85 С
Принципиальная схема
Описание работы принципиальной схемы
На питании установил стабилитрон с 2мя конденсаторами соответственно (для того, что-бы Атмега работала стабильно от 5 Вольт). Поставил кварц на 16 Мгц и 2 SMD конденсатора (для 16 Мгц можно брать в диапазоне от 10 до 30 пФ, а то может не стартовать). По большому счету особенностей в схеме больше нет. А еще Reset вывел на +5В, что-бы избежать случайного сброса.
Используемые радиоэлементы в схеме. Цена
Цены списал с накладной, которая пришла мне вместе с радиоэлементами.
- х1 ATmega1284P-PU — 600р
- х1 L7805AB — 20р
- х1 Кварцевый резонатор на 16МГц — 14р
- х1 Светодиод зеленый — 5р
- х1 Вилка штыревая (PLS-40) — 15р
- х2 Конденсатор на 22 пФ х 50В — 2р
- х1 Mini DIN (6 pin) — 22р
- х1 Разъем питания 2,1х5,5х14мм (NP-119B) — 17р
- х1 Гнездо питания на плату 2.0х5,5мм (K375A) — 21р
- х1 Тюльпан на плату (RS-105A) — 13р
- х1 DIP панель 40 контактов широкая (SCL-40) — 18р
- х1 Cтеклотекстолит 1-сторонний, фольгированный (FR4 100х150мм) — 170р
- х1 Конденсатор электролитический 0.33мкФ, 50В (К50-35 мини) — 5р
- х1 Конденсатор электролитический 0.1мкФ, 50В (К50-35 мини) — 5р
- х1 Резистор углеродистый 1 кОм — 1р
- х2 Резистор углеродистый 470 Ом — 2р
Общая стоимость всех компонентов: 930 рублей.
Описание ПО и прошивки, фьюзы
Сразу по фьюзам:
LOW: 0xFF
HIGH: 0xD9
EXTENDED: 0xFF
Различия от заводских:
— убрал делитель
— переключил Атмегу на внешний кварц
— отключил JTAG
Прошивал контроллер через USBasp.
Для особо ленивых оставлю hex файл, а если у вас будет желание поработать с кодом, то оставлю архив с прошивкой (TinyBasic Plus) и библиотеками (TvOut — отвечает за вывод видео-сигнала, Keyboard — связь с клавиатурой, TVoutFonts — шрифт, а так-же Spec и Pollserial).
Поподробнее о прошивке
TinyBasic — это один из диалектов языка Basic, который использовали для экономии памяти на микроконтроллерах, тк он был достаточно урезан и занимал 2-3 Кб. TinyBasic Plus в свою очередь переписанный энтузиастами TinyBasic под Ардуино.
Документация по языку ниже.
Печатная плата
Печатал по лазерно-утюжной технологии.
Трафареты прикрепил ниже.
Фото собранного устройства
Список радиоэлементов
Обозначение | Тип | Номинал | Количество | Примечание | Магазин | Мой блокнот |
---|---|---|---|---|---|---|
MK1 | МК AVR 8-бит | ATmega1284P | 1 | |||
Линейный регулятор | L7805AB | 1 | ||||
LED1 | Светодиод | 5В, 3мм | 1 | |||
C1 | Электролитический конденсатор | 0.33мкФ. 50В | 1 | |||
C2 | Электролитический конденсатор | 0.1мкФ. 50В | 1 | |||
C3, C4 | Конденсатор | 22пф, 50В | 2 | |||
R1, R2 | Резистор | 470 Ом | 2 | |||
R3 | Резистор | 1 кОм | 1 | |||
Q1 | Кварцевый резонатор 16Мгц | 1 | ||||
Вилка штыревая (PLS-40) | 1 | |||||
Разъем Mini DIN (6 pin) | 1 | |||||
Разъем питания 2.1х5.5х14мм (NP-119B) | 1 | |||||
Гнездо питания на плату 2.0х5.5мм (K375A) | 1 | |||||
Тюльпан на плату (RS-105A) | 1 | |||||
DIP панель 40 контактов широкая (SCL-40) | 1 | |||||