8-900-374-94-44
[email protected]
Slide Image
Меню

Логический пробник на микроконтроллере avr – Тестер с 11 функциями на микроконтроллере Atmega32 — Измерительные устройства — Микроконтроллеры — Каталог статей

Тестер с 11 функциями на микроконтроллере Atmega32 - Измерительные устройства - Микроконтроллеры - Каталог статей

.

Возможности тестера:

Постоянное напряжение 0.00 - 5.00 В
Постоянное напряжение 00.0 +/- 99.9 В
Прозвонка диодов 0 - 5000 мВ
Сопротивление 1 Oм - 50 MOм с точность два разряда, автомат диапазона
Емкость 1 пФ - 65000 мкФ с точностью три разряда, автомат диапазона
ESR конденсаторов 0 - 200 Oм с шагом 0.25 Ом
Индуктивность 1мГ - 65000 мГ с точностью 1мГ, в одном диапазоне
Счетчик импульсов 0 - FFFFFFFF
Частотомер 0 - 10 МГц с точностью 1Гц, в одном диапазоне
Генератор импульсов 0 - 10 МГц
Логический анализатор: асинхронный, длинна записи 2048 бит, чтение автономное на индикатор, дискретизация до 2МГц, выбор условия старта

Все режимы на один вход, переключение режимов кнопками, подтверждение звуком

Питание от внутреннего аккумулятора

Схема прибора:

схему в большем разрешении.

Управление прибора програмное, поэтому особо описывать нечего. Процессор опрашивает клавиатуру, получает управляющие сигналы и выставляет регистры своих внутренних таймеров, ацп, портов и т.д. в соответствии с выбранным режимом. Для пользователя это выглядит так: - подача питания - звуковой сигнал - режим напряжгние (можно мерять) - нажатие кнопки - звуковой сиенал - режим частотомер (можно мерять) - нажатие кнопки - и т.д. Режимы подтверждаются соответствующей индикацией. Режимы переключаются по кольцу. Кнопка-2 гонит кольцо вперед, кнопка-1 назад, кнопка-0 служебная используерся для обнуления счетчика импульсов, переключения ситем счисления индикации и т. п.

Режимы работы тестера:

Печатная плата:




Программа написана на MikroBasic for AVR от фирмы Microelektronica. Критичные участки кода на встроенном в Basic Assembler.

Фьюзы нужно выставлять следующие:
SUT0=0, CKOPT=0

Переключение режимов осуществляется через опрос трех кнопок и переключателя делителя напряжения для диапазона 100В. Опрос общий для всех режимов и ведется постоянно.

Напряжение в диапазоне до 5.00V измеряется непосредственно входом ADC0.  Напряжение в диапазоне до +/- 100.0V измеряется через делитель двумя входами ADC5 и ADC7 поочереди, для определеня полярности. Делитель подключается механически переключателем см. схему.

Прозвонка - на вход подается 5V через резистор 560 Ом. ADC0 измеряет падение напряжения на p-n переходе диода.

Сопротивление
- измеряется в семи поддиапазонах пересчитывается по формуле см. исходник.

Емкость
- заряжается через резистор соответствующего диапазона до момента срабатывания компаратора. Порог компаратора установлен на одну десятую от величины заряжающего напряжения, для обеспечения выхода на линейный участок кривой заряда . После срабатывания компаратора конденсатор разряжается через открытый порт и процесс повторяется. Время от момента начала заряда емкости до момента срабатывания компаратора регистрируется таймером счетчиком. Показания таймера счетчика пересчитываются через соответствующий корректирующий коэффициэнт и выводятся на индикатор.

ESR - измеряется просто, как активное сопротивление разряженнго конденсатора.

Индуктивность
- измеряется также как и емкость только все наоборот.

Счетчик импульсов - в качестве счетчика импульсов используется аппаратный таймер-счетчик плюс расширение до 32 разрядов за счет двух регистров, логические уровни выводятся символьном виде H L U, соответственно высокий низкий неопределенный.

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

Генератор импульсов
- аппаратный таймер-счетчик в режиме генератора, либо програмный генератор.

Логический анализатор - программа с определенной частотой опрашивает входной пин контроллера, данные о состоянии пина сдвигаются в аккумулятор, содержимое аккумулятора перезаписывается в память (RAM контроллера), адрес памяти инкрементируется и так далее пока весь блок памяти не закончится. Чтение происходит в обратном порядке по нажатию соответствующей кнопки. За одно нажатие кнопки на индикатор выводится содержимое четырех байт памяти.

файлы проекта (прошивку, исходник, проект proteus).
печатную плату.


статьи.

cxema21.ru

Тестер с 11 функциями на микроконтроллере Atmega32 - Устройства на микроконтроллерах - Схемы устройств на микроконтроллерах


Возможности тестера:

Постоянное напряжение 0.00 - 5.00 В 
Постоянное напряжение 00.0 +/- 99.9 В 
Прозвонка диодов 0 - 5000 мВ 

Сопротивление 1 Oм - 50 MOм с точность два разряда, автомат диапазона 
Емкость 1 пФ - 65000 мкФ с точностью три разряда, автомат диапазона 
ESR конденсаторов 0 - 200 Oм с шагом 0.25 Ом 
Индуктивность 1мГ - 65000 мГ с точностью 1мГ, в одном диапазоне 
Счетчик импульсов 0 - FFFFFFFF 
Частотомер 0 - 10 МГц с точностью 1Гц, в одном диапазоне 
Генератор импульсов 0 - 10 МГц 
Логический анализатор: асинхронный, длинна записи 2048 бит, чтение автономное на индикатор, дискретизация до 2МГц, выбор условия старта 

