реклама на сайте
подробности

 
 
> Проблема с АЦП у Atmega48(V)
exert
сообщение May 1 2008, 11:16
Сообщение #1





Группа: Новичок
Сообщений: 12
Регистрация: 19-04-07
Пользователь №: 27 175



Кто-нибудь сталкивался с некорректной работой АЦП. Подаю разное напряжение на вход АЦП в том числе и стандартное 1,1V никакого результата. Подавали даже напрямую напряжение батарейки на разные входы - результат одинаковый - в регистрах ADCL,ADCH - нули или около того порядка 5-10 (dec) (скорее всего шумы). Тактовая частота 8 МГц. предделитель АЦП 1/32. Возможно программная ошибка? или всё таки аппаратная ошибка?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
tazik
сообщение May 1 2008, 13:39
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 195
Регистрация: 13-05-07
Из: Норильск
Пользователь №: 27 691



Конструкцию вида:
ldi r16,0xAA
sts ADCSRA,r16
применять нельзя

вместо sts нужна команда out

sts адресует всю SRAM, включая 32 регистра r0-r31, out - только I/O область SRAM. Адреса регистров, перечисленные в файле ...def.inc рассчитаны на применение команд in/out, а не sts/lds

если все-таки хочется использовать команду sts, то к адресу регистра необходимо прибавлять смещение 0x20h (адреса регистров r0-r31)

Сообщение отредактировал tazik - May 1 2008, 13:52
Go to the top of the page
 
+Quote Post
exert
сообщение May 1 2008, 14:21
Сообщение #3





Группа: Новичок
Сообщений: 12
Регистрация: 19-04-07
Пользователь №: 27 175



Цитата(tazik @ May 1 2008, 17:39) *
Конструкцию вида:
ldi r16,0xAA
sts ADCSRA,r16
применять нельзя

вместо sts нужна команда out

sts адресует всю SRAM, включая 32 регистра r0-r31, out - только I/O область SRAM. Адреса регистров, перечисленные в файле ...def.inc рассчитаны на применение команд in/out, а не sts/lds

если все-таки хочется использовать команду sts, то к адресу регистра необходимо прибавлять смещение 0x20h (адреса регистров r0-r31)


регистр ADCSRA и ADMUX не относятся к I/O области. Так что sts тут к месту. Хотя я на всякий случай попробовал с out. С ним вообще программа не компилируется. AVR Studio пишет M:\2008.04\....\Proga.asm(109): error: Operand 1 out of range: 0x7c
Так что проблема не в sts. Но всё равно спасибо.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 25th June 2025 - 08:25
Рейтинг@Mail.ru


Страница сгенерированна за 0.01351 секунд с 7
ELECTRONIX ©2004-2016