В моем случае я использую микроконтроллеры PIC24F и dsPIC33F, но где сопротивление порта ввода-вывода для PIC в открытом состоянии, указанное в техническом описании? Я не могу найти его нигде. И как это относится к другим процессорам — 16F/12F PIC, PIC32, MSP430, AVR и т. д.
Причина, по которой я спрашиваю об этом, заключается в том, что я разрабатываю чувствительную схему, которая изменяет диапазон входного сигнала АЦП, оставляя резистор 10 кОм плавающим или заземленным. Если сопротивление во включенном состоянии находится в сотнях Ом, это приведет к погрешности в 1% или более.
Краткий ответ:
если предположить, что структура драйвера ввода-вывода «обычный cmos», значение выходного сопротивления можно оценить косвенно. Большинство DS предоставляют данные для «характеристик DC IO», из которых можно рассчитать этот параметр. В большинстве случаев даются следующие данные:
a) Напряжение питания (Vcc)
b) Ток нагрузки (Iload)
c) Падение напряжения при токе нагрузки (Vdrop)
Статическое сопротивление напрямую зависит от Vdrop/Iload.
Например , PIC24F в таблице 26-10 для Vcc=2 В и Vdrop=0,4 В производитель указывает Iload=3,5 мА (наихудший случай). Это дает ~ 114 Ом. Обратите внимание, что увеличение напряжения питания до 3,6 В увеличит Iнагрузку до 6,5 мА при том же падении напряжения, что даст ~ 62 Ом.
Длинный ответ :
I. Прежде всего, нужно проверить, действительно ли имеет дело с «обычной структурой ввода-вывода CMOS», которая должна быть похожа на следующую:
К сожалению, производители UC редко предоставляют эту информацию (она предоставляется, если вы имеете дело с дискретными элементами, такими как семейство 74HC). Однако я бы сказал, что это наиболее распространенная структура, и есть явные признаки, если она действительно используется (подробнее об этом позже).
II. Если вышесказанное верно, то можно заметить, что при сопротивлении фактически будет «сопротивление» NMOS. В этом случае VGS будет равно напряжению питания, VDS — напряжению Vdrop, а ID — току Iload.
Теперь осталось установить, относятся ли данные, представленные в DS производителя, к линейной области или к области насыщения. Если данные из DS относятся к линейной области, то «статическое сопротивление», рассчитанное в самой первой точке, является довольно хорошим приближением и также справедливо для гораздо меньших токов. Если данные относятся к области насыщения, расчетное сопротивление будет слишком пессимистичным для меньших токов.
Выше иллюстрируется эта характеристика из Википедии. Также стоит проверить всю статью о полевых МОП-транзисторах .
Когда VGS > Vth и VDS < VGS - VTH транзистор находится в линейной области. Довольно безопасно предположить, что для КМОП-технологий, в которых производятся микроконтроллеры, Vth находится где-то между 0,5–1,5 В вольт. Таким образом, принимая во внимание предыдущий пример PIC24F, можно с хорошей долей вероятности заключить, что NMOS находится в линейной области -> VGS (2 В) > VTH (~ 1,5 В) и VDS (0,4) < VGS (2 В)-VTH (1,5 В).
Примечание: МОП-устройство даже в так называемой "линейной области" является нелинейным. Так что качество аппроксимации его линейным устройством (резистором) будет зависеть от точки, в которой производилась аппроксимация (рабочая точка). В приведенных выше примерах аппроксимация берется при довольно большом токе, поэтому она будет не очень точной при очень малых токах (на самом деле она устанавливает верхнюю границу сопротивления).
III. Итак, каковы признаки того, что вы имеете дело с обычной схемой ввода-вывода CMOS?
а) Если повезет - будет эквивалентная схема выходного каскада в DS
б) Если повезет - как и в случае с MSP430G2231 на стр. 20 можно найти характеристики Vdrop vs iload, которые ужасно похожи на характеристики NMOS ID vs VDS. И в качестве плюса этой характеристики можно напрямую получить «статическое сопротивление» и сказать, относятся ли данные, предоставленные производителем, к линейной области или области насыщения.
в) В противном случае можно поспорить, что это случай. Ваши шансы на правильную ставку возрастают, если данные показывают, что управляющий ток значительно возрастает с повышением напряжения питания.
Вероятно, это не указано из-за очень широкого диапазона и изменчивости таких вещей, как напряжение питания и нагрузка.
Для чего-то критичного я бы использовал аналоговый переключатель. Они имеют хорошо выраженное низкое сопротивление во включенном состоянии. Вы можете использовать MOSFET в качестве переключателя, если вам не хватает места.
Типичный КМОП-выход не будет иметь единственного измеримого значения «сопротивления» как такового — вместо этого он будет вести себя как нечто, напоминающее источник/приемник постоянного тока, включенный последовательно с резистором, с другим резистором, включенным параллельно. Точнее, он будет вести себя как параллельная комбинация нескольких различных источников/приемников тока с различными последовательными резисторами. Производители устройств обычно предоставляют несколько графиков, на которых указано выходное напряжение при различных уровнях выходного тока, но я никогда не видел, чтобы кто-то указывал, что устройство действительно будет соответствовать изображенному на графике поведению с какой-либо конкретной степенью точности. С другой стороны, производители устройств часто указывают гарантированное напряжение для слабонагруженного выхода. Если ток, потребляемый вашим резистором 10K, не превышает значения, указанного для этой спецификации,
Томас О
Леон Хеллер
Томас О
Леон Хеллер
Томас О
Турбо Дж