Кіберпріглашеніе на весілля або про те, як ефектно зруйнувати шаблони

  1. екран
  2. контролер
  3. батарейка
  4. Будь-яке інше

На Хабре вже багато писали про саморобних електронних пристроях різного калібру. Те, про що хочу розповісти я, не варто ставити в один ряд з "розумним будинком" або виробництвом дерев'яних мишей. Напевно, ті, хто тільки починає розважатися з DIY і думають, з чого починати, знайдуть для себе що-небудь корисне. Я сподіваюся, цей пост зайвий раз переконає новачків в тому, що в нашій справі годиться будь-яка, навіть сама дивна, на перший погляд, ідея.
На Хабре вже багато писали про саморобних електронних пристроях різного калібру

Все почалося з того, що в один прекрасний день я вирішив одружитися! Заява, підготовка до свята, всі справи. Але ось завдання: зробити оригінальні запрошення на весілля. Підписувати шматки картону не хотілося. Душа просила хардкорного гендмейду, далекого від традиційних весільних шаблонів. І ось на моє "і взагалі, можна електронні девайси зробити" наречена сказала: "Круто! Давай! "

До того моменту мій досвід зводився до споювання Фрідуіни з набору детальок і ритуального миганню світлодіодом. Я з жахом прикинув, що руками належить зібрати не один і не два, а 33 екземпляра, заздалегідь попрощався з майбутніми влітку - і понеслась ...
Лютий. Весілля в серпні, але мені вже здавалося, що я нічого не встигну. Тому що, чорт його знає, де і що піде не так. Однак, поступово став вимальовуватися план: зліпити в один шматок LCD-екранчик, батарейку, кнопку і який-небудь контролер, щоб після натискання кнопки пристрій показувало на екрані повідомлення по рядках.

Жанр "Запрошення" тут же продиктував свої доптребованія. Важливо було, щоб батарейка не витрачати вся за один-два показу і щоб повідомлення на всіх примірниках були різні. До того ж (і про це мене щогодини благала наречена) хотілося, щоб результат моїх експериментів виглядав як хоч і кустарний, але продукт. Тобто не розвалювався в руках і не розгортає в усі сторони петлі проводів.

екран


Підібрав в каталозі найближчого магазинчика радіодеталей, взяв спочатку один на пробу. За характеристиками вийшло наступне: LCD, текстовий, російські літери, 1 рядок в 16 символів, без підсвічування. Називається WH1601A-NGG-CT ( datasheet ), Варто сто з гаком рублів. Виявився хвилі вдалий екранчик, пізніше закупив їх цілу коробку:
Підібрав в каталозі найближчого магазинчика радіодеталей, взяв спочатку один на пробу

контролер


Контролер підібрав з каталогу Atmel (на сайті Atmel тисніть MCU Selector). Atmel, тому що з Ардуіно у мене вже був маленький досвід, а на easyelectronics є відмінний курс про AVR-контролери . Шукав такий,

  • щоб ніг вистачало, але було якомога менше
  • щоб DIP-корпус (SMD я ще не паял і не хотів ризикувати),
  • щоб енергоспоживання могло бути маленьким
  • і щоб в найближчому магазині було в наявності.

вийшло ATTiny 2313A-PU ( даташит ).

батарейка


Екранчику потрібно було харчування 5В, тому після недовгих досліджень вирішив використовувати пару батарейок CR2016, складених стопкою в тримачі для CR2032.

Будь-яке інше


Як не дивно з'ясувалося, що дріб'язок (резистори, конденсатори та ін.) Оптимальніше купувати не в СПб, а замовляти з під Йошкар-Оли (магазинчик ekits.ru). Знайшлося все і за нормальними цінами.

