оти, які повинні вибиратися програмним шляхом за допомогою мікропроцесора. p align="justify"> Сучасні мікроконтролери, або, як їх ще називають, однокристальних мікроЕОМ, зазвичай завжди містять у своєму складі один або кілька вбудованих таймерів-лічильників.
Приклад. Мікроконтролери серії AVR мають від одного (в мікросхемі AT90S1200) до чотирьох (в мікросхемі ATmegal28) вбудованих таймерів/лічильників. Це дозволяє при формуванні тимчасових інтервалів обійтися без зовнішніх таймерів. br/>
1.9 Дешифратори
Пристрій і принцип дії дешифратора
Ще один елемент, без якого не обійтися при вивченні мікропроцесорної техніки, - це дешифратор цифрових сигналів. Існує багато різних типів дешифраторів. У загальному випадку дешифратор - це пристрій, що перетворює цифровий сигнал, представлений в якій-небудь одній з кодувань, в іншу, незакодований форму. Нас у даному випадку буде цікавити класичний лінійний дешифратор. Схемне позначення одного з варіантів такого дешифратора наведено на рис. 8.1. Описуваний дешифратор має три входи даних DO, D1 і D2, вхід вибору мікросхеми CS, а також вісім виходів, позначених цифрами від 0 до 7. p align="justify"> Логіка роботи мікросхеми така: на входи даних мікросхеми подається цифровий код. У даному випадку - це будь-яке Трехразрядное двійкове число. Сенс роботи такого дешифратора - видати активний сигнал тільки на одному зі своїх виходів. На тому виході, номер якого відповідає бінарного коду, присутнього на його входах D0-D2. p align="justify"> У більшості сучасних дешифраторів активним сигналом на виході вважається низький логічний рівень. Це означає, що при вступі на входи D0-D1 сигналу 0002, на виході В«0В» буде логічний нуль, а на всіх інших виходах - одиниця. br/>В
2. Лабораторна № 2
.1 Загальні положення
Головне завдання цієї дисципліни - навчитися створювати програми для мікроконтролерів. Як можна дізнатися з попередніх занять, програма для мікроконтролера - це набір кодів, який записується в його спеціальну програмну пам'ять. Програму повинен написати програміст, який розробляє ту чи іншу конкретну мікропроцесорну систему. p align="justify"> Однак програміст ніколи не має справу з кодами. Часто програміст навіть і не замислюється про те, який код відповідає тій чи іншій команді. Справа в тому, що для людини програмування в кодах дуже незручно. Людина ж не комп'ютер. p align="justify"> Для людини зручніше оперувати з командами, кожна з яких має своє осмислене назву. Тому для написання програм людина використовує мови програмування. p align="justify"> Визначення. Мова програмування - це спеціально розроблений мова, службовець посередником між машиною і людиною. Як і звичайний людський мову, будь-яку мову програмування має свій словник (набір слів) і правила їх написання. p align="justify"> В якості слів у мові програмування виступають:
В· команди (оператори);
В· спеціальні керуючі слова;
В· назви регістрів;
В· числові вирази.
Головне завдання мови - однозначно описати послідовність дій, яку повинен виконати ваш мікроконтролер. У той же час мова повинна бути зручний і зрозумілий людині. p align="justify"> У процесі створення програми програміст просто пише її текст на комп'ютері точно так само, як він пише будь-який інший текст. Потім програміст запускає спеціальну програму - транслятор. p align="justify"> Визначення. Транслятор - це спеціальна програма, яка переводить текст, написаний програмістом, в машинні коди, тобто у форму, зрозумілу для мікроконтролера. p align="justify"> Написаний програмістом текст програми називається вихідним або об'єктним кодом. Код, отриманий в результаті трансляції, називається результуючим або машинним кодом. Саме цей код записується в програмну пам'ять мікроконтролера. Для запису результуючого коду в програмну пам'ять застосовуються спеціальні пристрої - програматори. p align="justify"> Всі мови програмування діляться на дві групи: мови низького рівня (машиноорієнтованої); мови високого рівня.
Типовим прикладом машиноорієнтованої мови програмування є мова Асемблер. Ця мова максимально наближений до системи команд мікроконтролера. Кожен оператор цієї мови - це, по суті, словесне назва якої конкретної команди. p align="justify"> У процесі трансляції така команда просто замінюється кодом операції. Складаючи програму мовою Асемблер, програміст повинен оперувати тими ж видами даних, що і сам процесор, тобто байтами і бітами. p align="justify"> Специфіка мови Асемблер полягає ще і в тому, що набір операторів для ...