roboforum.ru

Технический форум по робототехнике.
Текущее время: 02 дек 2024, 22:42

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




Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Atmega16a и АЦП
СообщениеДобавлено: 07 мар 2011, 03:18 
Не в сети

Зарегистрирован: 16 фев 2011, 00:52
Сообщения: 142
прог. языки: PHP, ActionScript, Delphi, Visual Basic, Perl,Java
в CodeVisionAVR через коде визард вставил порт С на out и включитл ацп получил сгенерированый код получения данных с ацп функцией
Код:
unsigned char read_adc(unsigned char adc_input)
{
ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);
// Delay needed for the stabilization of the ADC input voltage
delay_us(10);
// Start the AD conversion
ADCSRA|=0x40;
// Wait for the AD conversion to complete
while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10;
return ADCH;
}
.....
void main(void){
...
while(1){
PORTC = read_adc(0);
}
}

порт C увешал светодиодами
от регулируемого источника питания подаю напряжение на GND и PA0 , мультиметр показывает 1.6 вольта. подключил к мк, все светодиоды загорелись и мк завис. попробовал напряжение подать через сопротивление 1кОм, все ок, меняю напряжение, диоды меняются, одно но сопротивление перегревается. и не совсем понятно как теперь по этим светодиодам определить какое напряжение.
когда подаю 1.6в загораются первые 4 светодиода, т.е. 0b00001111 , подаю 20в загораются 0b00111111, причем первые 3 мигают как сумасшедшие. может я что делаю не так? или так и должно быть ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Atmega16a и АЦП
СообщениеДобавлено: 07 мар 2011, 04:04 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Смущают фразы "порт С увешал светодиодами", "сопротивление 1кОм перегревается" и "подаю 20 вольт".
Схему в студию.

По-моему, у вас что-то "в консерватории" не хватает.
И да, конечно, вы что-то делаете не так :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Atmega16a и АЦП
СообщениеДобавлено: 07 мар 2011, 13:34 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
на С жтаг еще.

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Atmega16a и АЦП
СообщениеДобавлено: 07 мар 2011, 16:52 
Не в сети

Зарегистрирован: 16 фев 2011, 00:52
Сообщения: 142
прог. языки: PHP, ActionScript, Delphi, Visual Basic, Perl,Java
Michael_K писал(а):
Смущают фразы "порт С увешал светодиодами", "сопротивление 1кОм перегревается" и "подаю 20 вольт".
Схему в студию.

По-моему, у вас что-то "в консерватории" не хватает.
И да, конечно, вы что-то делаете не так :)

Вложение:
Image1.png
Image1.png [ 11.95 КиБ | Просмотров: 1848 ]

вот если без резистора то мк зависает сразу. (светодиоды на порту С загораются все и больше рекции от мк нет, пока питание не отключишь)
с резистором
Вложение:
Image2.png
Image2.png [ 12.58 КиБ | Просмотров: 1879 ]

работает мк так как описал в первом посте


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Atmega16a и АЦП
СообщениеДобавлено: 07 мар 2011, 16:53 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Надо не через резистор подавать, а через резисторный делитель напряжения, если хотите измерять напряжение выше уровня питания контроллера.

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Atmega16a и АЦП
СообщениеДобавлено: 07 мар 2011, 17:05 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
млин, откуда вы такие беретесь?
- каждому светодиоду поставить последовательно резистор в один килоом.
- резисторный делитель на ногу pa0, так чтобы напряжение на АЦП никогда не превышало AREF.
Ну и конденсаторы бы что ли на питание хотя бы повесили... для красоты.

Вы наугад что ли схемы собираете...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Atmega16a и АЦП
СообщениеДобавлено: 07 мар 2011, 17:09 
Не в сети

Зарегистрирован: 16 фев 2011, 00:52
Сообщения: 142
прог. языки: PHP, ActionScript, Delphi, Visual Basic, Perl,Java
=DeaD= писал(а):
Надо не через резистор подавать, а через резисторный делитель напряжения, если хотите измерять напряжение выше уровня питания контроллера.

предположим я не хочу выше уровня питания мк, просто замерить какое напряжение от источника, скажем на регулируемом источнике питания я выставлю 2.5 в (замерив мультиметром), тогда так подключить к мк ? ведь на прямую без резистора при 1.6 в мк вешается

Добавлено спустя 1 минуту 35 секунд:
Michael_K писал(а):
млин, откуда вы такие беретесь?
- каждому светодиоду поставить последовательно резистор в один килоом.
- резисторный делитель на ногу pa0, так чтобы напряжение на АЦП никогда не превышало AREF.
Ну и конденсаторы бы что ли на питание хотя бы повесили... для красоты.

Вы наугад что ли схемы собираете...

резисторы на светодиодах навешаны, просто лень было в программе их ставить.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Atmega16a и АЦП
СообщениеДобавлено: 07 мар 2011, 17:10 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
если не превышаете, то можно подавать без резистора.
а вот светодиоды без резистора низзя.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Atmega16a и АЦП
СообщениеДобавлено: 07 мар 2011, 17:43 
Не в сети