Все режимы на один вход, переключение режимов кнопками, подтверждение звуком 
Питание от внутреннего аккумулятора 

Схема прибора: 



Управление прибора програмное, поэтому особо описывать нечего. Процессор опрашивает клавиатуру, получает управляющие сигналы и выставляет регистры своих внутренних таймеров, ацп, портов и т.д. в соответствии с выбранным режимом. Для пользователя это выглядит так: - подача питания - звуковой сигнал - режим напряжгние (можно мерять) - нажатие кнопки - звуковой сиенал - режим частотомер (можно мерять) - нажатие кнопки - и т.д. Режимы подтверждаются соответствующей индикацией. Режимы переключаются по кольцу. Кнопка-2 гонит кольцо вперед, кнопка-1 назад, кнопка-0 служебная используерся для обнуления счетчика импульсов, переключения ситем счисления индикации и т. п. 

Режимы работы тестера:

Печатная плата:


Программа написана на MikroBasic for AVR от фирмы Microelektronica. Критичные участки кода на встроенном в Basic Assembler. 

Фьюзы нужно выставлять следующие: 
SUT0=0, CKOPT=0

Переключение режимов осуществляется через опрос трех кнопок и переключателя делителя напряжения для диапазона 100В. Опрос общий для всех режимов и ведется постоянно. 

Напряжение в диапазоне до 5.00V измеряется непосредственно входом ADC0.  Напряжение в диапазоне до +/- 100.0V измеряется через делитель двумя входами ADC5 и ADC7 поочереди, для определеня полярности. Делитель подключается механически переключателем см. схему.

Прозвонка - на вход подается 5V через резистор 560 Ом. ADC0 измеряет падение напряжения на p-n переходе диода. 


Сопротивление
 - измеряется в семи поддиапазонах пересчитывается по формуле см. исходник. 

Емкость
 - заряжается через резистор соответствующего диапазона до момента срабатывания компаратора. Порог компаратора установлен на одну десятую от величины заряжающего напряжения, для обеспечения выхода на линейный участок кривой заряда . После срабатывания компаратора конденсатор разряжается через открытый порт и процесс повторяется. Время от момента начала заряда емкости до момента срабатывания компаратора регистрируется таймером счетчиком. Показания таймера счетчика пересчитываются через соответствующий корректирующий коэффициэнт и выводятся на индикатор. 

ESR - измеряется просто, как активное сопротивление разряженнго конденсатора. 

Индуктивность
 - измеряется также как и емкость только все наоборот. 

Счетчик импульсов - в качестве счетчика импульсов используется аппаратный таймер-счетчик плюс расширение до 32 разрядов за счет двух регистров, логические уровни выводятся символьном виде H L U, соответственно высокий низкий неопределенный. 

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


Генератор импульсов
 - аппаратный таймер-счетчик в режиме генератора, либо програмный генератор. 
Логический анализатор - программа с определенной частотой опрашивает входной пин контроллера, данные о состоянии пина сдвигаются в аккумулятор, содержимое аккумулятора перезаписывается в память (RAM контроллера), адрес памяти инкрементируется и так далее пока весь блок памяти не закончится. Чтение происходит в обратном порядке по нажатию соответствующей кнопки. За одно нажатие кнопки на индикатор выводится содержимое четырех байт памяти. 

cxema.my1.ru

Тестер с 11 функциями на микроконтроллере Atmega32 CAVR.ru

Рассказать в:


Возможности тестера:

Постоянное напряжение 0.00 - 5.00 В 
Постоянное напряжение 00.0 +/- 99.9 В 

Прозвонка диодов 0 - 5000 мВ 
Сопротивление 1 Oм - 50 MOм с точность два разряда, автомат диапазона 
Емкость 1 пФ - 65000 мкФ с точностью три разряда, автомат диапазона 
ESR конденсаторов 0 - 200 Oм с шагом 0.25 Ом 
Индуктивность 1мГ - 65000 мГ с точностью 1мГ, в одном диапазоне 
Счетчик импульсов 0 - FFFFFFFF 
Частотомер 0 - 10 МГц с точностью 1Гц, в одном диапазоне 
Генератор импульсов 0 - 10 МГц 
Логический анализатор: асинхронный, длинна записи 2048 бит, чтение автономное на индикатор, дискретизация до 2МГц, выбор условия старта 

Все режимы на один вход, переключение режимов кнопками, подтверждение звуком 
Питание от внутреннего аккумулятора 

Схема прибора: 



Управление прибора програмное, поэтому особо описывать нечего. Процессор опрашивает клавиатуру, получает управляющие сигналы и выставляет регистры своих внутренних таймеров, ацп, портов и т.д. в соответствии с выбранным режимом. Для пользователя это выглядит так: - подача питания - звуковой сигнал - режим напряжгние (можно мерять) - нажатие кнопки - звуковой сиенал - режим частотомер (можно мерять) - нажатие кнопки - и т.д. Режимы подтверждаются соответствующей индикацией. Режимы переключаются по кольцу. Кнопка-2 гонит кольцо вперед, кнопка-1 назад, кнопка-0 служебная используерся для обнуления счетчика импульсов, переключения ситем счисления индикации и т. п. 

Режимы работы тестера:

Печатная плата:


