Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
5_Таймеры и т.д.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
82.94 Кб
Скачать

4. Функции для 5-цифрового жкд

Контроллер имеет 5 цифровой 7-и сегментный индикатор. Индикаторы пронумерованы как 1, 2, 3, 4 и 5 слева на право. Перед использованием их, пользователь должен вызвать функцию void Init5DigitLed (void), и затем вызывать функцию:

int Show5DigitLed(int pos,int data)

Параметр pos может быть 1, 2, 3, 4 и 5 - определяет положение цифры. Параметр data может принимать значения от 0 до 17 (16-ичные цифры, 16 – пусто, 17- символ “-”).

Для вывода цифры с точкой следует вызывать функцию:

int Show5DigitLedWithDot(int pos,int data)

Функция int Show5DigitLedSeg(int pos, int data) показывает любой сегмент индикатора, в том числе точку, как восьмого сегмента. Параметр data может принимать значения от 0 до 255.

Это число рассматривается как двоичное число, где каждый бит определяет один сегмент. Если бит равен 1, то сегмент включен. Например, если пользователь хочет вывести символ “L”, то следует включать битов 1, 2 и 3. Тем самым, значение параметра Data должен быть 0х0Е (00001110b).

Функция void Set5DigitLedTestMode(int mode) устанавливает индикаторов в нормальный режим (mode=0) или в режим тестирования (mode=1). В режиме тестирования все сегменты будут включены и будут светится ярко.

Функция void Set5DigitLedIntensity(int intensity) устанавливает режим интенсивности свечения. Параметр intensity может принимать значения от 0 до 15. Чем больше число, тем меньше яркость свечения. По умолчанию яркость равен 7.

Функция void Disable5DigitLed(void) отключает всех индикаторов. Тем самым, при выполнении некоторых условий временно индикаторов можно отключить. Для повторного включения следует вызвать функцию:

void Enable5DigitLed(void)

Пример 1. Вывод на индикатор числа 7188d

Init5DigitLed( );

Show5DigitLed(1, 7);

Show5DigitLed(2, 1);

Show5DigitLed(3, 1);

Show5DigitLed(4, 8);

Show5DigitLed(5, 13); //’d’ – есть 13

Пример 2. Вывод на индикатор числа 12.345

Show5DigitLed(1, 1);

Show5DigitLedWithDot(2, 2); //Будет показан “2.”

Show5DigitLed(3, 3);

Show5DigitLed(4, 4);

Show5DigitLed(5, 5);

5. Функции для светодиода

Контроллер I-7188EAD имеет один светодиод, который, например, может показать режим работы контроллера. Для включения этого светодиода предназначена функция void LedOn(void), а для отключения светодиода –

void LedOff(void).

Функция void LedToggle(void) переключает светодиод на противоположное состояние.

6. Функция для задержки времени

void DelayMs(unsigned int time);

Эта функция задерживает время на указанное в параметре time число мс. Вызов этой функции не нуждается в инсталляции драйвера таймера.

Пример. Мигание светодиода с частотой 1 сек.

while (!quit)

{

if (IsCom1( ))

{

data = ReadCom1( );

if (data ==’q’) quit = 1;

}

LedOn();

DelayMs(500);

LedOff();

DelayMs(500);

}

7. Функции таймера

Библиотека 7188Е.lib поддерживает 3 типа таймера. До использования таймеров следует инсталлировать драйвер таймерных функций. Для этого предназначена функция:

int TimerOpen (void);

Эта функция инсталлирует драйвер таймера. Драйвер таймера поддерживает:

- 8 таймеров, которые позволяют остановку счета (стоповый таймер);

- 8 таймеров с обратным счетом и

- 2 таймера, назначение которых определяются пользовательской функцией. Система будет вызывать эту функцию через каждую 1 мс.

Функция TimerOpen возвращает 0, если драйвер успешно инсталлирован и 1, если драйвер уже был инсталлирован. При выходе из программы следует снимать драйвер из памяти с помощью функции:

int TimerClose (void);