Одним из главных принципов уникальной «системы Физтеха», заложенной в основу образования в МФТИ, является тщательный отбор одаренных и склонных к творческой работе представителей молодежи. Абитуриентами Физтеха становятся самые талантливые и высокообразованные выпускники школ всей России и десятков стран мира.

Студенческая жизнь в МФТИ насыщенна и разнообразна. Студенты активно совмещают учебную деятельность с занятиями спортом, участием в культурно-массовых мероприятиях, а также их организации. Администрация института всячески поддерживает инициативу и заботится о благополучии студентов. Так, ведется непрерывная работа по расширению студенческого городка и улучшению быта студентов.

Адрес e-mail:

Контроллер 128-канального аналогового коммутатора

Данное устройство предназначено для управления платой 128-канального аналогового коммутатора, работа которого была описана ранее.

Ядром данного прибора (см. принципиальную схему) является микроконтроллер U5 at90s8535 фирмы Atmel. Данный микроконтроллер имеет интегрированный 8-канальный 10-разрядный АЦП, один канал которого используется для измерения падения напряжения на образцовом резисторе платы коммутатора. Супервизор U3 обеспечивает надежный запуск микроконтроллера при включении и блокировку микроконтроллера при снижении питания после его отключения.К порту B через разъем подключена пленочная клавиатура с размером матрицы 4x4 кнопки. Диоды VD1-VD4 защищают порты микроконтроллера от замыкания при нажатии нескольких кнопок одновременно. Жидкокристаллический индикатор (16 символов x 2 строки, LED-подсветка) подключен к битам порта С. Разъем P1 служит для связи с платой коммутатора. Биты порта A служат входами внутреннего АЦП. Из них используется только один младший вход, на который подается буферизированное напряжение с образцового резистора на плате коммутатора. С платы коммутатора также снимается опорное напряжение для АЦП (контакт REF на разъеме P1). Биты PD0 и PD1 порта D выполняют свою совмещенную функцию, управляя преобразователем уровней U7, через который осуществляется обмен данными с компьютером по интерфейсу RS-232. Микросхемы U2, U4, U6, U8 выполняют функцию расширителя интерфейса микроконтроллера, и обеспечивают дополнительно 8x3 выходных битов, программируемых микроконтроллером посредством шести сигналов SC, SD, ~PE, L0, L1, L2 (некий упрощенный аналог широко известной микросхемы 580вв55). Программируются они следующим образом. Сначала микроконтроллер передает последовательные данные (8 бит) по линии SD на сдвиговый регистр U2, сопровождая их синхроимпульсами на линии SC. Эти данные, преобразованные в параллельный вид, появляются на выходах регистра U2 и поступают на входы трех регистров-защелок U4, U6, U8. Теперь, мигнув (подав короткий импульс) одним из сигналов L0, L1, L2, микроконтроллер перепишет данные в соответствующий регистр-защелку U4, U6, U8. Завершающим этапом является вывод регистров-защелок из высокоимпеданснсого состояния логическим 0 на линии ~PE (PD4), при этом на выходах регистров-защелок появятся ранее записанные в них данные. Защелка U4 (L0) управляет индикацией, реализованной на генераторе звука BZ1 и двух светодиодах HL1, HL2 (соответственно биты 0, 1, 2). Остальные 5 бит не используются. U6 служит для указания адреса контакта тестового порта, напряжение с которого следует подать на образцовый резистор для измерения (младшие 7 бит ZA0-ZA6) Старший бит (ZE) служит для разрешения коммутации, при лог. 0 на нем образцовый резистор не подключается ни к какому контакту тестового порта, вне зависимости от значения младших семи бит. Защелка U8 (L2) управляет коммутацией источника образцового напряжения на плате коммутатора на один из контактов тестового порта. 7 младших бит (YA0-YA6) – собственно номер контакта, на который следует подать образцовое напряжение (0-127); старший бит YE – бит разрешения коммутации. При лог. 0 на нем опорное напряжение отключено от всех контактов тестового порта.

Разъем XT3 служит для внутрисхемного программирования микроконтроллера. Программа написана на языке Си (компилятор фирмы Codeview, http://infotech.ir.ro/), для ясности привожу функции, записывающие данные в один из регистров-защелок U4, U6, U8:

 
            void serialwrite(char b) // выводит байт в сдвиговый регистр U2
   
{
int j;
for (j = 0; j < 8; j ++)
{
if (b & 128)
SD = 1;
else
SD = 0;
        delay_us(1); // пауза, 1 микросекунда
SC = 1;
delay_us(1);
        SC = 0;
        b <<= 1;
}
}

 

        void portwrite(char port, char data) // записывает байт data в указанный номер порта-защелки (0, 1 или 2)
{
        PDIS = 0; delay_us(1); // вывод регистров из Z-состояния
        serialwrite(data); // используем предыдущую функцию – пишем данные в сдвиговый регистр
        if (port == 0) // переписываем данные в нужный регистр-защелку
        {
   
 L0 = 1; delay_us(10); L0 = 0;
 }
if (port == 1)
 {
 L1 = 1; delay_us(10); L1 = 0;
 }
if (port == 2)
 {
 L2 = 1; delay_us(10); L2 = 0;
 }
}

 

Где порты микроконтроллера определены в соответствии с принципиальной схемой:

#define SD PORTD.3

#define SC PORTD.2

#define PDIS PORTD.4

#define L0 PORTD.5

#define L1 PORTD.6

#define L2 PORTD.7

В написанной программе присутствуют функции самодиагностики платы коммутатора при включении (возможность которой подчеркивалась в статье о самом коммутаторе), функции поиска межконтактных сопротивлений, превышающих или не превышающих задаваемый порог, функции непрерывного опроса сопротивления между двумя задаваемыми контактами и возможность передачи данных на компьютер через последовательный интерфейс RS-232 для более полного анализа. Передача полной матрицы 128x128 двухбайтовых слов (в каждом слове используются только 10 бит – количество разрядов АЦП) на скорости 57600 бит/с происходит примерно за 10 секунд. Микроконтроллер U5 выбран в корпусе PLCC-44 и установлен на панели, что можно видеть из прилагаемой фотографии собранной печатной платы прибора.

Скворцов Артём

Если вы заметили в тексте ошибку, выделите её и нажмите Ctrl+Enter.

© 2001-2016 Московский физико-технический институт
(государственный университет)

Техподдержка сайта

МФТИ в социальных сетях

soc-vk soc-fb soc-tw soc-li soc-li
Яндекс.Метрика