Программа написана на MikroBasic for AVR от фирмы Microelektronica. Критичные участки кода на встроенном в Basic Assembler. 

Фьюзы нужно выставлять следующие: 
SUT0=0, CKOPT=0

Переключение режимов осуществляется через опрос трех кнопок и переключателя делителя напряжения для диапазона 100В. Опрос общий для всех режимов и ведется постоянно. 

Напряжение в диапазоне до 5.00V измеряется непосредственно входом ADC0.  Напряжение в диапазоне до +/- 100.0V измеряется через делитель двумя входами ADC5 и ADC7 поочереди, для определеня полярности. Делитель подключается механически переключателем см. схему.

Прозвонка - на вход подается 5V через резистор 560 Ом. ADC0 измеряет падение напряжения на p-n переходе диода. 


Сопротивление
 - измеряется в семи поддиапазонах пересчитывается по формуле см. исходник. 

Емкость
 - заряжается через резистор соответствующего диапазона до момента срабатывания компаратора. Порог компаратора установлен на одну десятую от величины заряжающего напряжения, для обеспечения выхода на линейный участок кривой заряда . После срабатывания компаратора конденсатор разряжается через открытый порт и процесс повторяется. Время от момента начала заряда емкости до момента срабатывания компаратора регистрируется таймером счетчиком. Показания таймера счетчика пересчитываются через соответствующий корректирующий коэффициэнт и выводятся на индикатор. 

ESR - измеряется просто, как активное сопротивление разряженнго конденсатора. 

Индуктивность
 - измеряется также как и емкость только все наоборот. 

Счетчик импульсов - в качестве счетчика импульсов используется аппаратный таймер-счетчик плюс расширение до 32 разрядов за счет двух регистров, логические уровни выводятся символьном виде H L U, соответственно высокий низкий неопределенный. 

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

Генератор импульсов
 - аппаратный таймер-счетчик в режиме генератора, либо програмный генератор. 
Логический анализатор - программа с определенной частотой опрашивает входной пин контроллера, данные о состоянии пина сдвигаются в аккумулятор, содержимое аккумулятора перезаписывается в память (RAM контроллера), адрес памяти инкрементируется и так далее пока весь блок памяти не закончится. Чтение происходит в обратном порядке по нажатию соответствующей кнопки. За одно нажатие кнопки на индикатор выводится содержимое четырех байт памяти. 

АРХИВ:Скачать


Раздел: [Устройства на микроконтроллерах]
Сохрани статью в:
Оставь свой комментарий или вопрос:

www.cavr.ru

Тестер с 11 функциями на микроконтроллере Atmega32 - Измерительные устройства - Микроконтроллеры - Каталог статей

.

Возможности тестера:

Постоянное напряжение 0.00 - 5.00 В
Постоянное напряжение 00.0 +/- 99.9 В
Прозвонка диодов 0 - 5000 мВ
Сопротивление 1 Oм - 50 MOм с точность два разряда, автомат диапазона
Емкость 1 пФ - 65000 мкФ с точностью три разряда, автомат диапазона
ESR конденсаторов 0 - 200 Oм с шагом 0.25 Ом
Индуктивность 1мГ - 65000 мГ с точностью 1мГ, в одном диапазоне
Счетчик импульсов 0 - FFFFFFFF
Частотомер 0 - 10 МГц с точностью 1Гц, в одном диапазоне
Генератор импульсов 0 - 10 МГц
Логический анализатор: асинхронный, длинна записи 2048 бит, чтение автономное на индикатор, дискретизация до 2МГц, выбор условия старта

Все режимы на один вход, переключение режимов кнопками, подтверждение звуком
Питание от внутреннего аккумулятора

Схема прибора:



Управление прибора програмное, поэтому особо описывать нечего. Процессор опрашивает клавиатуру, получает управляющие сигналы и выставляет регистры своих внутренних таймеров, ацп, портов и т.д. в соответствии с выбранным режимом. Для пользователя это выглядит так: - подача питания - звуковой сигнал - режим напряжгние (можно мерять) - нажатие кнопки - звуковой сиенал - режим частотомер (можно мерять) - нажатие кнопки - и т.д. Режимы подтверждаются соответствующей индикацией. Режимы переключаются по кольцу. Кнопка-2 гонит кольцо вперед, кнопка-1 назад, кнопка-0 служебная используерся для обнуления счетчика импульсов, переключения ситем счисления индикации и т. п.

Режимы работы тестера:

Печатная плата:



Программа написана на MikroBasic for AVR от фирмы Microelektronica. Критичные участки кода на встроенном в Basic Assembler.

Фьюзы нужно выставлять следующие:
SUT0=0, CKOPT=0

Переключение режимов осуществляется через опрос трех кнопок и переключателя делителя напряжения для диапазона 100В. Опрос общий для всех режимов и ведется постоянно.

Напряжение в диапазоне до 5.00V измеряется непосредственно входом ADC0.  Напряжение в диапазоне до +/- 100.0V измеряется через делитель двумя входами ADC5 и ADC7 поочереди, для определеня полярности. Делитель подключается механически переключателем см. схему.

Прозвонка - на вход подается 5V через резистор 560 Ом. ADC0 измеряет падение напряжения на p-n переходе диода.

Сопротивление
- измеряется в семи поддиапазонах пересчитывается по формуле см. исходник.

