Контрольная работа: Регенерация динамического индикатора

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Оглавление

1. Нарисовать схему и пояснить работу индикатора в динамическом режиме

2. Как определить частоту регенерации динамического индикатора

3. Почему в динамическом режиме нужно увеличивать ток сегмента

4. Написать и пояснить программу индикации знакоместа

1. Нарисовать схему и пояснить работу индикатора в динамическом режиме

Главным отличием динамического индикатора является то, что индикаторы светятся по очереди. Это позволяет использовать общий семисегментный преобразователь для всех одноименных сегментов, что упрощает схему и уменьшает количество внешних выводов ОВМ.

Для подключения отдельных индикаторов к общему проводу источника питания имеются выводы общих катодов ОК0, ОК1, ОК2 соответственно для едини, десятков и сотен. Управляет подачей питания на декады дополнительный дешифратор типа К155ИД10, который служит и усилением тока.

регенерация динамический индикатор

2. Как определить частоту регенерации динамического индикатора

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

Для оценки частоты «смены кадра» Fk можно использовать кинематографический стандарт:

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

Временные диаграммы динамического индикатора:

3. Почему в динамическом режиме нужно увеличивать ток сегмента

Токи сегментов следует увеличивать во столько раз, сколько знаков в индикаторе иначе будет тусклое свечение, поскольку средний ток через сегмент, определяющий яркость, уменьшается с ростом числа знаков. Но преобразователь КР514ИД1 имеет внутренний токозадающие резисторы, что не позволяет изменить ток сегментов. Поэтому при большем числе знакомест следует использовать микросхему КР514ИД2 с внешним резистором, чтобы задать необходимый импульсный ток.

Таким образом, дешифратор КР514ИД1 формирует информационные сигналы на сегментах всех трех индикаторов. Но светиться будет только тот индикатор, катод которого подключен к общей точке т.е. подано питание.

4. Написать и пояснить программу индикации знакомест

Для управления динамическим индикатором в начале программы должны быть объявлены:

#define mKvoZn 3 // количество знакомест

data unsigned char mBufInd[mKvoZn]; // массив для буфера индикации

unsigned char mPtrZn=0; //переменная-указатель для индексации массива

В объявленном буфере для индикации должны храниться двоично-кодированных десятичные числа. Поэтому для преобразования значения байта (от 0 до 255) в три декады необходимо вычислить значения каждой из них, начиная со старшей. То есть, поделив байт на 100, получим число сотен, поделив остаток на 10, получим число десятков, а последний остаток будет числом единиц.

void mByteToBCDtoBufInd (byte mBt) {

mBufInd[2] = mBt / 100; // сотни

mBufInd[1]= (mBt % 100) / 10; // десятки

mBufInd[0]= (mBt % 100) % 10; // единицы

}

void mIndZn3 (void){

P1= mBufInd [mPtrZn] | (mPtrZn << 4); // Включаем знакоместо. mPtrZn++; // Подготавливаем следующий адрес.

If (mPtrZn== mKvoZn) mPtrZn = 0; //Все ли знакоместа обслужили?

}

Эта подпрограмма обычно вызывается из процедуры прерывания:

void mIntT0(void) interrupt TF0_VECTOR {

... // Загрузка на отсчет 10 мс, счет системных «тиков».

mIndZn(); // Индикация очередного знакоместа.

}