Интерфейсы периферийных устройств. Параллельный интерфейс ввода-вывода. Принципы построения параллельных портов ввода/вывода микроконтроллеров, страница 8

B – 1 – включить мерцание

0 – выключить мерцание

void Display(bit D, bit C1, bit B)

{

WriteMax(0x1, 0x8 | (D)? 0x4:0 | (C1)?0x2:0 | (B)?0x1:0);

strobe(0x8);

}


Программа “ПРИВЕТ!”

main()

{

LCD_clear();

LCD_GotoXY(2,1);

LCD_Putch(0xA8); // П

LCD_Putch(0x50); // Р

LCD_Putch(0xA5); // И

LCD_Putch(0x42); // В

LCD_Putch(0x45); //Е

LCD_Putch(0x54); // Т

}



4.3.8. ЦАП и АЦП микроконтроллера

ЦАП с резистивно-взвешенными цепями

Схема 4-разрядного ЦАП

Rос – сопротивление обратной связи

Uвых = Uвх

Предположим, что все ключи разомкнуты, т. е. на вход подается код 0000. Следовательно, Uвых=0.

Пусть Rос=8R, Uопорное=8В.

  • Замкнули ключ К0 (код 0001): Uвых=
  • Замкнули ключ К1 (код 0010): Uвых=
  • Замкнули ключи К0 и К1 (код 0011): Uвых=
  • Замкнули ключ К2 (код 0100): Uвых=4В

…………….....................................

  • Замкнули ключ К0, К1, К2 и К3 (код 1111): Uвых=15В

АЦП с последовательным преобразованием

Преобразует напряжение в пропорциональный ему код.

Недостаток схемы: время преобразования зависит от Uвх.

Достоинство: предельная простота.

По сигналу «Пуск» счетчик сбрасывается в 0 (RESET), а триггер устанавливается в 1. С этого момента времени тактовые импульсы генератора начинают поступать на вход счетчика C.

Счетчик начинает подсчет. Цифровой код с выхода счетчика преобразовывается с помощью ЦАП в напряжение, которое сравнивается с входным напряжением в схеме сравнения. Если это напряжение больше или равно Uвх, то на выходе схемы сравнения формируется 1, которая сбросит триггер в 0. Счетчик останавливается.

АЦП с последовательным приближением

RG1 – сдвиговый регистр

RG2 – регистр памяти

R – reset  

S – set

По сигналу «Пуск» происходит запись 1 в младший разряд RG1 и в старший разряд RG2. Все остальные разряды RG2 обнуляются через схему «или». В этот момент времени на вход C поступают импульсы, по которым происходит сдвиг информации в регистре.

  • Код 100: этот код преобразуется в напряжение. Если это напряжение оказывается больше входного, то происходит сброс в 0 старшего разряда RG2. По очередному тактовому импульсу 1 в RG1 перемещается из младшего разряда в следующий разряд, при этом младший обнуляется. Одновременно происходит запись 1 в первый разряд RG2. Получаем код 010.
  • Код 010: если напряжение на выходе ЦАП меньше Uвх, то старший код RG2 остается без изменений.

Далее следующий код преобразуется в напряжение и сравнивается с Uвх и т. д. В результате через 3 такта все заканчивается. Когда 1 RG1 продвинется до старшего разряда, триггер T сбрасывается в 0, поступление импульса на вход C прекращается.

Время преобразования не зависит от напряжения.

Устройство выборки и хранения

Во время преобразования напряжение на входе АЦП не должно меняться. Для этой цели используется устройство выборки и хранения (УВХ).

На время заряда конденсатора влияет сопротивление входного источника. Оно должно быть минимальным. Чем больше сопротивление, тем дольше заряжается конденсатор. Для хранения ключ размыкается.

АЦП и ЦАП ADuC812

АЦП ADuC812. Входная цепь АЦП

АЦП имеет разрядность 12, цифровую микросхему. Очень сложно избавиться от высокочастотных помех.  Диапазон преобразования – от 0 до Vref – опорное напряжение.

Минимальным считается напряжение 2,5 В.

Uмзр=

Быстродействие – 420 000 преобразований/сек., частота выборок может быть 420 МГц.

Работает АЦП с 5 регистрами специальных функций.

·  ADC DATA H – 4 старших разряда

·  ADC DATA L – 8 младших разрядов        12 разрядов

Это регистры, в которые помещается результат преобразования.

Управляющие регистры

  • ADC CON1
  • ADC CON2
  • ADC CON3

MD1 – включение питания АЦП (1 – питание включено, 0 – питание выключено)

EXT REF – внешний/внутренний источник напряжения (1 – внешний, 0 - внутренний )

CH1               CH2                деление на

0                     0                       32

0                     1                        4

1                     0                        8