Емкость
- заряжается через резистор соответствующего диапазона до момента срабатывания компаратора. Порог компаратора установлен на одну десятую от величины заряжающего напряжения, для обеспечения выхода на линейный участок кривой заряда . После срабатывания компаратора конденсатор разряжается через открытый порт и процесс повторяется. Время от момента начала заряда емкости до момента срабатывания компаратора регистрируется таймером счетчиком. Показания таймера счетчика пересчитываются через соответствующий корректирующий коэффициэнт и выводятся на индикатор.

ESR - измеряется просто, как активное сопротивление разряженнго конденсатора.

Индуктивность
- измеряется также как и емкость только все наоборот.

Счетчик импульсов - в качестве счетчика импульсов используется аппаратный таймер-счетчик плюс расширение до 32 разрядов за счет двух регистров, логические уровни выводятся символьном виде H L U, соответственно высокий низкий неопределенный.

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

Генератор импульсов
- аппаратный таймер-счетчик в режиме генератора, либо програмный генератор.
Логический анализатор - программа с определенной частотой опрашивает входной пин контроллера, данные о состоянии пина сдвигаются в аккумулятор, содержимое аккумулятора перезаписывается в память (RAM контроллера), адрес памяти инкрементируется и так далее пока весь блок памяти не закончится. Чтение происходит в обратном порядке по нажатию соответствующей кнопки. За одно нажатие кнопки на индикатор выводится содержимое четырех байт памяти.

Источник

Скачать файлы проекта (прошивку, исходник, проект proteus).
Скачать печатную плату.

Продолжение статьи.

cxema21.ucoz.ru

Универсальный логический пробник — Меандр — занимательная электроника

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

Новые отказы могут возникать по причине того, что ремонтнику необходимо переводить взгляд с проверяемой платы на экран осциллографа или дисплей мультиметра, а щуп при этом может замкнуть рядом расположенные выводы миниатюрных современных элементов. Трудно увидеть обрыв проводника на входе интегральных цифровых микросхем – это будет индицироваться как лог. «0». На самом деле обрыв по входу воспринимается микросхемой как лог. «1» или, что еще хуже, как некоторое промежуточное состояние. При этом микросхема будет находится в активном режиме с максимальным потреблением тока из-за возникновения сквозного тока, что может привести к самовозбуждению или даже отказу ИМС. На мультиметре нельзя увидеть наличие потока импульсов – они будут интегрироваться, и на мультиметре указываться промежуточное состояние между лог. «0» и лог. «1», которого на самом деле нет.

Требования к логическому пробнику

Схемы логических пробников неоднократно появлялись в различных печатных изданиях, но часто их авторы поверхностно подходили к их разработке, устанавливая только лишь некоторые условные пороги индикации состояния. Действительно, логический пробник должен определять логические уровни, но должен определять их корректно, т.е. указывать именно заданные пороги для потенциалов лог. «0» и лог. «1», а не что-то усредненное. Главное, логический пробник должен автоматически устанавливать уровни индикации лог. «0» и лог. «1» в зависимости от напряжения питания проверяемого узла. А такая зависимость весьма существенная.

Чтобы в этом убедиться, достаточно проанализировать спецификации на распространенные интегральные микросхемы семейств 74HCxxи 4000 [3,4]. Разница в пороговых значениях для ИМС серии 74HCxx в пределах допустимых значений напряжения питания (от 4,5 В до 6,0 В) отличается более чем на 30%. А что говорить о семействе ИМС 4000, где диапазон допустимых значений питающегося напряжения составляет от 5 В до 15 В. Это и является камнем преткновения, так как многие разработчики, задавая уровни пороговых напряжений, начисто забывают об этом факте. Как пример неправильного подхода к проектированию можно проанализировать схему в [1].

Какие еще моменты необходимо учитывать. Пробник должен иметь защиту по входу от превышения входным напряжением его напряжения питания защиту от напряжения отрицательной полярности, а также иметь защиту от переполюсовки при подключении питания и защиту от статического электричества. Пробник должен иметь малую собственную входную емкость, чтобы в момент подключения не вносить заметные искажения в контролируемые цепи из-за заряда собственной входной емкости.

Еще один фактор – это минимализация входного тока пробника. Посмотрим это на примере. Если говорить о наиболее распространенных сейчас ИМС, например о семействе HCMOS 74HC/HCT/HCUили о семействе LOCMOSHE4000, то входной ток ИМС семейства 74HC/HCT/HCU не превышает ±1 мкА, а входной ток ИМС семейства HE4000 находится в диапазоне от ±0,1 мкА до ±0,3 мкА. Следовательно, подключение логического пробника с большим собственным входным током к входным цепям CMOSИМС может существенно исказить «картину» анализа.

Работа устройства

Схема универсального логического пробника, свободная от приведенных выше недостатков, показана на рис.1. Ее прототип успешно использовался автором много лет и был предназначен для работы с ИМС серий 176, 561 и 564. Современный вариант схемы, разработанный автором, был впервые опубликован в [5].Пробник выполнен на двух компараторах ИМС DA1. Правильный выбор ИМС для реализации такой схемы крайне важен. Не все микросхемы будут работать должным образом в подобных устройствах. Микросхема должна обеспечивать работоспособность при минимально необходимом однополярном напряжении питания и обладать низкими входными токами. В прототипе использовался сдвоенный операционный усилитель К157УД2. В современной модели пробника предлагается использовать ИМС AD823AR(Z) [2]. Это операционный усилитель допускает однополярное питающее напряжение и полный размах выходного напряжение. Естественно, можно использовать и иные операционные усилители, отвечающие изложенным требованиям.

