Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR...

 
Опции темы
Непрочитано 04.02.2015, 14:29  
PIRAT7777
Временная регистрация
 
Аватар для PIRAT7777
 
Регистрация: 12.04.2008
Сообщений: 91
Сказал спасибо: 11
Сказали Спасибо 23 раз(а) в 23 сообщении(ях)
PIRAT7777 на пути к лучшему
По умолчанию Не слушается АЦП

Недавно начал изучать CV AVR. Написал програмку для простенького зарядника литиевых акумов. Запустил в протеусе... не работает.
Причина АЦП. По какой-то непонятной причине из регистров ADCH и ADCL данные никак не хотят переписываться в другие переменные.
Уж как ни извращался, но понял, что моих знаний очень мало. Потому и прошу помощи. Проблемные места выделил красным. Почему не происходит копирование, хотя протеус показывает, что в ADCL число. К примеру изначально выходит 0хс8.
Код:
#define ADC_VREF_TYPE ((1‹‹REFS1) | (1‹‹REFS0) | (0‹‹ADLAR) | (0‹‹MUX3) | (1‹‹MUX2) | (0‹‹MUX1) | (1‹‹MUX0))

// ADC interrupt service routine
interrupt [ADC_INT] void adc_isr(void)
{
// Place your code here
rb=ADMUX;
rb&=0x0f;
switch (rb) {
     case 0x07: 
     {mot=ADCW;
    ADMUX=0xc5;
    goto M1;}
     case 0x04: 
     {res=ADCW-bat;
    ADMUX=0xc7;
    goto M1;}
     case 0x05: 
     {bat=ADCW;
    ADMUX=0xc4;} //Start ADC 
M1:    };
Реклама:
__________________
PIRAT7777 вне форума  
Сказали "Спасибо" PIRAT7777
warel (29.06.2019)
Непрочитано 04.02.2015, 14:52  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,924
Сказал спасибо: 2,543
Сказали Спасибо 11,821 раз(а) в 5,927 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Не слушается АЦП

Сообщение от PIRAT7777 Посмотреть сообщение
Недавно начал изучать CV AVR.
...
Раз так, то Визард генерит функцию int read_adc(num_ch).
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Эти 2 пользователя(ей) сказали Спасибо akegor за это сообщение:
PIRAT7777 (04.02.2015), warel (29.06.2019)
Непрочитано 04.02.2015, 15:20  
PIRAT7777
Временная регистрация
 
Аватар для PIRAT7777
 
Регистрация: 12.04.2008
Сообщений: 91
Сказал спасибо: 11
Сказали Спасибо 23 раз(а) в 23 сообщении(ях)
PIRAT7777 на пути к лучшему
По умолчанию Re: Не слушается АЦП

хм... интересно. не знал.
Покапавшись попробовал её применить.
Ну например:
Код:
bat=read_adc(5);
Дык он пишет: undefined symbol 'read_adc'
посмотрел примеры в инете, у людей все так... В чем загвоздка?
__________________
PIRAT7777 вне форума  
Сказали "Спасибо" PIRAT7777
warel (29.06.2019)
Непрочитано 04.02.2015, 15:48  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,924
Сказал спасибо: 2,543
Сказали Спасибо 11,821 раз(а) в 5,927 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Не слушается АЦП

Визард используете для генерации "рыбы"?
Пример выкладывал ВиндоЗавру. В Визарде нужно "включить" АЦП. Появится эта функция.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Сказали "Спасибо" akegor
warel (29.06.2019)
Непрочитано 04.02.2015, 16:49  
PIRAT7777
Временная регистрация
 
Аватар для PIRAT7777
 
Регистрация: 12.04.2008
Сообщений: 91
Сказал спасибо: 11
Сказали Спасибо 23 раз(а) в 23 сообщении(ях)
PIRAT7777 на пути к лучшему
По умолчанию Re: Не слушается АЦП

Решил уже показать Вам скрины, ибо и по-вашему не работает(((


на первом скрине закончило работать АЦП, ну вы сами знаете. На втором результат 0. Почему так...
фак май брэйн, неужели руки из того самого, или моск не тот?
__________________

Последний раз редактировалось PIRAT7777; 04.02.2015 в 16:51.
PIRAT7777 вне форума  
Сказали "Спасибо" PIRAT7777
warel (29.06.2019)
Непрочитано 04.02.2015, 20:37  
sergx1300
Прописка
 
Аватар для sergx1300
 
Регистрация: 18.03.2010
Адрес: Украина, Тернополь
Сообщений: 225
Сказал спасибо: 14
Сказали Спасибо 44 раз(а) в 34 сообщении(ях)
sergx1300 на пути к лучшему
По умолчанию Re: Не слушается АЦП

Выложи весь проект архивом
sergx1300 вне форума  
Сказали "Спасибо" sergx1300
warel (29.06.2019)
Непрочитано 04.02.2015, 22:02  
PIRAT7777
Временная регистрация
 
Аватар для PIRAT7777
 
Регистрация: 12.04.2008
Сообщений: 91
Сказал спасибо: 11
Сказали Спасибо 23 раз(а) в 23 сообщении(ях)
PIRAT7777 на пути к лучшему
По умолчанию Re: Не слушается АЦП

Новая папка.rar
Воть. начинаю думать что протеус глючит, ибо какие то рандомные скачки в программе.
__________________
PIRAT7777 вне форума  
Сказали "Спасибо" PIRAT7777
warel (29.06.2019)
Непрочитано 04.02.2015, 22:16  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,924
Сказал спасибо: 2,543
Сказали Спасибо 11,821 раз(а) в 5,927 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Не слушается АЦП

Сообщение от PIRAT7777 Посмотреть сообщение
начинаю думать что протеус глючит
Нет. Что и как делает этот кусочек?
PHP код:
 bat=read_adc(5);
  
if (
pw0x44)
switch (
bat) {
    case 
0x0320//батарея 100%
        
PORTD|=0x41;
        
PORTB|=0xe0
    case 
0x02f8:  //батарея 80%
        
PORTD|=0x41;
        
PORTB|=0xc0;    
    case 
0x02bc:  //батарея 60% 
        
PORTD|=0x41;                                          
        
PORTB|=0x40;
    case 
0x0280:  //батарея 40% 
        
PORTD|=0x41;
    case 
0x0230:  //батарея 20% 
        
PORTD|=0x10;
    break;
    }; 
Если прочитанное значение из АЦП не соответствует проверяемым значениям и не ничего не предлагается по дефолту - ничего и не должно делаться.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Сказали "Спасибо" akegor
warel (29.06.2019)
Непрочитано 04.02.2015, 22:22  
PIRAT7777
Временная регистрация
 
Аватар для PIRAT7777
 
Регистрация: 12.04.2008
Сообщений: 91
Сказал спасибо: 11
Сказали Спасибо 23 раз(а) в 23 сообщении(ях)
PIRAT7777 на пути к лучшему
По умолчанию Re: Не слушается АЦП

Этот кусочек просто выводит на светодиоды уровень заряда акума.
проблема в том, что в bat значение не возвращается вообще!
Никакое. Как-будто и нет этой переменной. Вся загвоздка в этом.

Тьфу, да нифига он выводить не будет. Переделаю. Не суть.
В bat ничего не попадает.
__________________
PIRAT7777 вне форума  
Сказали "Спасибо" PIRAT7777
warel (29.06.2019)
Непрочитано 04.02.2015, 22:31  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,924
Сказал спасибо: 2,543
Сказали Спасибо 11,821 раз(а) в 5,927 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Не слушается АЦП

Сообщение от PIRAT7777 Посмотреть сообщение
В bat ничего не попадает.
Откуда это известно?
Да, по Протезу ничего не подскажу - не пользуюсь. Виртуальности предпочитаю реальность.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Сказали "Спасибо" akegor
warel (29.06.2019)
 

Закладки
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
FAQ (ЧаВО) по PROTEUS для начинающих и не только dosikus Proteus 221 07.03.2024 22:45
Помогите настроить АЦП в ATMEGA16 Vladimir Semenov AVR 13 11.12.2012 16:17
Некорректно работает АЦП Atmega 8 putmannn Микроконтроллеры, АЦП, память и т.д 15 13.09.2011 06:03
АЦП AT91sam7s256 Uragan90 Микроконтроллеры, АЦП, память и т.д 10 25.04.2011 13:30
Помогите с ЦАП AD7708/AD7718 или их аналогами ST_Senya Микроконтроллеры, АЦП, память и т.д 9 30.11.2009 19:03


Часовой пояс GMT +4, время: 17:35.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot