Цап на основі резистивної матриці r-2r і його реалізація на мікроконтролері

1) Використання матриці R-2R в якості паралельного ЦАП.

Цап на основі резистивної матриці r-2r і його реалізація на мікроконтролері

Розглянемо матрицю, зображену на малюнку зліва.

Очевидно, що якщо всі ключі знаходяться в положенні "0", то вихідна напруга буде дорівнювати нулю.

Можна порахувати, що якщо ключ нульового розряду встановлено в положення "1", а всі інші в положення "0", то

якщо ключ першого розряду має значення "1", а всі інші в положення "0", то

якщо ключі нульового і першого розрядів встановлені в положення "1", а всі інші в положення "0", то

U вих = V * (1/16 + 1/8), і так далі ...

У загальному випадку отримаємо: U вих = V * (А0 * 1/16 + А1 * 1/8 + А2 * 1/4 + А3 * 1/2), де А i = 1, якщо відповідний ключ (Кi) знаходиться в положенні " 1 "і Аi = 0, якщо відповідний ключ знаходиться в положенні" 0 ".

Тобто, замикаючи різними способами ключі К0 ... К3 (або, інакше кажучи, подаючи на вхід четирехбітних число A3 A2 A1 A0) ми можемо одержати 2 4 = 16 різних значень вихідної напруги (від U вих = 0 до U вих = V * (1 -1/16) з кроком δ = V * 1/16).

Таким чином, дана схема є простим паралельний четирехбітних цифро-аналоговий перетворювач.

Аналогічно можна побудувати восьми, десяти, дванадцяти і взагалі n-бітний ЦАП.

У загальному випадку, для n-бітного ЦАП матимемо. U вих = V * Σ (Ai * 1/2 n-i). де i - номер розряду (i = 0, 1, 2 ... n-1), Ai = 1, якщо відповідний ключ замкнутий на шину живлення та Ai = 0, якщо відповідний ключ замкнутий на загальний провід.

крок в цьому випадку визначається за формулою: δ = V / 2 n. де n - загальне число розрядів

2) Реалізація ЦАП за схемою R-2R на мікроконтролері.

Припустимо у вас немає ЦАП, але є звичайний контролер з достатньою кількістю невикористовуваних ніг. Чи можна, використовуючи мікроконтролер, зробити ЦАП самостійно? Так, звичайно ж можна.

Візьмемо, наприклад, контролер PIC16F628A і подивимося в документації, як влаштовані його виходи:

Цап на основі резистивної матриці r-2r і його реалізація на мікроконтролері

Як бачимо, - для організації виходу використовуються два польовика, коли на виході "0" - верхній польовика (підключений до шини харчування) закритий, нижній (підключений до загального проводу) - відкритий, коли на виході "1" - навпаки, верхній відкритий, нижній закритий. Це якраз те, що потрібно, - ми можемо підтягти вихід або до землі, або до харчування. Тоді, задіявши вісім таких висновків і матрицю R-2R, - отримаємо восьмібітних цифро-аналоговий перетворювач:

Цап на основі резистивної матриці r-2r і його реалізація на мікроконтролері

Коли ми розглядали матрицю R-2R, ми вважали ключі ідеальними (опір замкнутого ключа дорівнює нулю), але в реальності опір замкнутих ключів (відкритих транзисторів) не дорівнює нулю. Для того, щоб вплив цих паразитних опорів можна було не враховувати, рекомендується вибирати опір R в 2 n (n - розрядність ЦАП) разів більше опору замкнутого ключа.

Оскільки в розглянутій схемі немає ніяких інтегруючих ланцюжків, то швидкодія такого ЦАП визначається виключно швидкодією контролера.

Для забезпечення точності перетворень необхідно забезпечити достатню для заданої точності стабільність харчування.