|
Многофункциональные выводы микроконтроллеров |
|
|
|
Oct 30 2009, 13:20
|

Участник

Группа: Участник
Сообщений: 43
Регистрация: 24-08-07
Из: Санкт-Петербург
Пользователь №: 30 043

|
На рисунке представлен один из способов решения проблемы с нехваткой ног:  Описание идет такое: Цитата Аналоговый вход управляет двумя цифровыми выходами. В этом случае аналоговый вход соединяется с источником опорного напряжения 2.5В. Такое соединение может пригодиться, если в качестве Vref АЦП используется напряжение питания 5В и требуется скорректировать результат преобразования под конкретное значение напряжения питания. Коррекцию можно осуществить с помощью 2.5-В прецезионного источника напряжение (ИОН), если учесть, что значение 2.5В соответствует 128d=80h для 8-битного АЦП.
Вывод МК соединен с двумя входами компараторов. Делитель напряжения устанавливает 3В на неинвертирующем входе компаратора А и 2 В на инвертирующем входе компаратора В. Когда данный вывод программируется как вход, считывается аналоговая величина, а если как цифровой выход, то при НИЗКОМ уровне на нем, выходной уровень компаратора А также будет НИЗКИМ. Если на цифровом выходе появится ВЫСОКИЙ логический уровень, то в НИЗКИЙ уровень перейдет выход компаратора В. Данная схема будет полезна в том случае, когда нет необходимости в одновременном появлении НИЗКИХ логических уровней на выходах обоих компараторов. Подобные методы также применимы и при организации только цифровых входов и выходов, если например, применить резистивный делитель напряжения на двух резисторах вместо источника опорного напряжения 2.5В, когда вывод МК сконфигурирован как цифровой вход. Со второй частью более менее разобрался. Я так понял, если дадим напряжение более трех вольт на выходе компаратора А получим "0" а компаратора B - "1". В промежутке между 2 и 3 В получаем на обоих выходах 1, и менее 2 В, получаем на выхода А "1", и на выходе В "0". Не понял, какую функцию несет корректирующая часть цепи? и как осуществляется измерение аналогового сигнала (по сути, где вход)?
|
|
|
|
|
Oct 31 2009, 15:45
|

Участник

Группа: Участник
Сообщений: 43
Регистрация: 24-08-07
Из: Санкт-Петербург
Пользователь №: 30 043

|
Цитата(rezident @ Oct 30 2009, 17:15)  Откуда "дровишки", то бишь эта схема с описанием? Схема из книги "Аналоговые интерфейсы микроконтроллеров" Стюарта Болла Цитата(SysRq @ Oct 30 2009, 22:39)  Если назначить ногу порта МК выходом, то можно подать +5 и 0 на компараторы (что не повлияет на 2,5В REF). Если включить альтерантивную функцию входа АЦП на ноге МК, то: а) около ~2.5В попадет на компараторы б) при этом еще оцифровываем некий источник 2,5В REF. Так, вроде  Если просто 0-5В тогда пропадает возможность подать на оба выхода компараторов единицы.. нужно напряжение от 2 до 3 В. Каким образом оцифровываем, и куда его подключаем? Цитата(demiurg_spb @ Oct 30 2009, 23:42)  Нахрена козе баян?! Когда маловато пинов проще подключить на SPI сдвиговый регистр или использовать MCU с большим количеством портов. А если MCU с наибольшем количеством ног не подходит, но не хватает небольшого кол-ва?
|
|
|
|
|
Nov 1 2009, 01:18
|

Профессионал
    
Группа: Свой
Сообщений: 1 818
Регистрация: 15-10-09
Из: Владивосток
Пользователь №: 52 955

|
Цитата(rezident @ Nov 1 2009, 09:36)  Ну-ка, назовите навскидку хотя бы три разных маловыводных микроконтроллера, имеющих встроенный ЦАП (аналоговый выход). Весьма надуманная, притянутая за уши и другие выступающие части задача. Про надуманность согласен полностью. Американам просто для книжек реальных примеров не хватает, также как и в их боевиках. А если под ЦАП иметь в виду ШИМ с фильтром, то контроллеров гораздо больше трех. А про маловыводность, если 44 ноги - маловыводный, xmega имеет чистый ЦАП, у picoв тоже что-то есть, но в их сторону особо не гляжу.
|
|
|
|
|
Nov 1 2009, 02:04
|
Гуру
     
Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882

|
Цитата(V_G @ Nov 1 2009, 06:18)  А если под ЦАП иметь в виду ШИМ с фильтром, то контроллеров гораздо больше трех. Это еще более бредовый пример.  Даже бредовее, чем у топикстартера. На двух пинах GPIO (реализовав I2C) можно сделать как минимум 8*16= 128! каналов, причем и ввода и вывода одновременно ( PCF8575). А на трех пинах (реализовав SPI) вообще сколько в голову взбредет, цепляя каскадно-последовательно уже упомянутые ранее 74HC595.
|
|
|
|
|
Nov 1 2009, 08:19
|

Участник

Группа: Участник
Сообщений: 43
Регистрация: 24-08-07
Из: Санкт-Петербург
Пользователь №: 30 043

|
Цитата(rezident @ Nov 1 2009, 05:04)  Даже бредовее, чем у топикстартера. Ну я только начинаю разбираться, поэтому и спрашиваю ). Цитата(rezident @ Nov 1 2009, 05:04)  На двух пинах GPIO (реализовав I2C) можно сделать как минимум 8*16=128! каналов, причем и ввода и вывода одновременно Имеется ввиду типа "монтажного И", как вот здесь http://easyelectronics.ru/montazhnoe-i.html?
|
|
|
|
|
Nov 1 2009, 08:34
|

Участник

Группа: Участник
Сообщений: 43
Регистрация: 24-08-07
Из: Санкт-Петербург
Пользователь №: 30 043

|
Цитата(AHTOXA @ Nov 1 2009, 11:25)  Нет. Имеются в виду микросхемы-расширители ввода-вывода, rezident же привёл ссылки на даташиты. Такая микросхема подключается к контроллеру с использованием двух-трёх ног, и добавляет, скажем 8 ног. Причём подключать можно несколько таких микросхем. Поэтому ухищрения для экономии ножек контроллера становятся не нужны. Понятно, не сразу сообразил  . Всем спасибо за ответы!
|
|
|
|
|
Nov 2 2009, 08:27
|

Профессионал
    
Группа: Свой
Сообщений: 1 818
Регистрация: 15-10-09
Из: Владивосток
Пользователь №: 52 955

|
ПЛИС часто используют для решения относительно простых задач на более высоких частотах, чем МК. ПЛИС, грубо говоря, это схема на традиционных цифровых ИС (элементарной логике, счетчиках, регистрах и пр. ), засунутая в один корпус. И проектируют начинку ПЛИС часто методами схемотехнического проектирования, хотя могут применять и языки типа VHDL, AHDL... Текст на этих языках и программой-то трудно назвать. Это скорее уравнения работы устройства. Можно задавать работу ПЛИС и в виде таблицы состояний, и комбинированно - в виде уравнений и таблицы. Я так делал контроллер индикатора, содержащий дешифратор для семисегметнных индикаторов (4 штуки) и сдвиговый регистр для последовательной закачки данных в индикатор. В общем, нечто вроде интеллектуального расширителя выходов микроконтроллера. Частоты высокой там не требовалось, а вот большое число ножек ПЛИС было весьма кстати. А МК - чисто программное устройство, гораздо более гибкое, чем ПЛИС, но и менее быстрое в принципе. И пишете вы для него программу на ассемблере или Си, схемотехническое проектирование почти отсутствует.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|