Страница 1 из 1

Как оставить пин в открытом состоянии?

Добавлено: Пн авг 17, 2020 12:23:32
forfrends
Всем привет!
Решил сделать рации на базе RDA1846S (SA818-U). Вот ссылка на мой проект в EasyEDA: https://easyeda.com/igor.silenock/rda1846s
На сколько я понял, по даташиту контакт H/L от RDA1846S должен быть либо подтянут к земле, либо "болтаться в воздухе".
Цитата:
high/low output power control; Leave open for high output power,low level to low output power. (Please kindly note: this pin can NOT be connected to VDD or high level of cmos output)
Так как я буду управлять при помощи Atmega328, то оставить пин в "подвешенном" состоянии не получится. Либо логический 0 (подтяжка к земле), либо 1 (то же что и питание).
Возникает вопрос: как правильно сделать развязку, чтобы при управлении с МК логический 0 подтягивал контакт H/L к земле, а логическая 1 оставляла контакт свободным?
Я пробовал в сети найти ответ, но мне выдает только STM32, где есть возможность задать пину Высокоимпедансное состояние, но в Атмеге это нельзя сделать. Можете подсказать как решить этот вопрос?

Re: Как оставить пин в открытом состоянии?

Добавлено: Пн авг 17, 2020 12:31:44
1en2
сделать выход через открытый коллектор...

Re: Как оставить пин в открытом состоянии?

Добавлено: Пн авг 17, 2020 12:33:19
Reflector
[uquote="forfrends",url="/forum/viewtopic.php?p=3880252#p3880252"]Так как я буду управлять при помощи Atmega328, то оставить пин в "подвешенном" состоянии не получится. Либо логический 0 (подтяжка к земле), либо 1 (то же что и питание).[/uquote]
Как эта Atmega328 с порта читает, если на выходе всегда 0 или 1?

Re: Как оставить пин в открытом состоянии?

Добавлено: Пн авг 17, 2020 12:38:16
Мурик
forfrends писал(а):мне выдает только STM32
Ставьте его. Будет даже лучше, а Atmega давно устарела.

Re: Как оставить пин в открытом состоянии?

Добавлено: Пн авг 17, 2020 12:42:27
NStorm
Так как я буду управлять при помощи Atmega328, то оставить пин в "подвешенном" состоянии не получится. Либо логический 0 (подтяжка к земле), либо 1 (то же что и питание).
Я пробовал в сети найти ответ, но мне выдает только STM32, где есть возможность задать пину Высокоимпедансное состояние, но в Атмеге это нельзя сделать.
Вы где такие глупости прочитали? Конфигурите пин как вход без подтяжки - вот вам и "Высокоимпедансное состояние".

Добавлено after 3 minutes 12 seconds:
Возникает вопрос: как правильно сделать развязку, чтобы при управлении с МК логический 0 подтягивал контакт H/L к земле, а логическая 1 оставляла контакт свободным?
Вам это не нужно. Всегда ОК на атемеге реализуется через переключение направления порта в регистре DDRx. В PORTxn главное 1 не пишите, только DDRxn переключайте.
Изображение
Когда DDRxn - 0, будет в воздухе болтаться, когда 1 - будет низкий уровень на выходе.

Re: Как оставить пин в открытом состоянии?

Добавлено: Пн авг 17, 2020 13:09:37
forfrends
Спасибо большое за помощь!