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

 
 
> Tiny 2313, АЦП
Menen
сообщение Apr 17 2007, 16:01
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 21
Регистрация: 4-02-07
Пользователь №: 25 043



Только взялся за BASCOM-AVR. Подскажите как организовать измерение напряжения на встроенном АЦП? Заранее благодарен.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
sadat
сообщение Apr 17 2007, 23:01
Сообщение #2


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

Группа: Свой
Сообщений: 117
Регистрация: 6-07-05
Из: Белгород
Пользователь №: 6 575



Человек хочет AVR освоить, а вы ему вернуться на аналоговую базу....
Вот код инициализации АЦП для Tiny13:
Измеряемое напряжение на вход PB2 (DDR=0)
;блок включения АЦП
ldi R16, 0b00000100; выключили цифровой вход PB2 (ADC1)
out DIDR0,R16;

ldi R16,0b00100001 ; привязка к 5 в питания, выравнивание "меньше", MUX = 01 - PB2 ввод
; ADLAR=1 - т.е. выравнивание "влево" по ADCH-ADCL (ADCH - 0-255).
out ADMUX,R16;
ldi R16, 0b11001110; разрешили прерывание, режим одиночного с делением тактовой на 64
out ADCSRA, R16;

И по выполнению преобразования выполнится прерывание от АЦП (внимательно читать даташит - т.е. RTFM).

В обработчике прерывания считываешь ADCH - 0-0вольт, 255 - Vdd на входе.
in R16, ADCL;
nop
nop
in R16, ADCH;
Обязательно при считывании сначала младший (он нам не нужен), затем - старший....
Считывать данные можно и по флагу окончания преобразования,ИМХО, ждать как-то нехорошо простаивать ресурсы...
Go to the top of the page
 
+Quote Post
singlskv
сообщение Apr 17 2007, 23:40
Сообщение #3


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(sadat @ Apr 18 2007, 00:01) *
ldi R16,0b00100001 ; привязка к 5 в питания, выравнивание "меньше", MUX = 01 - PB2 ввод
; ADLAR=1 - т.е. выравнивание "влево" по ADCH-ADCL (ADCH - 0-255).
..........................................
В обработчике прерывания считываешь ADCH - 0-0вольт, 255 - Vdd на входе.
in R16, ADCL;
nop
nop
in R16, ADCH;
Обязательно при считывании сначала младший (он нам не нужен), затем - старший....
Считывать данные можно и по флагу окончания преобразования,ИМХО, ждать как-то нехорошо простаивать ресурсы...

Раскажите пожалуйста откуда Вы взяли это "Обязательно при считывании сначала младший"

В моем даташите написано вот так smile.gif

If the result is left adjusted and no more than 8-bit precision is required, it is sufficient to
read ADCH. Otherwise, ADCL must be read first, then ADCH, to ensure that the content
of the Data Registers belongs to the same conversion. Once ADCL is read, ADC access
to Data Registers is blocked. This means that if ADCL has been read, and a conversion
completes before ADCH is read, neither register is updated and the result from the conversion
is lost. When ADCH is read, ADC access to the ADCH and ADCL Registers is
re-enabled.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Menen   Tiny 2313   Apr 17 2007, 16:01
- - aai_m   В ATiny2313 встроенного ADC отродясь не водилось.   Apr 17 2007, 16:11
- - AVR   Цитата(Menen @ Apr 17 2007, 17:01) Только...   Apr 17 2007, 16:13
- - Menen   Понял. Спасибо. А какой МК пойдет? С наименьшей це...   Apr 17 2007, 16:22
|- - PraNkiSh   Цитата(Menen @ Apr 17 2007, 17:22) Понял....   Apr 28 2007, 12:38
- - aai_m   Цитата(Menen @ Apr 17 2007, 16:22) Понял....   Apr 17 2007, 16:51
- - Menen   Необходимо мерять напряжение на аккумуляторе, и в ...   Apr 17 2007, 17:13
|- - rumit2000   Цитата(Menen @ Apr 17 2007, 18:13) Необхо...   Apr 17 2007, 19:08
- - aai_m   Цитата(Menen @ Apr 17 2007, 17:13) Необхо...   Apr 17 2007, 17:25
- - Menen   А как включить АЦП, и получать данные о напряжении...   Apr 17 2007, 17:29
- - Menen   Цитата(sadat @ Apr 18 2007, 00:01) Челове...   Apr 18 2007, 09:35
- - sadat   MENEN-у - чистый асм - это основа, без которой бол...   Apr 18 2007, 10:39
- - Menen   Огромное спасибо буду разбираться!!! ...   Apr 18 2007, 11:02
- - Menen   Еще раз спасибо. Разбираюсь... Чет немогу отредакт...   Apr 18 2007, 14:25
- - sadat   Да, есть еще и русский форум по BASCOM-у: http://b...   Apr 18 2007, 21:12
- - Menen   Цитата(sadat @ Apr 18 2007, 11:39) MENEN-...   Apr 28 2007, 10:25
- - Menen   Цитата(PraNkiSh @ Apr 28 2007, 13:38) тин...   Apr 28 2007, 13:38
- - Duhas   как вариант косяки в цепи питания\земли, такт...   Apr 28 2007, 14:40
- - Menen   Генератор внутренний 1мгц. Вход АЦП не связвн с пр...   Apr 28 2007, 15:42
- - Amper25   Посмотри что у тебя на выводе RESET. Для работы MC...   Apr 28 2007, 15:48
- - Menen   стоит резистор 3.3 Ком. Много ? Поставить 1 Ком?   Apr 28 2007, 15:55
- - Amper25   Нормально 1 - 10К, подтянутый к +питания. Должен с...   Apr 28 2007, 17:18
- - sadat   Без хотя бы словестного описания схемы помощь похо...   Apr 29 2007, 15:13


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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 02:23
Рейтинг@Mail.ru


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