Освоїв екранчик: припаяв до нього дроти, поекспериментував з Ардуіно, домігся, щоб він писав букви по черзі з заданими паузами. Бібліотеками не користувався, хотів все сам. Ось такий код вийшов.
Все було готово до роботи над прототипом.
Березень квітень. Довгий період написання прошивки на асемблері (навмисно не на С, щоб краще відчути архітектуру), малювання і розводки схеми. Показав нареченій. "А давай", - говорить вона мені - "воно ще й лампочками блимати буде". Довелося в процесі вбудувати "ще й лампочки": додав дві пари світлодіодів і роботу з перериваннями, розводка дещо ускладнилася. (Світлодіоди замовляв все так же, з Йошкар-Оли). Схема в результаті вийшла така:
Як не дивно з'ясувалося, що дріб'язок (резистори, конденсатори та ін
Для початківців, як я, пояснення до схеми:
Пояснення до схеми

Посередині контролер, праворуч екранчик. Сім проводів від контролера до екранчику це три керуючих і четирёхбітная шина даних. Все по даташіту. Харчується екранчик не безпосередньо, а з ніжки PD2 (контакт V-LCD), це через те, що більшу частину часу девайс не працює, контролер йде в sleep, і на харчування екранчика батарейку теж не витрачає. Ще там є VO-LCD, який подається на контакт VO екранчика. Згідно даташіту туди треба подавати деяку напругу більше нуля, але менше VCC, цим напругою регулюється контраст екранчика. Даташит пропонує пхати туди реостат і регулювати на ходу. Але не в кожну же плату реостат пхати! Так що підібрав напруга експериментально і спорудив дільник напруги, щоб його отримати. Це ось конструкція з двох резисторів внизу. Ще внизу намальовано, що харчування спочатку береться з батарейки і що в харчування вставлений конденсатор для захисту, наприклад, від брязкоту при вставлянні свіжих батарейок. Ну, власне і все. Ще там є кнопка ресета і чотири світлодіода, включені попарно.


А ось така прошивка .
Розводка для першого разу вийшла непроста, так що цілком ймовірно, що я порушив якісь канони. Довелося уживатися з купою умов:

  • Плата за розмірами повинна була бути трохи більше екранчика, щоб зручно було тиснути на кнопку старту.
  • Конектор і кріпильні дірки - відповідати коннектор і діркам на платі екранчика. (Дірки я потім з'єднав гвинтами).
  • Світлодіоди (по дизайнерської задумом) - обов'язково стежити в різні боки.

В результаті обійшовся двома перемичками, на схемі вони сині:
В результаті обійшовся двома перемичками, на схемі вони сині:   Зібрав все на макетке, довго налагоджував, домігся щоб працювало
Зібрав все на макетке, довго налагоджував, домігся щоб працювало ... Так, порушували Ардуіно за схемою, розжовані тут Схеми вимагає з'єднати ресет з харчуванням через резистор: я резистор підвісив прямо в дріт.
І так, важливо було, щоб в кожному девайсе був персоналізований текст (запрошення же!). Текст зберігався в прошивці у вигляді дампа ( ".db 0xa2, 0xa3 ..."). Причому таблиця кодування у екранчика своя і з особливостями. Вона, наприклад, економить і містить тільки ті букви кирилиці, для яких немає аналога на латиниці. Для зручної перекодування зробив утилітки на java .
Довго чи недовго до травня у мене був вже працює девайс, але на макетке. Харчування працювало і від USB (через Ардуіно і прошівательний проводок), і від батарейок. Виглядало все це ось так:

На відео я запускаю процес, натискаючи на плату - це тому що кнопку я помилково припаяв з іншого боку. 8)
На фінальній платі роз'єму для програмування не робив. Просто вставляв чергову мікросхему в ліжечко на макетке, порушували і впаюються в плату. Негнучко, але економить отвори і компоненти. І час, звичайно.

Йшов травень. Я почав робити перший екземпляр. Розписувати ЛУТ і травлення не буду, мануали DiHALT`а всі читали. Розповім лише про окремі особливості та відмінності від мануала.

  • Труїв в суміші мідного купоросу і повареної солі. Це менш їдко і інгредієнти лежать в найближчому будівельному супермаркеті.
  • Свердлив свердлом в 1мм по металу (менше в тому супермаркеті не було) і дрилем, справжньою, повнорозмірною. Рука виявилася досить тверда, щоб не поламати свердло і не змазати отвір. А шуруповерт виявився, хоч і легше, але занадто повільний. До речі, зовсім вірна рекомендація про те, що треба берегтися пилу! Вона дуже дрібна, біла і майже не видно, якщо не зсипати купкою. Але якщо виявиться в повітрі, горло дере страшно.
  • Спочатку лудив, а потім свердлив, хоча все всюди рекомендують навпаки. Але так само простіше! Ободок отвори стає товщі і на початку свердління додатково поправляє приціл.
  • Робив партіями - так швидше. Тобто, десяток плат проходять першу стадію, потім другу і т.д. Виходить менше перемикань контексту, менше перекладань інструменту і, відповідно, швидше робота. Стадії такі:
    1. Відрізати шматок плати і пошкуріть
    2. Пригладити папірець з малюнком і відмити її
    3. протравити плату
    4. залудити доріжки
    5. насверліл отворів
    6. Припаяти все крім контролера
    7. Вставити контролер в макетке і прошити
    8. впаяти контролер
    9. З'єднати з екранчіком гвинтами


Вийшло ось так. На відео, правда, поки без гвинтів.

От і все. Пристрої були готові.
Вийшло ось так

Залишалося доповнити девайс чимось, що робило б його ще більш схожим на запрошення. З цим завданням чудово впоралася наречена, яка придумала підвісити пристрій на маленькій саморобній вудці (раз лампочками блимати, то чому б і не на вудці).
Звичайно, як і годиться, написали пристрою інструкцію по експлуатації та упакували в саморобні ж розписані коробочки. Коли все дістаєш, виглядає ось так:

А інструкція, яку видно на фотографії, ось так
Загалом, ефект досягнутий! Гості в захваті, весілля вдалася, у нас - по плюс-багато до досвіду і бажання продовжувати експерименти ...

© 2008 — 2012 offroad.net.ua . All rights reserved. by nucleart.net 2008