пристрою з комп'ютером та іншими пристроями що підтримують послідовний інтерфейс обміну даними;
Serial.begin () - Ініціює послідовне з'єднання і задає швидкість передачі даних в біт/c (бод). Для обміну даними з комп'ютером використовуйте наступні значення: 300, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600 або 115200, в нашому випадку стандартні +9600;
функція pinMode - установка режиму роботи заданого вхід/виходу (pin) як входу або як виходу;
ключове слово void - використовується при оголошенні функцій, якщо функція не повертає ніякого значення при її виклику (у деяких мовах програмування такі функції називають процедурами);
функція setup - викликається, коли стартує програма, використовується для ініціалізації змінних, визначення режимів роботи висновків, запуску використовуваних бібліотек тощо Функція setup запускає тільки один раз, після кожної подачі живлення або скидання плати;
функція Loop - після виклику функції setup, яка ініціалізує і встановлює початкові значення, функція loop робить те, що означаєїї назву, і крутиться в циклі, дозволяючи програмі здійснювати обчислення і реагувати на них, використовується для активного керування платою.
Трохи про взаємодій модуля з апаратними та програмними засобами.
Всі мікроконтролери AVR мають хоча б один послідовний порт (UART, іноді називають USART). МК володіє декількома способами спілкування з іншими пристроями. Платформа дозволяє встановити послідовне (Serial UART TTL) з'єднання через контакти 0 (RX) і 1 (TX). Встановлений на платформі чіп ATmega8U2 транслює це з'єднання через USB: на комп'ютері стає доступний віртуальний COM-порт. Програмна частина включає утиліту, що дозволяє обмінюватися текстовими повідомленнями з цього ка-налу. Окрема бібліотека дозволяє організувати послідовне з'єднання з використанням будь-яких інших контактів, не обмежуючись штатними 0-м і 1-м. Важливо враховувати, що використавши функції Serial, не можна одночасно з цим використовувати порти 0 і 1 для інших цілей.
Тепер можна приступити до ініціалізацій АЦП.
Наведу шматочок коду, який буде збережений під вбудовувану бібліотеку середовища розробки. Бібліотека ініціалізацій АЦП буде задіяна в програмі. Знайти цей код можна в додатків Г.
На основі вищевикладеного матеріалу, а так же блок схеми було написана основна програма. Код представлений в додатків Д.
Таким чином, використання вбудованого АЦП дає можливість безпроблемної синхронізацій датчиків і мікроконтролера. АЦП мікроконтролера має ряд характеристик: роздільну здатність, абсолютну точність, граничну частоту дискретизації і діапазон вхідних напруг, які дозволяють повною мірою досягти поставленої мети.
2.3 Сумісність устаткування і інтерфейси
Один з найбільш важливих кроків, який слід зробити до запуску програми на мікроконтролері, полягає в тому, щоб переконатися в їх сумісності з продуктами сімейства передавачів.
Для цього в обох модулях застосовується інтерфейс UART (Universal asyn-chronous receiver/transmitter) або, по-російськи, УАПП (універсальний асинхронний приймач) - найстаріший і найпоширеніший на сьогоднішній день фізичний протокол передачі даних.
Майже кожен мікроконтролер має на борту універсальний послідовний інтерфейс - UART. AVR тут не виняток і підтримує цей протокол в повному обсязі повністю апаратно. За структурою це звичайний асинхронний послідовний протокол, тобто передає сторона по черзі видає в лінію 0 і 1, а приймаюча відстежує їх і запам'ятовує. Синхронізація йде за часом - приймач і передавач заздалегідь домовляються про те на якій частоті йтиме обмін. Це дуже важливий момент! Якщо швидкість передавача і приймача не будуть збігатися, то передачі може не бути взагалі, або будуть лічені не ті дані.
Для зв'язку з цієї протоколу використовуються основні робочі ліній RXD і TXD, або просто RX і TX. Передавальна лінія - TXD (Transmitted Data), а порт RXD (Received Data) - приймаюча. Ці лінії зустрічаються і у СОМ-порту задіяні при передачі без апаратного управління потоком даних. Вихід передавача TX з'єднаний з входом приймача RX і навпаки як показано на малюнку 2.11.
Малюнок 2.11 - З'єднання висновків TX-RX
Що стосується швидкості роботи існують номінальні швидкості роботи: 9600, 28800, 33600, 56000 і т.п. Тобто якщо швидкість нас 9600 біт в секунду, то це означає, що передача одного біта буде займати 1/9600 секунди, а пересилання байта - 11/9600. І така швидкість для байта вірна тільки у випадку, якщо стоп-біт буде займати один біт. У випадку, якщо він займає два стоп...