Верхний по схеме компаратор контролирует высокий логический уровень («HI»), а нижний – низкий логический уровень («LO»). Пороги срабатывания задаются резистивным делителем R4R5R6, а не опорным источником напряжения. Таким образом, обеспечивается зависимость порогов срабатывания компараторов от напряжения питания пробника. Для того чтобы автоматически установить пороги определения логических уровней в зависимости от напряжения питания контролируемого цифрового узла, устройство подключается к проверяемой плате в точки с напряжением питания проверяемых цифровых ИМС. Высокий логический уровень индицируется светодиодом HL1 (зеленый), низкий логический уровень – светодиодом HL2 (красный). Светодиоды не будут светится, если входное напряжение логического пробника (то есть напряжение в точке анализа) будет между минимальным порогом определения высокого логического уровня и максимальным порогом определения низкого логического уровня. Это устройство (если используется ИМС типа AD823AR) может показывать наличие переменных сигналов (синусоидальные, треугольные или прямоугольные с небольшой скважностью) с частотой до 1 МГц. В этом случае глаз будет воспринимать это как свечение обоих индикаторов HL1 и HL2. Поэтому используются именно раздельные индикаторы нуля и единицы, а не один двухцветный светодиод.

Входной ток устройства зависит от выбора типа компаратора, и в случае AD823AR не будет превышать:

  • ±3,0 мкА при напряжении питания 5 В;
  • ±6,0 мкА при напряжении питания 10 В;
  • ±9,0 мкА при напряжении питания 15 В;

Этот ток может быть снижен увеличением номиналов резисторов R2, R3.

Цепь из резистора R1 и диода VD1 защищает устройство от напряжений, превышающих напряжение, к которому подключен пробник, повреждений по входу, вызванных воздействием статического электричества, и от воздействия напряжения отрицательной полярности. Светодиод HL3 (желтый) показывает, что устройство подключено к питающему напряжению. Это очень полезно, особенно если для подключения пробника используется не всегда надежные зажимные контакты. Благодаря этой возможности вы будете всегда уверенны, что и пробник, и проверяемый узел подключены к цепям питания с наличием питающего напряжения. Защита от неправильного подключения обеспечивается диодом VD2 и самовостановляющимся предохранителем FU1 (ток удержания 0,1 А, ток срабатывания 0,2 А). Конденсатор С1 – танталовый, С2 – керамический. Они предотвращают влияние пробника на проверяемое устройство по цепям питания. Ток потребления пробником не превышает 10 мА. Яркость свечения индикаторов может быть установлена изменением номиналов резисторов R7, R8, R9. Резистор R1 минимизирует входную емкость пробника. Пороги срабатывания пробника для ИМС 74HCxx, показанного на рис.1, приведены в таблице. Пороги срабатывания установлены с некоторым запасом по типовым значениям логический уровней, необходимым для устранения крайних, предельных состояний.

Пробник может использоваться и с ИМС других семейств, например 74HCU, 74HCT, или 4000.

Работа с ИМС других серий

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

R6 – свободный выбор номинального значения,

R5 = VH/(VL/R6)-R6,

R4 = Vdd//(VL/R6)-R6-R5,

где:

Vdd – напряжение питания;

VH– типовое пороговое значение для проверки высокого логического уровня для выбранного напряжения питания;

VL – типовое пороговое значение для проверки низкого логического уровня для выбранного напряжения питания.

Для ИМС серии 4000 рекомендованные значения номиналов делителя будут равны:

R6=8,25 кОм;

R5=30 кОм;

R4=6,2 кОм;

При этом порог обнаружения лог. «1» при напряжении питания 15 В будет на уровне 12,5 В, что несколько превышает установленный для ИМС этой серии допустимый входной лог. «1» при этом напряжении (11 В). Остальные пороги обнаружения логических уровней будут соответствовать спецификации [4] с допустимым запасом.

Все элементы пробника, кроме резистора R1 (этот резистор желательно использовать выводного типа, разместив его не на плате, а установив навесным монтажом непосредственно между щупом и платой пробника), желательно использовать для технологии монтажа на поверхность. Конструкция для пробника может быть взята из статьи [1].

Источник: Радиоаматор №6, 2014
Автор: Владимир Рентюк, г. Запорожье

Возможно, вам это будет интересно:

meandr.org

Тестер микросхем на ATMega32

Потребность в данном устройстве возникла у меня при сборке ретрокомпьютера Pentagon-128, когда компьютер, выполненный целиком на микросхемах мелкой логики (коих на плате пентагона порядка сотни корпусов) отказался работать после включения. После увлекательного поиска неисправности было обнаружено пять убитых микросхем. Что и побудило сделать тестер. Аппаратная часть разрабатывалась со следующими акцентами:

  1. Простота конструкции: минимум деталей, максимально простая печатная плата для повторения
  2. Микроконтроллер в DIP-корпусе (легко заменить если что вдруг..)
  3. Возможность управления по UART
  4. Возможность тестировать микросхемы до DIP-28 включительно. Следовательно, МК должен иметь достаточно свободных выводов.
  5. Графический экран и минимальный набор кнопок для экранного меню

