Например TDA7294

Форум РадиоКот • Просмотр темы - Pic16f873 аналоговый вход/выход
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Вс дек 28, 2025 21:45:04

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 20 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 05:54:09 
Родился

Зарегистрирован: Сб ноя 10, 2012 05:28:12
Сообщений: 11
Рейтинг сообщения: 0
Здравствуйте, недавно столкнулся с проблемой, нужно собрать схему и написать программу на микроконтроллер PIC16F873, так как учусь на программиста с принципами написания программы на мк разобрался за пару часов. Но тут возникла проблема, я в электронике практически самоучка, но многое знаю, а вот с даташитом на этот мк до конца разобраться не смог, подскажите:

1)Какие аналоговые сигналы и в каких диапазонах может воспринимать и передавать этот МК?
2)Можно ли программно(пишу на С) задать напряжение на выходах мк к цифровому индикатору, мне нужно 1.7В?

http://labkit.ru/userfiles/file/documen ... 76_877.pdf вот даташит на этот мк.


Последний раз редактировалось zuranika Сб ноя 10, 2012 08:18:57, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 08:36:13 
Это не хвост, это антенна
Аватар пользователя

Карма: 20
Рейтинг сообщений: 188
Зарегистрирован: Вс мар 28, 2010 12:52:22
Сообщений: 1368
Откуда: Беларусь
Рейтинг сообщения: 0
1. Аналоговые сигналы с уровнями 0-Uпит микроконтроллера. Постоянное напряжение. Модуля ЦАП на борту нет.
2. Выходные уровни равны напряжению питания, поэтому программно понизить напряжение нельзя. Можно только внешними делителями или схемами сдвига уровня.

_________________
«Еще я хотел бы, чтобы наши ученые изобрели какой-то новый источник энергии, чтобы мы на коленях не ползали даже перед нашими братьями, умоляя их и выпрашивая тонну нефти или кубометр газа», — рассказал белорусский президент.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 09:06:54 
Родился

Зарегистрирован: Сб ноя 10, 2012 05:28:12
Сообщений: 11
Рейтинг сообщения: 0
то есть могу подать на вход от 0 до 5 вольт при питании 5В. На счет второго я так и думал что придется ставить резисторы для ограничения тока.
Большое спасибо.
Не подскажете какова чувствительность этого АЦП, т.е. почувствует ли он разницы скажем между 0.01В и 0.015В?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 11:22:24 
Вымогатель припоя
Аватар пользователя

Карма: 5
Рейтинг сообщений: 74
Зарегистрирован: Пн июн 18, 2012 12:01:04
Сообщений: 650
Откуда: Челябинская область, Копейск
Рейтинг сообщения: 0
На счет пиков не уверен, т.к. архитектуры не знаю, но на AVR делал программный ЦАП 0-5 вольт с точностью 10 мВ, проверял все это дело только в протеусе - работает стабильней некуда, вот только в железе не проверял, разница думаю будет только в источнике питания по стабильности и всё. Сделать 1.7 В на ноге легко, однако не все ноги для этого подходят, если нужна динамика, ставим MOSFET и управляем через него динамически другой ногой.


Вернуться наверх
 
Эиком - электронные компоненты и радиодетали
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 11:48:09 
Родился

Зарегистрирован: Сб ноя 10, 2012 05:28:12
Сообщений: 11
Рейтинг сообщения: 0
Спасибо, 1.7 выход с ноги не обязательно просто у меня цифровые одноразрядные индикаторы работают от 1.7В при таком напряжение достигается максимальное свечение при минимальном токе. Но тут я уже расчитал резисторы. Вот теперь думаю как быть с аналоговым входом, там управление через переменный резистор я думал по току управлять, теперь придется расчитать мост что бы по напряжению было, а на идикаторы просто выводиться значение соответствующее положению резистора что типо от 0 до 100. Ещё вопросик, а АЦП в какое значение преобразует входной сигнал, я понял что напряжение в 0.5В он преобразует в char равный о.5.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 11:53:11 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 24632
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Как можно учиться программировать контроллеры и совершенно не понимать ФИЗИЧЕСКОГО СМЫСЛА производимых манипуляций? :facepalm:
Разрядность АЦП у заявленного контроллера - ДЕСЯТЬ. Это означает, что минимальный ДИСКРЕТ преобразования (разрешающая способность АЦП) составит Uоп/1024=5/1024 - примерно 5 милливольт.
Но это еще не означает, что такой же будет ТОЧНОСТЬ преобразования. Для этого открывайте и читайте даташит на данный контроллер...
zuranika писал(а):
Ещё вопросик, а АЦП в какое значение преобразует входной сигнал, я понял что напряжение в 0.5В он преобразует в char равный о.5.