Зарегистрирован: 16 фев 2011, 00:52
Сообщения: 142
прог. языки: PHP, ActionScript, Delphi, Visual Basic, Perl,Java
Michael_K писал(а):
если не превышаете, то можно подавать без резистора.
а вот светодиоды без резистора низзя.

так без резистора мк виснет :(


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Atmega16a и АЦП
СообщениеДобавлено: 07 мар 2011, 17:53 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
NEOSoftWare писал(а):
просто замерить какое напряжение от источника
АЦП AVR www.proavr.narod.ru/z11.htm и www.proavr.narod.ru/z09b.htm
Даташит AVR на русском языке - www.proavr.narod.ru/02.htm

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Atmega16a и АЦП
СообщениеДобавлено: 07 мар 2011, 22:11 
Не в сети

Зарегистрирован: 16 фев 2011, 00:52
Сообщения: 142
прог. языки: PHP, ActionScript, Delphi, Visual Basic, Perl,Java
спасибо, почитал, все заработало, но возникла такая проблема мк запитываю через стабилизатор напряжения 78L05 к которому подвожу 12 вольт. так вот, если подать напряжение 1.6V на порт PA0, то все показывается как надо на порту PORTC, только стабилизатор напряжения очень сильно перегревается. с чем это связано? и ка этого избежать? (нагревается так что рукой не коснуться)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Atmega16a и АЦП
СообщениеДобавлено: 07 мар 2011, 22:24 
Не в сети
Аватара пользователя

Зарегистрирован: 12 окт 2008, 12:40
Сообщения: 369
Откуда: Красногорск, Подмосковье
Вы подаете на стабилизатор 12в, а снимаете с него 5в. К примеру, 5 горящих светодиодов дают общий ток 100ма.
Тогда на стабилизаторе выделяется мощность (12-5)*0.1=0.7 Вт, что довольно немало.
Вывод - ставить на стабилизатор большой радиатор, понижать напряжение питания, или использовать dc-dc преобразователь, как тут
http://radio-hobby.org/news/article.php?storyid=445

_________________
OpenSimpleLidar - проект простого самодельного лидара.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Atmega16a и АЦП
СообщениеДобавлено: 07 мар 2011, 22:50 
Не в сети

Зарегистрирован: 16 фев 2011, 00:52
Сообщения: 142
прог. языки: PHP, ActionScript, Delphi, Visual Basic, Perl,Java
citizen писал(а):
Вы подаете на стабилизатор 12в, а снимаете с него 5в. К примеру, 5 горящих светодиодов дают общий ток 100ма.
Тогда на стабилизаторе выделяется мощность (12-5)*0.1=0.7 Вт, что довольно немало.
Вывод - ставить на стабилизатор большой радиатор, понижать напряжение питания, или использовать dc-dc преобразователь, как тут
http://radio-hobby.org/news/article.php?storyid=445

так стабилизатор нагревается только тогда когда к ацп подвожу напряжение, даже если снять все диоды с мк, подключить только 1 вход ацп, то все ровно стабилизатор напряжения перегревается.

по поводу радиатора. стабилизатор не имеет площадки для отвода тепла, как его тогда прикрепить? обмазать весь стабилизатор термопастой и поджать как нибудь к радиатору?
Вложение:
78L05.jpg
78L05.jpg [ 2.51 КиБ | Просмотров: 1992 ]


а если подать на вход мк напряжение от блока питания компа 5 В, то при подключении напряжения (опять повторюсь 1.6В) к ножке PA0, то греться начинает сама МК, что по моему еще хуже.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Atmega16a и АЦП
СообщениеДобавлено: 07 мар 2011, 23:02 
Не в сети

Зарегистрирован: 01 июл 2010, 20:58
Сообщения: 76
Откуда: Санкт-Петербург
прог. языки: Си
ФИО: Дмитрий
Ну да, плоской стороной. И прижать пластинкой на винтах.
Но както это ... не технологично :) Нельзя использовать другой преобразователь?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Atmega16a и АЦП
СообщениеДобавлено: 07 мар 2011, 23:18 
Не в сети

Зарегистрирован: 16 фев 2011, 00:52
Сообщения: 142
прог. языки: PHP, ActionScript, Delphi, Visual Basic, Perl,Java
Дмитрий К. писал(а):
Ну да, плоской стороной. И прижать пластинкой на винтах.
Но както это ... не технологично :) Нельзя использовать другой преобразователь?

ну в преобразователе дело не стоит, можно использовать и с тепло отводящей пластиной. я к тому что это нормально что идет такое потребление тока? ведь если использовать простые выводы (скажем для мигания светодиодов) и шим, то такой нагрузки ведь нету.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.

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


Кто сейчас на конференции

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


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

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO