|
RD или E – сигнал чтения или разрешения. Когда выбран интерфейс семейства 8080, этот сигнал действует как активный низко уровневый строб-импульс чтения. WR или R/W – сигнал записи. Когда выбран интерфейс семейства 8080, этот сигнал действует как активный низко уровневый строб-импульс чтения. Шина данных защёлкивается по переднему фронту этого сигнала. CS - выбор чипа. Этот активный по низкому уровню вход разрешает SED1335F. RES – сброс. Этот активный по низкому уровню вход осуществляет аппаратный сброс SED1335F. Схема представлена на рисунке 3.8. Рисунок 3.8 – Схема подключения ЖКД Аналоговый сигнал подаётся на вход Ain1 или Ain2. Сигнал ослабляется или усиливается по амплитуде в зависимости от заданного количества вольт на деление. После этого он преобразуется в дифференциальную форму трансформатором. И затем попадает на аналоговый вход АЦП. АЦП оцифровывает сигнал и каждые 25 нс на цифровых выходах АЦП появляется цифровой код соответствующий определённому уровню напряжения. Этот цифровой код считывается МК и записывается в память XRAM через промежуток времени, зависящий от количества секунд на деление. То есть происходит прореживание цифрового кода. После записи в память, МК не реагирует ни на какие прерывания, а выводит информацию о сигнале в виде осциллограммы на ЖКД. После вывода одного кадра происходит считывание следующего кадра с выходов АЦП. 5 Описание программы для микроконтроллера Разработка программы для МК C8051F120 фирмы Silicon Laboratories с системой команд совместимой с MCS – 51 проводилось с помощью программного продукта Keil mVision2 версии 2.40a, симулирующего работу МК. Программа состоит из блока настройки портов ввода – вывода, генератора, периферийных устройств, прерываний, ЖКД и подпрограммы для ввода данных с АЦП - InputADC. На рисунке 5.1 показана блок – схема алгоритма программы для МК. Используемые в программе переменные: – kfn – коэффициент частоты дискретизации (n=1 или 2 – номер канала); – CoefAmplif – содержит число выводимое в порт P6 для задания коэффициента усиления; – i – переменна – счётчик; – Num – переменная, используема для записи в XRAM последовательности чисел; – Switch – порт, управляющий аналоговыми коммутаторами; – Button_kf – порт, к которому подключены кнопки задающие kf – Button_CefAmplif - порт, к которому подключены кнопки задающие CefAmplif – Padc1 – АЦП канал 1; – Padc2 – АЦП канал 2; Сначала программа подключает файл с определением регистров специального назначения, которые имеются в данном микроконтроллере. Регистрам общего назначения присваиваются имена переменных приведённых выше. Порты P4 и P5 подключены к цифровым выходам АЦП и настроены как цифровые входы с открытым стоком. С помощью приоритетного декодера матрицы на разряд P0.0 выводится сигнал тактирования АЦП с частотой SYSCLK/4 (SYSCLK=100 МГц). В переменную kf производится запись в младшие четыре разряда – коэффициента kf1 для задания частоты дискретизации сигнала с канала 1 и в старшие четыре разряда - коэффициента kf2 для задания частоты дискретизации сигнала с канала 2. Связь значения коэффициента и частоты дискретизации приведена в таблице 3.1 (n=1 или 2). Таблица 5.1 – Связь коэффициента частоты и периода дискретизации
Частота дискретизации соответствующая количеству секунд на деление определяется по формуле: , (3.3) где n – количество байт содержащих информацию об уровне сигнала; TimeOnDiv – количество секунд на деления; tmax и tmin – границы временного интервала. Скорость работы МК позволяет сохранять информацию о сигнале за 90 нс. Поэтому максимальная частота дискретизации сигнала (5.1) . Необходимая частота дискретизации сигнала задаётся с помощью задания задержки между считываниями данных с АЦП. Для создания задержки используется таймер TMR3. Таймер тактируется системным тактовым сигналом, и изменение значения таймера на 1 происходит каждые 10 нс. Для создания необходимой задержки в таймер записывается число, с которого он начинает счёт. Флаг переполнения таймера проверяется до тех пор, пока таймер не переполнится. Таким образом, создаётся задержка с точностью до 10 нс. В переменную CoefAmplif загружается байт данных, содержащий информацию о коэффициенте усиления и о виде измеряемого напряжения (переменного или постоянного). Биты 7 и 6 управляют ключами S2A и S2C соответственно, которые подключают или отключают конденсатор. Биты 5, 4, 3 и 2, 1, 0 задают коэффициент усиления или ослабления Ku для канала 1 и канала 2 соответственно. Связь Ku и вида измеряемого напряжения с числом в переменной CoefAmplif приведена в таблице 5.2 (n=1 или 2 – номер канала). Таблица 5.2 – Зависимость Ku и вида напряжения от CoefAmplif
Ниже представлена блок-схема программы для МК. Рисунок 5.1 – Блок схема алгоритма программы для МК Ниже приведено более подробное описание настройки контроллера SED1335. После вывода кода 40h (команда «System Set») на шину данных контроллера, производится вывод восьми байтов (P1 – P8), содержащих параметры команды. В программе задаются следующие значения этих параметров: P1=30h. M0=0 - внутренний генератор символов ROM. М1=0 - генератор символов RAM1; 32 знака. М2=0 - высота символа 8 пикселов (2716 или эквивалент ROM). W/S=0 - однопанельное управление IV=1- нет коррекции верхней строки экрана (нет смещения) T/L=1 - режим ТВ DR=0 - нормальная операция P2=87h. FX=7h - ширина символа равна 8 пикселей. WF=1 - двухкадровое управление АС P3 = FY= 07h - высота символа равна 8 пикселей. P4 = С/R = 27h - адресный диапазон равен 40 байтов на одну строку дисплея. P5 = TC/R =39h - длина строки равна 58 байтов. P6 = L/F = EFh - количество линий на кадр равно 240. P7 = AL = 28h и P8 = AH = 0 - горизонтальный адресный диапазон (текстовый) равен 40. Значения параметров команды «Scroll» (код 44hрр): P1 = SAD 1L = 0 и P2 = SAD1H = 0 - начальный адрес первого экранного блока прокрутки. P3 = SL1 = P6 = SL2 = EFh - 255 строк на прокручиваемый блок. P4 = SAD2L = B0h и P5 = SAD2H = 04h - начальный адрес второго блока прокрутки. P7 = SAD3L = 0h и P8 = SAD3H = 0h - начальный адрес третьего блока прокрутки. P9 = SAD4L = 0h и P10 = SAD4H = 0h - начальный адрес четвёртого блока прокрутки. Значения параметров команды «CURSOR FORM» (код 5Dhрр): P1= CRX = 04h – ширина курсора равна 5 пикселей. |
Новости |
Мои настройки |
|
© 2009 Все права защищены.