Добрый день.
Собираю регулируемый БП из АТХ. Регулировкой занимается arduino nano. Arduino (вход Vin), датчик тока ACS712 и цифровой потенциометр x9103s питаются от дежурки. Также на вход Aref дуньки завел ИОН от TL434. На входы AD0-2 подаю изщмеряемые величины. Хочу видеть отладку в Serial port. Но получается, что для отладки приходится подключать дуньку к usb, соответственно, она получает питание и от Vin, и от usb. Все бы ничего, но значения АЦП при подключении usb разительно отличаются от значений, если usb не подключено. Есть ли какой способ решить эту проблему или же придется отключать ИОН от Aref и за опорное брать напряжение питания ?
Информативно. Поясните, как можно хреново завести, что в одном из случаев считается правильно, а в другом - нет. С tl494 с 14-й ноги (ИОН) проводом припаял к входу aref дуньки. Земля у них общая.
Я вот подумал: регистры надо явно выставлять, что используется aref ? Просто инициализацию я делаю так: #define AD0 0 // PC0 Канал 0 АЦП #define AD1 1 // PC1 Канал 1 АЦП #define AD2 2 // PC2 Канал 2 АЦП
Вообще не подключайтесь к штатному разъёму USB, а подключите ногу TX (и только её!) к USB-TTL преобразователю и выводите, что хотите и сколько хотите.
Но, если по Вам нужно использовать ADC по гамбургскому счёту, то Вам необходимо убрать Nano вообще, а сделать всё на голом МК разведя для него правильное питание по даташиту. На питании аналоговой части в Nano откровенно сэкономили. Там нет ни индуктивности, ни конденсатора, которых требует даташит.
в первом посте словами. или прям рисовать надо ? 3 детали (дунька датчик тока и потенциометр) с одним общим питанием и землей + tl494 с общей землей. с tl-ки берется опорное 5Вна вход aref дуньки. считываю с ацп показания датчика тока, преобразую их в значения силы тока, получаю один результат, подключаю комп через usb к дуньке - считываю, преобразую и получаю совсем другой результат. Вроде понятно объяснил. Не ?
Потому что!
Пин Vin - это вход LDO 5V, а как тебе известно (или не известно?) - на вход LDO нужно подавать на 2 или более вольт больше, чем напряжение стабилизации LDO. То есть примерно 7В…9В.
Об этом на каждом углу написано.
А вот если у тебя +5В питание, то нужно его подавать (кто бы мог подумать?) на вывод 5В.
Ок, принял. Но есть вопросик: чем мне грозит подача чуть больше 5В (на дежурке 5, 2В вроде) на Vin ? Так-то дунька запускается и пашет с таким подключением питания. Так-то можно дежурку сразу на вход +5В повесить , но что-то сыкотно. Мало-ли чего на дежурке скаканет. Или не бздеть ? )))
Про питание вам уже пояснили, но вы так и не ответили про напряжение дежурки.
Потому, что если оно 5В, то непонятно как вы из него получаете опорное напряжение 5 В.
«Вроде», «мне кажется» и тп в микроконтроллерной технике недопустимо. Нужно точное значение знать. Если оно действительно 5.2В, то ничего страшного в этом нет. Допустимо до 5.5В на мк ATmega328P:
ЗЫ: Мне кажется Вы взялись за проект, который пока вам «не по зубам».
Напряжение дежурки 5,2В. Опорное берется не из дежурки, а от tl494. Там специальный выход ИОН 5В.
Девайса перед собой нет, про 5,2 В пишу по памяти, поэтому “вроде” и “наверное”. Ида, это не проект, а хобби, так сказать, отдушина. Уже проделывал такое с другим БП, только там ардуино микро стоит, и все работает хорошо. Теперь хочется лучше, но из-за лени решил взять нано с usb, чтобы не гемороиться с ttl свистком.