Видение программной части:

  1. Прошивка должна позволять тестировать микросхемы мелкой логики с отображением результатов на экране.
  2. Режим тестирования памяти 565РУ5, 565РУ7 и импортных аналогов.
  3. Так же устройство планируется использовать при макетировании других устройств для связи с ПК. Т.е., рулить пинами DIP-сокета с комьютера. Идея такова: есть система команд, которые девайс умеет выполнять (например, "настроить пин на ввод/вывод", "прочитать уровень пина", "изменить уровень пина", "подать импульс" и т.д.). Программа из таких команд загружается в память МК по UART и выполняется. При этом, помимо простого "дергания" пинов можно реализовать команды работы с интерфейсами I2C, 1-wire, SPI и т.д. и использовать девайс в качестве адаптера для реализации I2C/1-wire/SPI терминала. Например, чтобы подключить какую-нибудь микросхему / датчик и поиграться с логикой ее работы прямо с компьютера, без перепрограммирования микроконтроллера.
  4. Возможность управлять выводами сокета вручную автономно, без компьютера.

В качестве экрана взят дисплей от телефона Nokia 5110. В качестве микроконтроллера тут идеально было бы использовать ATMega128 - памяти и свободных пинов хватает на все, но, увы - не DIP-корпус.

В итоге был выбран ATMega16 с перспективой замены на ATMega32 в будущем, по мере разрастания прошивки. В связи с нехваткой свободных выводов пришлось совместить две кнопки и линии RX/TX UART-а с выводами сокета тестируемой микросхемы. В результате 1) две кнопки навигации недоступны для микросхем в корпусах DIP-24 и DIP-28 2) UART недоступен для микросхем DIP-28. 3) 14-й вывод DIP-28 подключен на землю. Ограничения не сильно существенные, т.к. одной кнопки вполне достаточно для запуска теста, а микросхемы в DIP-28 тестируются не часто, и UART с ними не обязателен.

Схема того, что получилось:

Токоограничивающие резисторы R3 - R29 добавлены для того, чтобы обезопасить МК и тестируемую МС от возможных высоких токов, т.к. при тестировании тип микросхемы определяется перебором всех известных микросхем по базе. В принципе, эти резисторы можно исключить из схемы. Если планируется проверять микросхемы серии К155, то лучше исключить резисторы идущие на выводы питания - 7, 8 и 16.

Диоды D1 - D10, установлены для согласования уровней МК (5В) с уровнями дисплея JP1(3.3В). В принципе, их тоже можно исключить (или уменьшить их количество), т.к. опыт показывает, что экраны 5110 могут нормально работать с уровнями +5В. Но я рисковать не стал.

Частота кварцевого резонатора выбрана из соображений обеспечения максимальной безошибочной скорости обмена по UART. Если подключение по UART не планируется, можно установить кварц на 16 МГц (перекомпилировать прошивку при этом нет необходимости).

Сейчас в базе тестера 57 следующих типов микросхем:

ЛН1,HC04,ТЛ1; ЛН2,HC05; ЛА3, ЛА23,HC00; ЛА11, ЛА13; ЛА8; ЛА1, ЛА6, ЛА16, ЛА22; ЛА7; ЛА4, ЛА24; ЛА10; ЛА2; ЛА18; ЛЕ1,ЛЕ5,ЛЕ6,ЛЕ10;
ЛЕ11; ЛЛ1, ЛЛ4, HC32; ЛИ1, ЛИ8, HC08; ЛИ2; 155ИД1; ИД4; ИД7,HC138; ТМ2,HC74; ЛП9; ТМ8; ТМ9,HC174; 155ЛП11; ИР23,HC374; ТВ9; ИЕ5;
ИЕ7; ИЕ2; КП2; КП11; КП13; КП7; АП3; АП4; АП5; ИР16; ИР34; ИЕ10,HC161; ИЕ18; ИЕ19; HC541; ИР37,HC574; ИЕ13,HC191; HC126; КП12,HC253;
КП14; ИР22; ИР33; ИР38; ИР9; ИР26; КП17,КП19; ЛП5,HC86; АП6,HC245; ИП7; HC166

В главном меню устройства есть три режима тестирования:

  1. Проверка и автоопределение подключенной микросхемы.
    Тут все просто - вставляем микросхему (ее первый вывод всегда подключается к первому выводу сокета), жмем кнопку "Test" и видим на экране название проверяемой микросхемы (или список возможных названий по ГОСТ и импортных аналогов) либо "Unknown", если микросхема неисправна либо неизвестна тестеру. Тестер прогоняет все тесты и отображает названия микросхем, для которых тесты выполнились.
  2. Тест памяти 565РУ5 и 565РУ7
    Примерно то же самое, но для МС памяти. Тип микросхемы распознается автоматически, на экране отображается карта результата 8x8 ячеек. Успешно проверенные ячейки рисуются квадратом, сбойные - диагональным крестиком. Например, на фото ниже обнаружились четыре сбойные области. Справа показывается маркировка МС.
  3. Ручной тест микросхем
    Сначала выбирается количество выводов МС - DIP-8, DIP-14, DIP-16 или DIP-20. Затем, на экране отображаются состояния выводов для этого корпуса. Каждый пин можно настроить как вход либо как выход. Если стрелка идет к корпусу микросхемы, то этот пин работает на выход (и подключается ко входу тестируемой МС). Если стрелка идет от корпуса, то пин работает как входный (и подключается к выходу тестируемой МС). Кнопками вверх/вниз можно перемещаться между пинами либо выбрать режим (выбор делается кнопкой Test, название текущего режима отображается на экране) - "setup" или "out". В режиме Setup производится конфигурирование пинов на ввод или вывод. В режиме Out устанавливается состояние пинов выходов либо включается подтяжка к питанию для пинов-входов (нужна, например, если МС имеет выходы с открытым коллектором). Состояния задаются установкой чекбоксов у выводов. Текущий логический уровень на выводе можно посмотреть по его стрелке - если стрелка пустая, то уровень низкий, если закрашена - уровень высокий.

