дповідно до рис. 12. br/>В
Рис. 12 - Приклад транзакції
В якості ЦАП використовуємо AD421 з струмовим виходом 4 мА - 20 мА
В
- завершений перетворювач цифрового коду в струмовий сигнал, розроблений для ринку промислових систем управління. Він забезпечує високу точність, низьку вартість рішення задачі генерації струмового сигналу на одній мікросхемі і поставляється в компактному 24-вивідному SOIC або PDIP корпусах. p align="justify"> Діапазон вихідних струмів може програмуватися на 4 мА-20мА, 0 мА-20 мА або на розширений діапазон 0 мА-24 мА. AD420 може генерувати і сигнал напруги з налаштованим діапазоном 0 В-5 В, 0 В-10 В, В± 5 В або В± 10 В з додатковим зовнішнім буферним підсилювачем. p align="justify"> Наявність послідовного інтерфейсу зі швидкістю 3.3 Мбіт/с мінімізує вартість пристроїв з гальванічною розв'язкою і забезпечує просте приєднання до мікропроцесорах. Він може використовуватися в трипровідних або асинхронному режимах, вихід послідовної передачі може використовуватися для організації шлейфним підключення декількох ЦАП на тій же стороні ізоляційного барьера.іспользует технологію сигма-дельта цифро-аналогового перетворення для забезпечення 16-розрядної перетворення і низької вартості. Час встановлення виходу у всьому діапазоні шкали становить 0.1% за 3 мс. Єдино необхідні навісні компоненти (для нормальної перехідної схеми захисту) - два недорогих конденсатора для вбудованого фільтра. br/>В
Рис. 13 - Підключення AD420
За ЦАП будемо передавати значення струму датчика таким чином що:
А-4мА
А-20мА.
Тобто потрібно помножити значення струму датчика на 0.64 і додати 4.
Для перевірки правильності встановлення режиму UART і швидкості передачі проведемо симуляцію в Протеус.
Передаємо число 1:
В
Рис. 14 - Результат моделювання передачі по UART
В
Рис. 15 - Блок-схема програми передачі-прийому HART
Для підсумовування 2-х струмів і застосуємо операційний підсилювач струму OPA660
В
Рис. 16 - Модель в OrCADE OPA660
В
Рис. 17 - Вихідний струм
5. Індикація
В якості індикатора виберемо LM032L.
Текст програми:
В В
Спочатку необхідно ініціалізувати дисплей-це виконує підпрограма LCD_init (). Далі йде вже власне передача на дисплей значення струму. br/>В
Рис. 18-Результат моделювання індикатора
6. Сторожовий таймер
Для захисту від зависання використовуємо апаратно вбудований в мікроконтро...