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

 
 
> Проблемы с DS18B20
Letis
сообщение Oct 6 2010, 14:53
Сообщение #1


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

Группа: Участник
Сообщений: 124
Регистрация: 10-07-07
Пользователь №: 29 027



Разработал устройство на меге8 с датчиком DS18B20. До этого все работало отлично, даже в промышленных условиях. Но возникла проблема, когда возле устройства установить и запустить частотник (для регулировки оборотов двигателя) то температура на устройстве показывает -1. В чем может быть проблема. Я уже использовал для связи с датчиком экранированную витую пару, но это не помогло. Подскажите.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Letis
сообщение Oct 6 2010, 18:02
Сообщение #2


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

Группа: Участник
Сообщений: 124
Регистрация: 10-07-07
Пользователь №: 29 027



СRC я считую, вот внизу, или чтото не так :

interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
if(ds==0) if(w1_init()==0) {ds=45; Tp=-9999;} ;
if(ds==1) w1_write(0xCC);
if(ds==2) w1_write(0xBE);
if(ds==3) if(w1_init()==0) {ds=45; Tp=-9999;} ;
if(ds==4) w1_write(0xCC);
if(ds==5) w1_write(0x44); //ïåðåòâîðåííÿ
if(ds==30) if(w1_init()==0) {ds=45; Tp=-9999;} ;
if(ds==31) w1_write(0xCC);
if(ds==32) { w1_write(0xBE); p=(char *) &__ds18b20_scratch_pad;}
if(ds==33) *(p++)=w1_read();
if(ds==34) *(p++)=w1_read();
if(ds==35) *(p++)=w1_read();
if(ds==36) *(p++)=w1_read();
if(ds==37) *(p++)=w1_read();
if(ds==38) *(p++)=w1_read();
if(ds==39) *(p++)=w1_read();
if(ds==40) *(p++)=w1_read();
if(ds==41){*(p++)=w1_read(); !w1_dow_crc8(&__ds18b20_scratch_pad,9); }
if(ds==42) if(w1_init()==0) {ds=45; Tp=-9999;} ;
if(ds==43) Tp = (*((int *) &__ds18b20_scratch_pad.temp_lsb) & 0xFFF8)*0.0625;
if(Tp>1000) Tp=Tp-4096;
ds++; if(ds>50) ds=0;
}
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Letis   Проблемы с DS18B20   Oct 6 2010, 14:53
- - Dx!   Помеха. Смотреть осциллоскопом. CRC8 не считаем ра...   Oct 6 2010, 17:57
- - Dx!   -1 приходит без ошибок в CRC ? Видимо помеха не в ...   Oct 6 2010, 18:03
- - Letis   А вот так будет правильно ? struct __ds18b20_scr...   Oct 6 2010, 18:25
- - WHALE   ужос... Куда у вас р смотрит?И вы про свитч знаете...   Oct 6 2010, 20:06
- - Letis   Да работает оно все. Я использую библиотеку, и все...   Oct 6 2010, 20:20
|- - kolobok0   Цитата(Letis @ Oct 7 2010, 00:20) ...испо...   Oct 6 2010, 20:49
- - Letis   Цитатагасящие элементы ставят. Какие гасящие элем...   Oct 6 2010, 21:29
- - Kovrov   Феррит кольцо... в помощь.. или в макс близости от...   Oct 7 2010, 06:09
- - alexeyv   Были похожие проблемы. Длина линии с датчиком 30м...   Oct 7 2010, 08:12
- - Letis   ЦитатаФеррит кольцо... в помощь.. Где оно должно б...   Oct 7 2010, 08:45
|- - kolobok0   Цитата(Letis @ Oct 7 2010, 12:45) Где оно...   Oct 7 2010, 20:52
- - Kovrov   кольцо берете с мин проницаемостью: лучше 400нн бе...   Oct 7 2010, 13:26
- - Letis   Здесь понятно. А как устранить со стороны питания ...   Oct 7 2010, 13:44
|- - xemul   Цитата(Letis @ Oct 7 2010, 17:44) Дело в ...   Oct 7 2010, 20:41
- - Letis   ЦитатаКакая длина шнурка к датчику? около 30м. Цит...   Oct 7 2010, 23:51
|- - xemul   Цитата(Letis @ Oct 8 2010, 03:51) ЦитатаУ...   Oct 8 2010, 07:32
|- - Dx!   Цитата(Letis @ Oct 8 2010, 03:51) Я поним...   Oct 8 2010, 14:18
- - Kovrov   Цитата(Letis @ Oct 7 2010, 17:44) Здесь п...   Oct 8 2010, 06:38


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

 


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


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