| Автор |
Съобщение |
|
palavrov
Ранг: Форумен бог
Регистриран на: Вто Окт 11, 2011 11:53 pm Мнения: 4582 Местоположение: Brussels / Пловдив
|
 Re: ds18b20
Ако се четат само 0 най вероятно има някакъв проблем със свързването на сензора. По принцип onewire линията за данни трябва винаги да е в 1 и когато някое устройство иска да прати 0 само тогава да я вързва към маса. Направи един цикъл в началото на програмата който чете директно пина който ползваш за данни и докато той е в 0 да ти вади някакво съобщение на LCD - ако всичко е наред линията трябва да е в 1 и не трябва да го видиш това съобщение. Ако го видиш - проверявай си схемата.
_________________ Мразя да мразя ...
|
| Пон Яну 28, 2013 1:54 pm |
|
 |
|
Boris666
Ранг: Минаващ
Регистриран на: Чет Яну 03, 2013 11:53 am Мнения: 17
|
 Re: ds18b20
Мисля, че не е от схемата защото съм сложил пул-ъп резистор 4,6к на шината за данни. Като измеря с мултицета ми показва че имам някъде около 4,8V на пина.
|
| Пон Яну 28, 2013 3:55 pm |
|
 |
|
jig.tak
Ранг: Почетен член
Регистриран на: Чет Яну 20, 2005 1:44 am Мнения: 616 Местоположение: Варна
|
 Re: ds18b20
осцилоскопа и CRC-то какво показват
|
| Пон Яну 28, 2013 4:19 pm |
|
 |
|
Boris666
Ранг: Минаващ
Регистриран на: Чет Яну 03, 2013 11:53 am Мнения: 17
|
 Re: ds18b20
За жалост няма как да го пусна през осцилосокоп.
|
| Пон Яну 28, 2013 4:22 pm |
|
 |
|
palavrov
Ранг: Форумен бог
Регистриран на: Вто Окт 11, 2011 11:53 pm Мнения: 4582 Местоположение: Brussels / Пловдив
|
 Re: ds18b20
Пробва ли с този цикъл процесора дали чете 0? Ако чете, премери го точно в този момент когато всичко работи какво има на шината. Ако е 1 - търси проблема някъде в настройките на пиновете, ако е 0 откачай елементите един по един докато хванеш кой държи към маса ... кофти, че нямаш под ръка логически анализатор или скоп - само с мултицет ще се поизмъчиш ...
_________________ Мразя да мразя ...
|
| Пон Яну 28, 2013 5:40 pm |
|
 |
|
Boris666
Ранг: Минаващ
Регистриран на: Чет Яну 03, 2013 11:53 am Мнения: 17
|
 Re: ds18b20
На дисплея се получава 0, няма и елемент който да държи към 0, освен пиновете, които са за маса така че остава самата комуникация.
|
| Пон Яну 28, 2013 8:34 pm |
|
 |
|
palavrov
Ранг: Форумен бог
Регистриран на: Вто Окт 11, 2011 11:53 pm Мнения: 4582 Местоположение: Brussels / Пловдив
|
 Re: ds18b20
Прочети още веднъж за TRIS и LAT регистрите, след като ти се изясни концепцията направи един експеримент - конфигурирай някой пин като изход с пулуп, вдигни го от процесора да е 1, прочети го да си сигурен, че е в 1, след това отвън го дай към маса, процесора трябва да я види тази 0 на крачето въпреки, че все още е конфигуриран като 1. Ако не успееш да направиш това, няма да можеш да подкараш one wire. След това си провери в програмата как управляваш шината за данни, предполагам, че няма да ти хареса 
_________________ Мразя да мразя ...
|
| Вто Яну 29, 2013 1:12 am |
|
 |
|
Boris666
Ранг: Минаващ
Регистриран на: Чет Яну 03, 2013 11:53 am Мнения: 17
|
 Re: ds18b20
Не ми хареса в интерес на истината, ще започвам отначало с комуникацията, за жалост имам няколко дни докато предам проекта.
|
| Вто Яну 29, 2013 1:45 am |
|
 |
|
palavrov
Ранг: Форумен бог
Регистриран на: Вто Окт 11, 2011 11:53 pm Мнения: 4582 Местоположение: Brussels / Пловдив
|
 Re: ds18b20
Не се шашкай толкова - проблема който имаш се решава за час или два ... ще се справиш. Сядай си на задника и действай.
_________________ Мразя да мразя ...
|
| Вто Яну 29, 2013 1:07 pm |
|
 |
|
Boris666
Ранг: Минаващ
Регистриран на: Чет Яну 03, 2013 11:53 am Мнения: 17
|
 Re: ds18b20
Capture mode ли трябва да ползвам за данните?
|
| Вто Яну 29, 2013 2:58 pm |
|
 |
|
palavrov
Ранг: Форумен бог
Регистриран на: Вто Окт 11, 2011 11:53 pm Мнения: 4582 Местоположение: Brussels / Пловдив
|
 Re: ds18b20
Тц. Трябва да конфигурираш шината за данни като изход в TRIS регистъра и не го пипаш повече. Когато искаш да има единица на изхода на крачето - записваш 1 в LAT регистъра. Когато искаш да има нула - записваш 0 в LAT регистъра. Когато искаш да прочетеш какво има на крачето - записваш 1 в LAT регистъра и четеш от PORT регистъра какво има на крачето - 0 или 1. Погледни си програмата - в момента LAT не го пипаш никога. Има и друг вариант - като не можеш сам, плати си на някой колега да ти го направи, или още по добре не се занимавай с неща които не са ти интересни - зарежи ученето и иди на медитация в Индия, току виж след половин година си намерил себе си, какво обичаш да правиш, и си се преродил в един нов Стив Джобс ... или Рон Джереми ...  Ако не искаш да ставаш милионер и да променяш света - сядай и го разчекни тоя проект ...
_________________ Мразя да мразя ...
|
| Вто Яну 29, 2013 6:33 pm |
|
 |
|
Stoimen
Ранг: Популярен
Регистриран на: Пет Юни 25, 2010 3:18 pm Мнения: 363 Местоположение: Varna
|
 Re: ds18b20
Мисля, че pic16f913 няма LAT регистри. Май няма и open drain пинове 
|
| Вто Яну 29, 2013 11:04 pm |
|
 |
|
Boris666
Ранг: Минаващ
Регистриран на: Чет Яну 03, 2013 11:53 am Мнения: 17
|
 Re: ds18b20
A WPUB (weak pull-ups), няма ли да свърши същата работа.
|
| Сря Яну 30, 2013 12:08 am |
|
 |
|
palavrov
Ранг: Форумен бог
Регистриран на: Вто Окт 11, 2011 11:53 pm Мнения: 4582 Местоположение: Brussels / Пловдив
|
 Re: ds18b20
Баси грозния PIC - верно няма LAT регистри ... И по подразбиране някои портове са аналогови входове и се четат винаги като 0 ... Я колко забавно Ако запишем една нуличка в ANSEL регистъра току виж нещата тръгнали ...
_________________ Мразя да мразя ...
|
| Сря Яну 30, 2013 1:56 am |
|
 |
|
didofen
Ранг: Популярен
Регистриран на: Вто Юни 27, 2006 11:13 am Мнения: 381 Местоположение: Варна
|
 Re: ds18b20
що да е грозно? аз мн мразя ЛАТ регистри. и мога да кажа, че 913 мн ме кефи. е да, по ресет входовете тръгват като аналогови, просто си оправяш инициализацията 
|
| Сря Яну 30, 2013 10:20 am |
|
|