Если диапазон чисел у 10 разрядного АЦП по выходу составит 0...1023 (0х00...0х3FF), то никак не может 0,5 вольта быть равным 0.5.
В регистре результата будут целые беззнаковые числа указанного выше диапазона... - тип unsigned int
К слову, Вы даже не знаете типы в Си... :facepalm: char - целое знаковое разрядностью в 1 байт -127...128


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 12:04:52 
Родился

Зарегистрирован: Сб ноя 10, 2012 05:28:12
Сообщений: 11
Рейтинг сообщения: 0
Я просто до этого ни когда не работал с микроконтроллерами, занимался в основном аналоговыми приборами, привык к простым даташитам которые максимум 3 - 4 листа занимали, а в это больше 170 листов и пока многое непонятно, вот пытаюсь разобраться что к чему, как раз таки пытаясь понять полностью физический смысл, если я во всем разберусь программу для меня написать будет проще простого, так как я пишу программы на С++ для ПК. А под МК ни когда не писал. Я не зря дал наверху ссылку даташита на этот мк, я сам по ней пытался разобраться и сижу читаю. Если можете посоветуйте книгу про мк, что бы так как раз все описывалось не очень сложным языком. Уроки по программированию мк которые я нашел сводились обычно к тому как перевести ногу из одного состояние в другое сделать прерывание и т.п. объяснение работы с АЦП ни где не было.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 12:09:28 
Родился

Зарегистрирован: Сб ноя 10, 2012 05:28:12
Сообщений: 11
Рейтинг сообщения: 0
Крам извиняюсь за неточность, голова тут забита многими другими вещами, я просто по запарке написал char хотя думал про float


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 12:12:49 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 24632
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
zuranika писал(а):
Уроки по программированию мк которые я нашел сводились обычно к тому как перевести ногу из одного состояние в другое сделать прерывание и т.п. объяснение работы с АЦП ни где не было.

А что, АЦП отдельно и АЦП на борту МК чем то различаются?
Или на чтение 170 СИСТЕМАТИЗИРОВАННЫХ страниц требуется больше ума, чем на 3...4?
Что за бред Вы тут несете?
Лучше задавайте конкретные вопросы без "музыкального" сопровождения о собственных проблемах...
:facepalm:
ЗЫ. Причем тут флоат? КАРАУЛ!!! Зачем преобразовывать 10 разрядов во флоат? Вам непременно нужно забить программную память всякой фигней?
Опишите КОНКРЕТНО поставленную задачу. По пунктам.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 12:23:54 
Родился

Зарегистрирован: Сб ноя 10, 2012 05:28:12
Сообщений: 11
Рейтинг сообщения: 0
Про флоат я спросил, хотел узнать как будут храниться данные в памяти мк преобразованные в АЦП.
задача такова:
есть процесс в котором нужно контролировать температуру, там находится датчик ТСМ с характеристикой 50М, нужно отобразить температуру на индикаторах диапазон(-50 +100) и преобразовать сигнал этого датчика(в нашем случае сопротивление) в частотный сигнал. Мне нужно что бы я получил значение температуры и занести её в переменную, Эта переменная потом будет использовать в формуле рассчета частоты.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 12:37:04 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 24632
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
1. Отображение температуры на индикаторах - это суть есть ТАБЛИЧНОЕ преобразование двоично-десятичного числа в код сегментного индикатора (либо другого на выбор). Т.е. задача отображения сводится к ТРЕМ действиям: преобразованию переменной температуры в двоично-десятичный формат (массив unsigned char длиной в количество десятичных разрядов на индикации), табличное преобразование в код символов на индикаторе, вывод на индикатор.
2. Название датчика температуры мне ни о чем не говорит. Ваша задача состоит в том, чтобы преобразовать АНАЛОГОВЫМ способом сигнал датчика в динамический диапазон АЦП по входу - т.е. 0...5 вольт. Либо 0...опорное напряжение АЦП (оно может быть не равно напряжению питания). Для этого применяют источники опорного напряжения. Есть такие и на напряжение 4,096 вольт. Тогда шаг преобразования составит ровно 4 милливольта.
3. Последняя задача: вычисление управляющей переменной для формирования частотного сигнала. Для этого необходимо знать ПАРАМЕТРЫ этого сигнала: диапазон частот, шаг перестройки частоты, форма (меандр, синус, импульсы определеной скважности, пила...)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 12:42:29 
Модератор
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1432
Зарегистрирован: Чт мар 18, 2010 23:09:57
Сообщений: 4599
Откуда: Планета Земля
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Цитата:
хотел узнать как будут храниться данные в памяти мк преобразованные в АЦП
Они, изначально, хранятся в единицах, диапазон которых равен разрядности АЦП, к примеру - 0-1023 (собственно, об этом уже писали выше). Вы, скорее всего, думаете, что данные с АЦП будете читать уже в вольтах. Это заблуждение. Переводить в вольты Вам придётся самому. Для этого открывайте даташит, раздел ADC, и смотрите формулу расчёта.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 12:44:39 
Родился

