PIC-микроконтроллер и полевые транзисторы образуют четырехзначный вольтметр.
Схема на рис.1 - развитие предыдущей идеи конструкции по использованию
аналогового входа в микроконтроллере, не имеющего встроенного АЦП, а
так же используются технические приемы из другой идеи конструкции по
управлению семисегментным светодиодным индикатором без внешних ключевых
транзисторов. Данная схема имеет последовательный канал, и нужна только
витая пара для передачи измеренных значений на персональный компьютер.
Последовательный
канал был протестирован с использованием программы компании Microsoft
Hyper Terminal сконфигурированной параметрами 115,200 бод; 8 бит,
четность, 1 стоп-бит; без аппаратного контроля.
Коротко,
программа управляет одним светодиодным семисегментным индикатором за
раз по линиям RA0 и RB7. Установка выхода RA0 в единицу и использование
RB7, как входа активизирует индикатор с общим анодом DS3. Установка
выхода RA0 в ноль и использование RB7 как входа, активизирует индикатор
с общим катодом DS2. Использование RA0 как входа и установка выхода RB7
в единицу активизирует индикатор с общим анодом DS1, а при
использовании RA0 как вход и установке выхода RB7 в ноль активизирует
индикатор с общим катодом DS0. После успешной активизации одного
индикатора, только одна из линий RB0 … RB6, конфигурируется как выход
для управления одним светодиодным сегментом. Эта схема больше не имеет
ограничения на питающее напряжение VDD - 3В или ниже - так как
светодиоды включены встречно-параллельно, таким образом, прямое падение
напряжения на одном светодиоде ограничивает обратное напряжение на
другом. Использование красных светодиодов требует 1,6 В.
Рис.2 иллюстрирует новые аспекты идеи конструкции. Q1, R5, и R6
работают как эквивалентный переменный резистор, RX, который заряжает
конденсатор C3. Вместо подключения RX к земле, просто подключите его к
одной линии ввода-вывода – например RB0 – микроконтроллера. Если RB0
включен как выход в нулевом состоянии, значит первый аналоговый канал
активизирован и измерительная подпрограмма подсчитывает импульсы заряда
до величины 66% от VDD; затем, по таблице полученная величина задержки
переводится в величину милливольт из трех цифр. Для увеличения
количества аналоговых входов, вы можете подключить до семи цепей
переменного резистора в параллель – таким образом, что каждый подключен
между C3 и одной линией ввода-вывода, RB1 … RB7. Важно, что линии
ввода-вывода подключены к индикаторам и так же активируют или отключают
аналоговые каналы. Когда один аналоговый канал активизирован линией
ввода-вывода выходом в низком состоянии, другие линии имеют высокое
сопротивление и работают как входы, что отключает все остальные каналы.
Соответственно, индикаторы отключены.
В схему на рис.1 так же
добавлен простейший последовательный канал без добавления внешних
компонентов. Если вы подключите две линии ввода-вывода, RA1 и RA2,
сконфигурированные как выходы к RXD (Выв 2) и GND (Выв 5) разъема RS
232, вы сможете создавать, с помощью программы, положительное и
отрицательное напряжение относительно земли порта RS 232 в ПК. Когда
RA1 в единице, а RA2 в ноле, RXD имеет положительный потенциал 5 В
относительно земли порта RS 232 в ПК. Когда RA1 в ноле, а RA2 в
единице, RXD имеет отрицательный потенциал -5 В относительно земли
порта RS 232 в ПК. Файл прошивки содержит практический пример для PIC16F84A-20P. Он не оптимизирован, но полностью прокомментирован для облегчения задачи перевода на другие микросхемы средней сложности компании Microchip, например PIC16F628A, которая поддерживает частоту работы до 20 МГц и имеет больше линий ввода-вывода.
Вы можете поддержать сайт напрямую через наши платежные реквизиты
WebMoney Z355095169785 R218396818010 E144063919939 Все средства полученные от пользователей сайта будут использованы исключительно для поддержки и дальнейшего развития сайта.