| Автор |
Съобщение |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
 Загадка с DS1307ZN
Не съм вярвал че нещо дето съм го правил толкова пъти изведнъж ме вкара в тъч. Та ... проблема :
DS1307ZN+ купуван скоро от комет, очевидно му тръгва кварца, I2C-то рабти нормално, RAM-та му се чете и се пише нормално. Клок регистрите и те се пишат нормално, само дето клок регистрите не се инкрементират. Седят си такива квито съм ги записал. Другия вариант е да не се четат нещо като хората?!?!. Проблема не е нито софтуерен нито хардуерен, защото имам абсолютно същия хардуер със същия софтуер. Разликата е само в RTC-то - на работещата платка е без N и без + и е купувано преди около половин година. Това дето се држи толкова странно е купувано преди седмица от комет. Имам и друго от същата "лента" - и то се държи по същия начин. Чета пдф-а (уж най-новия) и не виждам нищо писано по въпроса.
Ако някой се е сблъсквал с този недокументиран фийчър да свирка. Другия вариант е да са някви ментета или нещо фалшиви...
edit : добавка към чудесиите : след повече от 12 часа без захранване тъпите клок регистри съдържат това което последно е било записано - сякаш са EEPROM ?!?!?! ....
|
| Нед Юли 14, 2013 10:31 pm |
|
 |
|
Zdrav
Ранг: Форумен бог
Регистриран на: Сря Яну 26, 2005 2:01 pm Мнения: 1952 Местоположение: Варна
|
 Re: Загадка с DS1307ZN
_________________ Най-опасният враг на истината и свободата е мнозинството.
|
| Пон Юли 15, 2013 8:56 am |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
 Re: Загадка с DS1307ZN
И на мене ми прилича на някво странно буфериране, ама защо стария чип не го прави а новия го прави, без да е писано никаде по даташитове или по ерати... А и тук виждам разни такива неща обаче за 1307 никъде не виждам къде аджеба ше са тези битове... А още по странното е че си задържаха състоянието 12 часа без захранване - ни батерия ни основно... На другия като му изключа захранването и му махна батерията си се нулира - както би трябвало да направи...
|
| Пон Юли 15, 2013 9:13 am |
|
 |
|
Zdrav
Ранг: Форумен бог
Регистриран на: Сря Яну 26, 2005 2:01 pm Мнения: 1952 Местоположение: Варна
|
 Re: Загадка с DS1307ZN
Понякога в такива случаи, когато имаш работещо и неработещо устройство с идентичен хардуер/софтуер, по-добре е да потърсиш не защо едното не работи, а да потърсиш защо другото работи. Преди доста време беше, когато и аз се чесах по главата заради тези RTC-та на Далас(може би DS1305). Имам някакъв спомен, че без батерия не работеше. Имаше проблеми и ако сложиш диод между батерията и него. После имаше и един бит с който се прави enable на осцилатора. В дейташита нямаше нищо по въпроса. Но горния линк даваше някакви намеци къде е проблема. Това, че си запазва регистрите известно време след изключване на захранванията е нормално.
_________________ Най-опасният враг на истината и свободата е мнозинството.
|
| Пон Юли 15, 2013 9:29 am |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
 Re: Загадка с DS1307ZN
Е 12 часа никак не са известно време... номера го прави с и без батерия. Няма диоди на батерията щото нямам нужда - позлвам си стандартна CR2032. След като изчистя бит 7 на секундите, осцилатора тръгва, ползвам му и SQW out на 1Hz - след настройка на control регистъра си ми излиза и тоя сигнал, осцилатора го гледам и със скопа - тръгва си нормално. Въобще всичко си е както трябва, само дето при четене ми дава винаги последно записаната стойност. Сега ще пробвам да изчитам седемте регистъра вместо само първите 4 - трябва ми само час и ден от седмицата - дата-месец-година не ги ползвам и не ги чета... Гледам че пише че буфера се ъпдейтвал при някъв burst read ама никъде не пише кво ше рече това...
едит : ядец - чета първите 8 байта два пъти подред - същия грездей...
|
| Пон Юли 15, 2013 9:42 am |
|
 |
|
Zdrav
Ранг: Форумен бог
Регистриран на: Сря Яну 26, 2005 2:01 pm Мнения: 1952 Местоположение: Варна
|
 Re: Загадка с DS1307ZN
Просто за целите на дебъгването, ако си се изчерпал откъм идеи за момента, вземи размени чипчетата на една работеща и една неработеща платка. Това поне ще ти покаже дали конкретно от ZN+ идва разликата. А burst read ще рече да изчетеш всичките 8 байта наведнъж - с една read операция по I2C.
_________________ Най-опасният враг на истината и свободата е мнозинството.
|
| Пон Юли 15, 2013 10:09 am |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
 Re: Загадка с DS1307ZN
Е това и правя - изчитам ги всичките на веднъж. Ама в даташита пише, че при всеки бъс старт буфера се ъпдейтва. Пробвах и 7 байта да чета - същия грездей. На мене също ми мина през акъла да разменя чиповете. Имах един дето беше само N ама го прецаках. Сега ше се разровя да видя нямам ли някъде някой стар да скрапна. Не ми се сваля другия, че да не омажа нешо и там - нямам други резерви а работещата ми трябва работеща...
|
| Пон Юли 15, 2013 10:22 am |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
 Re: Загадка с DS1307ZN
Ама прав беше да гледам що другата работи... Както в повечето случаи, виновно излезе задклавиатурното устройство...
Рек мое да я изтрие темата ако реши...
|
| Пон Юли 15, 2013 1:01 pm |
|
 |
|
head_up
Ранг: Форумен бог
Регистриран на: Нед Юни 01, 2008 9:54 pm Мнения: 1503 Местоположение: Пловдив
|
 Re: Загадка с DS1307ZN
"Похвали" се де 
|
| Пон Юли 15, 2013 2:13 pm |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
 Re: Загадка с DS1307ZN
То не е за хвалене... Ми ... имам 10-тина групи с настройки дето се записват/четат в/от еепрома. Хост-а подава часа като една от групите и часа за удобство се записва заедно с данните (заема 4 байта в еепрома ама ми спестява 20 проверки когато се пишат блоковете). После за да видя дали часовника е пуснат и работи проверявам секундите дали се менят(от sqw out на даласа), а за първоначален старт проверявам дали деня е 0 (предварително нулиран). Да де ама след нулирането прочитам часа от еепрома и деня вече не е нула и не се чете часа от ртц-то. Установих и защо другия работи... Понеже правих разни промени и отделно му презписах еепрома без да му махам батерията от ртц-то и той чете нули от еепрома и си прочита часа от ртц-то. Та така де ... два дена се боря със себе си.
|
| Пон Юли 15, 2013 8:54 pm |
|
|