виконаного на однокристальному мікроконтролері Atmega16. p> У зв'язку з досить великою кількістю семисегментних індикаторів слід використовувати схему динамічної індикації. Для цього інформаційні входи семисегментних індикаторів підключені до виходів дешифратора К514ІД1, а загальний вхід кожного індикатора - до виходу 4-розрядного дешифратора К1564ІД5. На вхід К514ИД1 від мікроконтролера подається код символу, на вхід К1564ІД5 - код активного індикатора. Кожен індикатор має активуватися з частотою не менш 40 Гц (частота, при якій мерехтіння індикаторів непомітно для очей). Для відображення інформації при такому підключенні потрібно один порт, в даній схемі для цих цілей виділено порт PC. Оскільки у дешифратора семисегментний індикатора управління коми не передбачено, то для слід виділити ще один висновок мікроконтролера, в даному випадку PD7.
Клавіатуру зручно побудувати у вигляді матриці 3'4, для її сканування потрібно один порт, в даному випадку PB.
Для оцифровки сигналу датчика використовується вхід мікроконтролера ADC0.
Для визначення ваги товару з точністю до грама при максимальній вазі 1кг потрібно 10-ти розрядний АЦП, вбудований в мікроконтролер. p> В В
DB CCD CNTL
RD SHIFT
WR RL
CS
A0 SL
IRQ
CLK BD
RES OB, OA
br clear=ALL>В
Малюнок 3.1 - Функціональна схема контролера
4 Розробка алгоритму керуючої програми
Незалежно від завдань, виконуваних мікроконтролером, алгоритм керуючої програми, як правило, складається з двох частин:
- початкова завантаження регістрів і значень змінних, ініціалізація зовнішніх пристроїв;
- нескінченний цикл, в якому зазвичай відбувається опитування зовнішніх сигналів і оновлення інформації як для внутрішніх регістрів, так і для зовнішніх пристроїв.
У електронних ваг повинно бути два режими роботи: режим зважування та режим редагування ціни за одиницю продукції. Щоб їх розрізняти, введений спеціальний байт status. При скиданні ваги повинні знаходитися в режимі редагування, контролер в цьому режимі, очікує введення значення ціни або її підтвердження шляхом натискання клавіші введення. У режимі зважування контролер перераховує значення вартості зваженої продукції залежно від ваги та ціни.
Для відображення чисел на екрані необхідна спеціальна підпрограма, перетворююча число в послідовність виведених символів.
В
Малюнок 4.1 - Схема алгоритму прикладної програми
5 РОЗРОБКА СХЕМИ ЕЛЕКТРИЧНОЇ ПРИНЦИПОВОЇ
Схема електрична принципова повністю приведена в додатку.
При використанні контролера Atmega16 фірмою-виробником рекомендовано використовувати паралельно кожній парі висновків харчування приєднувати помехозащіщающій конденсатор ємністю не менше 1мкФ. На схемі ці конденсатори позначені C1 і C2, обраний тип К10-17-10В-1мкФ В± 10%. Між лінією RESET і плюсом живлення підключається резистор з типовим значенням 10 ком (на схемою - R1), між лінією RESET і мінусом харчування - конденсатор ємністю 1мкФ (на схемі - C4). Така схема дозволяє уникнути помилкового скидання мікроконтролера.
Паралельно лініях XTAL1 і XTAL2 під'єднується кварцовий резонатор, частота якого для даного мікроконтролера зазвичай дорівнює 16МГц. Між мінусом харчування та лініями XTAL1 і XTAL2 ставляться конденсатори ємністю (20 .. 30) пФ (на схемі - C3 і C5).
Для посилення сигналу з датчика ваги слід застосувати вимірювальний підсилювач. Схема такого пристрою часто включає в себе декілька операційних підсилювачів, але може випускатися в інтегральному виконанні. В якості вимірювального підсилювача обрано мікросхема INA128, яка в якості додаткових пасивних елементів вимагає тільки резистор для регулювання коефіцієнта посилення (на схемі - R2), який визначається за формулою:
, (5.1)
де K - необхідний коефіцієнт підсилення.
Наприклад, при K = 100 розраховане за формулою значення R G одно 505 Ом, воно округлюється до значення з ряду номіналів E6, рівне 510 Ом. Краще застосовувати підлаштування резистор з метою калібрування коефіцієнта підсилення.
У клавіатурною матриці опитувані лінії повинні бути підтягнуті до плюса живлення через резистори, типове значення яких дорівнює 10кОм (На схемі - R4-R6). p> Для відображення інформації обрані семисегментні індикатори SA04-11 із загальним анодом, кожен з яких споживає максимальний струм 160мА, кожен сегмент споживає струм I сег = 20мА. Опір, що обмежує струм лінії PD7, розраховується за формулою:
, (5.2) p> Округляючи зн...