Обобщенная блок-схема алгоритма работы тестера ИМС (блок-схема алгоритма работы тестера). Разработка детальной блок-схемы алгоритма тестирования ИМС, страница 4

   

Рис. 1.   Условное обозначение (а) и внутренняя структура (б) оцифрованного переключателя

а)                                                                  б)

Рис. 2.   Варианты схем подключения переключателей

                                 Рис.3.  Область флагов (прямоадресуемых битов)   МК51

2. Возможность индивидуальной настройки на режим ввода или вывода любой линии портов микроконтроллеров семейства МК51 позволяет отказаться от коммутаторов выводов проверяемой ИМС. Любая ИМС будет вставляться в один из трех разъемов (сокетов) для корпусов типа DIР с 14, 16 или 20 выводами. Контакты этих разъемов соединены с портами Р1 и Р2 микроконтроллера. При установке ИМС в сокет все линии портов, присоединенных к нему, должны быть в состоянии ввода. Порт Р3 можно использовать для управления тремя индикаторами – светоизлучающими диодами, которые имеют надписи "ГОТОВ", "НОРМА", "БРАК",  а также ввода состояния двух кнопок с надписями "ТЕСТ" и "СБРОС". Одну линию порта Р3 следует использовать для управления ключами подачи питания на проверяемую ИМС. Две оставшиеся свободные линии порта Р3 можно использовать для соединения с выводами разъема DIP-20. Два десятичных оцифрованных переключателя для ввода номера ИМС присоединяются к порту Р0.

Примечание. При разработке принципиальной схемы тестера можно для упрощения чертежа изобразить только один разъем с подключенной ИМС, определяемой по заданию на контрольную работу.

3. При разработке программы тестирования ИМС требуется формировать различные коды для подачи на входы. Удобно для этой цели использовать не регистры МК, а ячейки внутренней памяти данных с адресами от 20H до 2FH. Особенностью этих ячеек является то, что они допускают побитовую адресацию. Эти ячейки часто  используются для реализации программных флагов, поэтому эту область часто называют областью флагов МК номера его зачетной книжки [2]. Изображение области флагов приведено на рис. 3. Каждый бит (флаг) из этой области имеет свой адрес от 00Н до 7FH. Для установки сброса бита (флага) можно использовать команды SETB bit или CLR bit, где bit – адрес бита.

Например, можно установить (записать 1) бит с адресом 01Н командой SETB 01Н и сбросить бит (записать 0) с адресом 02Н командой CLR 02Н.

Использование адресов флагов не совсем удобно (нужно помнить их адреса по рис. 3), поэтому часто используют другой способ задания, а именно: в команде указывают адрес ячейки, где находится бит, и порядковый номер бита в ячейке. Например, для бита с адресом 01Н это будет адрес 20Н.1, для бита 7FH – адрес 2FH.7. Тогда установить бит с адресом 01Н можно командой SETB 20Н.1, а сбросить бит с адресом 02Н – командой CLR 20H.2.

Для формирования кодов тестирования удобно использовать логические команды, в которых один из операндов и результат операции указывается в ячейке памяти данных с использованием прямой адресации. Например, если это ячейка с адресом 20Н, то операции логического И будут выполняться командами:

ANL 20H, #d   - логическое И содержимого ячейки с адресом 20H

и константы d, результат - в ячейке 20H;

ANL 20H, А    - логическое И содержимого ячейки с адресом 20H

и аккумулятора, результат - в ячейке 20H.

Аналогично операции логического ИЛИ будут выполняться командами:

ORL 20H, #d;

ORL 20H, A.

4. При разработке программы тестирования необходимо исключить влияние переходных процессов при включения питания и смене входных кодов.

Переходные процессы  внутри микросхемы после подачи на нее электропитания делятся на электрические и тепловые. Длительность электрических переходных процессов составляют несколько микросекунд, длительность тепловых – десятки и даже сотни микросекунд [1]. Для устранения влияния переходных процессов можно ввести временную задержку длительностью 10 … 30 мс от момента подачи электропитания на ИМС до момента начала ее тестирования.