Зарегистрирован: Сб ноя 10, 2012 05:28:12
Сообщений: 11
Рейтинг сообщения: 0
1)Как вывести информацию на индикаторы я сразу разобрался
2)Характеристики частотного сигнала тоже есть, это второстепенный вопрос который я решу сам
3)как преобразовать сопротивление в сигнал от 0...5В я уже практически рассчитал

В данный момент мне нужно получить из сигнала 0-5В значение которое я мог бы занести в переменную а потом использовать в формуле расчета частоты.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 12:47:37 
Родился

Зарегистрирован: Сб ноя 10, 2012 05:28:12
Сообщений: 11
Рейтинг сообщения: 0
Alex,Я уже понял что они будет храниться не в вольтах, а в числах равных от 0 до 1023, перевести это в вольты думаю проблем не составит.
Спасибо


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 12:54:31 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 24632
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
zuranika писал(а):
В данный момент мне нужно получить из сигнала 0-5В значение которое я мог бы занести в переменную а потом использовать в формуле расчета частоты.

:))) :))) :)))
Начал за здравие - кончил за упокой...
На выходе АЦП имеется 10-разрядов в двух однобайтных регистрах. Если установлено правое выравнивание, то в младшем регистре результата будут восемь младших разрядов результата преобразования, а в старшем регистре - два старших. Т.е. преобразование в unsigned int будет таким:
256*ADRESH+ADRESL


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 12:57:22 
Родился

Зарегистрирован: Сб ноя 10, 2012 05:28:12
Сообщений: 11
Рейтинг сообщения: 0
Спасибо.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 13:09:28 
Модератор
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1432
Зарегистрирован: Чт мар 18, 2010 23:09:57
Сообщений: 4599
Откуда: Планета Земля
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Цитата:
перевести это в вольты думаю проблем не составит.
Тогда почему у Вас эта задача:
Цитата:
мне нужно получить из сигнала 0-5В значение которое я мог бы занести в переменную
превращается в проблему ?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 13:18:14 
Родился

Зарегистрирован: Сб ноя 10, 2012 05:28:12
Сообщений: 11
Рейтинг сообщения: 0
Я просто изначально неправильно понял принцип хранения данных АЦП. И не смог сообразить как внести эти данные в переменную, когда написали мне что от 0 до 1023 вот тогда соображалка начала работать и я понял как это сделать. И это перестало быть проблемой. Извините уж не приходилось мне работать напрямую с регистрами, только иногда с адресами переменных в оперативной памяти и то немного в другой сфере. А здесь вот не сообразил.

Мы все учились по-немногу, чему-нибудь и как-нибудь...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 13:44:31 
Модератор
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1432
Зарегистрирован: Чт мар 18, 2010 23:09:57
Сообщений: 4599
Откуда: Планета Земля
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Да незачто извиняться, главное что поняли :tea:


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Pic16f873 аналоговый вход/выход
СообщениеДобавлено: Сб ноя 10, 2012 13:47:18 
Родился

Зарегистрирован: Сб ноя 10, 2012 05:28:12
Сообщений: 11
Рейтинг сообщения: 0
Если все получиться скину в эту ветку схему и прошивку может кому пригодится.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 20 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 25


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y