
LCD 3310, Atmega 8 Вольтметр и ds18b20
LCD 3310, Atmega 8 Вольтметр и ds18b20
Всем привет! Собственно нашел схемку в инете вольтметра на Меги8 с дисплеем от нокиа 3310. Давно было желание желание сделать в машину чего не лостовало очень, как раз вольтметра и температуры за бортом. Вообщем с горем пополам скрестил два кода, вольтметр пашет, а вот с температурой кракозябры на дисплее. Помогите разобраться, в коде если цикле убираю #asm("sei"), то начинает пахать термометр, но вольтметр по нулям, если поставить обратно наоборот получается.


- Вложения
-
- 02_3310bold.rar
- (173.02 КБ) 1617 скачиваний
- Реклама
- adrenocrome
- Потрогал лапой паяльник
- Сообщения: 365
- Зарегистрирован: Вт окт 21, 2008 15:03:06
- Откуда: moscow
- Контактная информация:
Re: LCD 3310, Atmega 8 Вольтметр и ds18b20
Перед вызовом функции temperature() запрети прерывания. #asm("cli")
Похоже, что во время запроса температуры у тебя прерывание происходит.
Похоже, что во время запроса температуры у тебя прерывание происходит.
День прошёл, а ты всё жив
- ChipKiller
- Сверлит текстолит когтями
- Сообщения: 1163
- Зарегистрирован: Ср янв 05, 2011 16:25:15
Re: LCD 3310, Atmega 8 Вольтметр и ds18b20
neid проблемы и возникают из-за #asm("sei"). Делайте измерение температуры при выключенных прерываниях и все будет ок. (.. пользуетесь стандартной библиотекой CV AVR, а она при измерении температуры с "sei" не работает )
Re: LCD 3310, Atmega 8 Вольтметр и ds18b20
народ!!!!!!!!!!!!!! подскажите в чем проблема может быть??? подключаю дисплей от нокии3310,заливаю тестовый скеч,ВКЛ!!!! буквально пол секунды горит тестовая картинка и гаснет
,я первый раз думал сдох он,а нет живой. после длительного получасового перекура я его опять включаю,и он мне устраивает опять же 0,5секундный киносеанс 
Re: LCD 3310, Atmega 8 Вольтметр и ds18b20
void main(void)
{
// Determine the number of DS1820 devices
// connected to the 1 Wire bus
ds18b20_devices=w1_search(0xf0,ds18b20_rom_codes);
ds18b20_init(0,-35,35,DS18B20_12BIT_RES); // переключения термометра в 12 битный режим
LcdInit();
LcdMode(2);
while (1 )
{
// Place your code here
delay_ms(500);
temperature(); // вызываем функцию температуры
LcdClear(); // очищаем LCD
if(min==1) // если минус
{
sprintf(lcd_buf,"-%u.%u\x80C",temper_int,temper_int%10); //вывод отрицательной температуры
}else
{
sprintf(lcd_buf,"+%u.%u\x80C",temper_int,temper_int%10); // вывод положительной
}
LcdStringBold(1,2);
LcdUpdate();
};
}
в своё время делал так и всё пучком)
{
// Determine the number of DS1820 devices
// connected to the 1 Wire bus
ds18b20_devices=w1_search(0xf0,ds18b20_rom_codes);
ds18b20_init(0,-35,35,DS18B20_12BIT_RES); // переключения термометра в 12 битный режим
LcdInit();
LcdMode(2);
while (1 )
{
// Place your code here
delay_ms(500);
temperature(); // вызываем функцию температуры
LcdClear(); // очищаем LCD
if(min==1) // если минус
{
sprintf(lcd_buf,"-%u.%u\x80C",temper_int,temper_int%10); //вывод отрицательной температуры
}else
{
sprintf(lcd_buf,"+%u.%u\x80C",temper_int,temper_int%10); // вывод положительной
}
LcdStringBold(1,2);
LcdUpdate();
};
}
в своё время делал так и всё пучком)
- Реклама
Re: LCD 3310, Atmega 8 Вольтметр и ds18b20
собрал данный вольтметр. очень неправильно показывает напряжение. и у него ограничение 4,5 вольт? можно поднять вольт до 20? и очень медленно обновляются показания. помогите до ума довести
-
alex1991
- Открыл глаза
- Сообщения: 40
- Зарегистрирован: Ср апр 14, 2010 20:42:24
- Откуда: Молдова г,Кишинев
Re: LCD 3310, Atmega 8 Вольтметр и ds18b20
witia03 у меня есть другой проект на кодевижн показывает точно
если надо могу выложить
если надо могу выложить
Re: LCD 3310, Atmega 8 Вольтметр и ds18b20
выложите конечно. а показания сразу обновляются?alex1991 писал(а):witia03 у меня есть другой проект на кодевижн показывает точно
если надо могу выложить
-
alex1991
- Открыл глаза
- Сообщения: 40
- Зарегистрирован: Ср апр 14, 2010 20:42:24
- Откуда: Молдова г,Кишинев
Re: LCD 3310, Atmega 8 Вольтметр и ds18b20
witia03 показания сразу обновляет и если я не ошибаюсь он снимает показания с обеих АЦП и выводит показания одного показание другого
Код не мой нашел в сети
Код не мой нашел в сети
- Вложения
-
- my_exp3310 (1).rar
- (150.52 КБ) 1035 скачиваний
Re: LCD 3310, Atmega 8 Вольтметр и ds18b20
совсем забыл добавить- в протеусе у меня тоже все работает достаточно точно и обновляется моментально а на деле все гораздо хужеalex1991 писал(а):witia03 показания сразу обновляет и если я не ошибаюсь он снимает показания с обеих АЦП и выводит показания одного показание другого
Код не мой нашел в сети
-
alex1991
- Открыл глаза
- Сообщения: 40
- Зарегистрирован: Ср апр 14, 2010 20:42:24
- Откуда: Молдова г,Кишинев
Re: LCD 3310, Atmega 8 Вольтметр и ds18b20
witia03 я протеусу не доверяю все отлаживаю в железе и у
обновляет показания моментально при чистоте атмеги 16мгц
обновляет показания моментально при чистоте атмеги 16мгц
Re: LCD 3310, Atmega 8 Вольтметр и ds18b20
я уже забросил этот дисплей и перешел на сименсовский. собрал эту схему http://radiokot.ru/forum/viewtopic.php? ... a8#p501326alex1991 писал(а):witia03 я протеусу не доверяю все отлаживаю в железе и у
обновляет показания моментально при чистоте атмеги 16мгц
но никак не могу скомпилировать код. не поможете?
Re: LCD 3310, Atmega 8 Вольтметр и ds18b20
разобрался. вот что получилосьwitia03 писал(а):я уже забросил этот дисплей и перешел на сименсовский. собрал эту схему http://radiokot.ru/forum/viewtopic.php? ... a8#p501326alex1991 писал(а):witia03 я протеусу не доверяю все отлаживаю в железе и у
обновляет показания моментально при чистоте атмеги 16мгц
но никак не могу скомпилировать код. не поможете?