Исходники проекта можно взять тут: https://github.com/trol73/avr-ic-tester

Для написания тестов использован простой язык и скрипт компилятора на питоне. Сами тесты хранятся в файле data.ic. Компилятор (запускается compiler.py) формирует файл data.h с данными тестов.

Пример теста для микросхемы 555ТМ2 (импортный аналог 74HC74).

CHIP[14] 'ТМ2,HC74'
	POWER: -7 +14
	IN: 4, 2, 3, 1,    10, 12, 11, 13
	OUT: 5, 6,   9, 8

	TEST: 00010001 => 1010
	TEST: 01110111 => 1010
	TEST: 10001000 => 0101
	TEST: 11101110 => 0101	

	SET: 11011101
	PULSE: +3
	TEST: 1001
	PULSE: +11
	TEST: 1010

	SET: 0-> 2, 12
	PULSE: +3
	TEST: 0110
	PULSE: +11
	TEST: 0101

В первой строчке указывается корпус микросхемы (количество выводов в квадратных скобках) и её возможные названия.
Вторая строка - определение выводов питания, эти пины будут сконфигурированы на выход, на 7м пине будет всегда установлен низкий уровень, на 14м - высокий.
Далее перечисляются входы (IN) и выходы (OUT) микросхемы, пины будут сконфигурированы соответственно. Если микросхема имеет выходы с открытым коллектором, то перед ними следует указать символ @ чтобы включить подтяжку к питанию.
Как, например, для 555ЛН2:

CHIP[14] 'ЛН2,HC05'
   POWER: -7 +14
   IN: 1, 3, 5, 9, 11, 13
   OUT: @2, @4, @6, @8, @10, @12

Команда SET устанавливает логический уровень на отдельных (или всех) пинах-выходах. Возможны две формы описания команды: если надо изменить сразу уровни на всех входах (тут длина двоичного числа обязательно должна быть равна количеству входов МС)

   SET: 11011101

если надо изменить уровень на отдельных пинах (можно менять как на входах, так и на выходах)

   SET:  0 -> 3, 11  ;  1 -> 4, 2, 1, 10, 12, 13

В данном примере полная и сокращенная команды дают одинаковый результат

Команда TEST проверяет состояния пинов, для нее, аналогично, возможны две формы записи:
если надо проверить состояния всех выходов

   TEST: 1010

либо, возможна проверка состояний только отдельных пинов (как выходов, так и входов)

   TEST: 5, 9 -> 1 ; 6, 8 -> 0

Команды SET и TEST можно объединить в одну команду

   TEST: 00010001 => 1010

которая эквивалентна последовательности

   SET: 00010001
   TEST: 1010

В командах SET и TEST можно использовать символы двоеточия для разделения битовых масок и лучшей удобочитаемости.
Например, эти команды эквивалентны:

   SET: 00010001
   SET: 0001:0001
   SET: 0001:00:01

Для подачи импульсов служит команды PULSE

   PULSE: +3

подает положительный импульс на 3-й пин тестируемой МС (т.е., сначала устанавливает на выводе низкий уровень, затем меняет его на высокий).
Команда

   PULSE: -5

подает отрицительный импульс на 5й пин тестируемой МС (т.е., сначала устанавливает на выводе высокий уровень, затем меняет его на низкий).

Для проверки микросхем, у которых некоторые пины могут работать и как входы, и как выходы в зависимости от состояния, служит команда CONFIG.
Пример ее использования для микросхемы 555АП6:

   CONFIG: 18, 17, 16, 15, 14, 13, 12, 11,    1, 19 -> IN   ; 2, 3, 4, 5, 6, 7, 8, 9 -> OUT

Исходники проекта на гитхабе: https://github.com/trol73/avr-ic-tester

Фьюзы можно прошить следующей командой (если использовать avrdude в связке с usbasp):

avrdude -U "lfuse:w:0x7F:m" -U "hfuse:w:0xDF:m" -U "lock:w:0x3F:m" -s -c usbasp -p m32 -V

Если используется другой программатор, то фьюзы на картинке:



Скачать прошивку
Набор прошивок с разной контрастностью экрана, v0.5
Набор прошивок с разной контрастностью экрана, v0.6

trolsoft.ru

Суперпробник на PIC

ССуперпробник может измерять напряжение, частоту, емкость, индуктивность, генерировать различные сигналы и многое другое, и все это на одной микросхеме - PIC16F870, и четырехрязрядном 7-сегментном индикаторе. Вместо индикатора LTC4627 может быть использован любой другой с общими анодами.

 

Стабилизатор питания выполнен на LM2931 - регуляторе с низким падением напряжения.  Это позволяет питать прибор напряжением до 30 вольт с защитой от переполюсовки.

Как видно из схемы, в ней отсутствуют токоограничивающие резисторы в цепях сегментов индикатора. PIC ограничивает ток до 25 мА на линию.  Программа написана даким образом, чтобы в каждый момент времени горел только один сегмент.  Это исключает эффект того, что некоторые цифры горят ярче, чем другие.

Резисторы R5, R1? R2-R10 на входах микроконтроллера в разных режимах тестирования используются по-разному. Неиспользуемые в данный момент резисторы исключаются из схемы путем перевода выводов ПИКа в высокоомное состояние.   R5, к примеру, используется для импульсного пробника.  R4 используется для зарядки конденсатора при измерении его емкости.

Устройство собрано в корпусе от старого пробника.

Пробник управляется двумя кнопками.  Режимы переключаются нажатием кнопки 1 при нажатой кнопке2...

Prob PULS FrEq  Cnt VoLt diod CaP CoiL SIG ntSC 9600 Midi r/c [] Prn ir38 PWM StOP (Отображается на индикаторе).

Описание режимов работы

Prob Логический пробник
Показывает в первой позиции дисплея 'H' при напряжении на входе больше 3,7 вольт), 'L' - при напряжении ниже 0.8 вольт)  '-' при Z-состоянии.  Если обнаружены импульсы (минимум 0.5 мкс),во второй позиции мигает символ 'P'.
PULS Индикатор импульсов
Отображается частота импульсов (5, 50, 500, 5.0) в трех правых позициях.  В первой позиции отображается логический уровень в виде черточки внизу или вверху цифры.  Если нажать и держать кнопку 1, то генерируется серия 0.5-мкс импульсов обратной полярности, и загорается средний сегмент.  Кнопкйо 2 перебираются 4 частоты.  Выбранная частота сохраняется в памяти.
FrEq частотомер В режиме частотомера, нажатие кнопки 1 переключает индикацию на следующие 4 цифры измеренной частоты.  К примеру, индикатор показывает '12.57' для частоты 12 576 Гц.  Если нажать кнопку 1 то индикатор покажет '2576' - последние 4 цифры.  Если отображается точка, то значение в КГц, если точка мигает, то в МГц. 
Cnt Счетчик импульсов
В режиме счетчика импульсов дисплей отображает 4 младших разряда.  Кнопка 1 переключает на отображение 4-х старших разрядов.  Кнопка 2 сбрасывает счетчик.
VoLt Вольтметр Режим вольтметра.  В данной прошивке отображается примерное значение - примерно на 2% выше.  Делителя напряжения и защиты на входе нет, поэтому не подключайте пробник к напряжениям больше 5 В.
diod Индикатор падения напряжения на диоде или транзисторе
Аналогично режиму вольтметра, но с резистором 10k, подающим ток на щуп пробника.  Когда диод или  один из переходов транзистора подсоединен к щупу и земляному выводу, отображается падение напряжения.
Cap Измеритель емкость
При нажатии кнопки 1 измеряется и отображается емкость конденсатора.  Значения от .001 мкФ до 500 мкФ.  Чем больше конденсатор, тем дольше измерение.  Измерение конденсатора емкостью 100 мкФ занимает пару секунд.
Coil Измеритель индуктивности
При нажатии кнопки 1 измеряется и отображается индуктивность.  Значения от  0.1 до 999.9 мГн.  Замечание:  предполагается, что сопротивление катушки постоянному току не превышает нескольких Ом.  Если прибор зависает в этом режиме, прикоснитесь щупом к земляному выводу.
SIG Генератор прямоугольного сигнала
В этом режиме при нажатии кнопки 1 генерируются прямоугольные импульсы частотой 500 Гц и амплитудой 0.5 вольт. 
ntSC Видео генератор
Генерируется сигнал NTSC с паттерном из белых точек.
9600 Генератор кода Ascii Каждый раз, когда нажата кнопка 1, генерируются символы A-Z , следующие за cr/lf.  Автоматический выбор полярности при подключении к сигнальной линии.  Кнопкой 2 переключается скорость: 1200, 2400, 4800, 9600 бод.
Midi Генератор MIDI
Посылает ноту 60 (среднее До) на любом из16 midi-канале.  Нажатие кнопки 1 посылает 'note on'.  Отпускание кнопки 1 посылает 'note off'.  Кнопкой 2 переключаются каналы.  текущий номер канала сохраняется в памяти.
R/C Генератор импульсов для сервомашинок Генерирует 1- 2 мс импульсы для сервомашинок.  Кнопка 1 увеличивает ширину импульса, кнопка 2 - уменьшает.  При входе в режим по умолчанию генерируются импульсы 1.5 мс.
[ ] Генератор прямоугольных импульсов
Генерирует прямоугольные импульсы частотой 1 - 9999 Гц.  Кнопка 1 увеличивает частоту, кнопка 2 - уменьшает.
Prn Генератор псевдослучайных чисел
Генерирует последовательности псевдослучайных чисел с частотой 10 кГц.
ir38 Генераторр ИКкоманд Генерирует 1 мс прямоугольные импульсы с 2.5 мс паузой между ними на частоте 38 кГц.  Если подсоединить ИК диод, используется для проверки модулей ИК управления.
PWM ШИМ Генерирует сигнал ШИМ от 3 до 97 %  на частоте около 6 кГц.  Кнопка 1 увеличивает скважность, кнопка 2 - уменьшает.
StOP Таймер Кнопка 1 запускает/останавливает таймер. Изменение состояния щупа тоже запускает/останавливает таймер. Кнопка 2 сбрасывает таймер. Таймер считает 1/100 секуды от 0 до 99 сек, затем считает  1/10 сек от 100 до 999 сек ,затем считает целые секунды от 1000 до 9999 секунд (около 2 ч 46 мин).

В любом режиме при удержании двух кнопок вызывается меню.  Переключение режимов вперед и назад осуществляется кнопками 1 и 2 соответственно.

Текущий режим сохраняется в EEPROM. 

Прошивка пробника

 

micpic.ru

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *