Jump to content

    

Santy

Участник
  • Content Count

    50
  • Joined

  • Last visited

Community Reputation

0 Обычный

About Santy

  • Rank
    Участник

Recent Profile Visitors

702 profile views
  1. 1. 1кОм резисторы ( возможно в вашем случае будет лучше 0,5кОм) для подключения выводов к резистору подтяжки(10кОм). 2. К выводу Reset можно рекомендовать например CDSOD323-T05(при напряжении программатора 5В) и CDSOD323-T03(при напряжении программатора 3,3В). Если внутрисхемное программирование не применяете, то CDSOD323-T03. 3. Можно рекомендовать например CDSOD323-T03C.
  2. В схеме не все предусмотрено (см. AVR040 и т.д) . 1) Подтяжки сделать резисторами 10кОм. Выводы AVR(SDA, SCKP, WAKE_UP) подключить через резисторы 1кОм и к выводам подключить стабилитроны. 2) Выводы ESP(SDA, SCK, WAKE_UP) подключить через резисторы 1кОм. 3) Параллельно резисторам R5, R9 подключить диоды. 4) К кнопке S1 подключить супрессор. Так же необходимо при программировании тщательно разобраться с фьюзами.
  3. В таких случаях частенько бывает, что проблема даже не в плате, а в датчиках , ключе управления двигателем и т.д.
  4. Спасибо за помощь и критику. Внесу изменения и учту в дальнейшем.
  5. На 100% БП исправен да и контроллер тоже. На двух устройствах одно и то же происходит. То, что я привел кодом то считать нельзя так несколько строчек. Задержки все выдержаны правильно. Длина сети 10м. Все контакты надёжно подключены, подключал подтяжку в конце сети (разные номиналы) при 200 Ом сеть работает, но изредка сбоит.
  6. При работе с сетью у меня все прерывания запрещены. Для приёма и передачи использую 1 и тот же пин не UART (хотя возможно лучше использовать 2 пина и транзистор, один из пинов включает и выключает ключ, а другой работает на приём), причём этот пин всегда включен на выход. Приём и передача бита в соответствии с datasheet. Приём: PRIEM_BIT_CIKL: rcall ZA60MKS cbi PORTE,0 rcall ZA2MKS sbi PORTE,0 rcall ZA2MKS PROV_BIT: sbic PINE,0; rjmp BIT_1;ВЫПОЛНИТЬ КОМАНДУ ПЕРЕХОДА ЕСЛИ ПРИНИМАЕМЫЙ БИТ=1 rjmp BIT_0 Передача: UST1_BIT_CIKL: dec vspom_reg lsr bait cbi PORTE,0 rcall ZA5MKS sbi PORTE,0 rcall ZA60MKS rjmp PEREDACHA_BIT_CIKL UST0_BIT_CIKL: dec vspom_reg lsr bait cbi PORTE,0 rcall ZA60MKS sbi PORTE,0 rcall ZA5MKS Пришёл к выводу , что влияют паразитные ёмкости да и кабель имеет значение. Заменил FTP кабель на телефонную лапшу так даже хуже стало.
  7. Т.е Вы хотите сказать, что данный экранированный кабель излучает и принимает? Экран соединён с GRND (в одной точке). Один из датчиков подключен на самый конец кабеля, а другой посредине с помощью проводов длиной 1см. Как только отключаю работающий датчик, то сразу же начинает работать тот , который не работал. Несколько увеличил временные задержки, но картина не изменилась. Попробую использовать обычную телефонную лапшу. Если же не поможет придётся осциллографом импульсы смотреть.
  8. В литературе и статьях 1-wire хвалят. Реализация протокола сделана у меня в соответствии с datasheet. Попробую там где можно увеличу временные задержки. Когда в сети работает 1 датчик, то проблем нет (проверял на 10м). На датчиках DS18B20, которые я применяю на корпусе написано Dallas. Производитель видимо Mахim. Есть ли DS18B20 производства TI?
  9. Здравствуйте. Реализовал на AVR небольшую сеть(10м) из датчиков DS18B20 (все условия протокола соблюдены и тщательно проверены, схема подключения стандартная 3-х проводная с подтяжкой 4,7 кОм). Кабель витая пара FTP (даже ПВС 3х1 пробывал, но нечего не изменилось). Сеть работает, когда датчики подключены на общий клемник ( т.е в непосредственной близости друг от друга). Проблема возникает когда расстояние между датчиками более 0,5м. Причём один из датчиков работает нормально (даже если его поменять местом подключения с неработающим), а при работе с другим возникает авария контрольных сумм. Датчики все новые. Всё повторяется на других экземплярах датчиков. Место где находится сеть обычное, без серьёзных помех. Подскажите пожалуйста в чём может быть проблема?
  10. Напишите электронный адрес.
  11. Как часто при этом появляется признак, что устройство не настроено?
  12. Например, число читаемое из EEPROM.
  13. Может быть подпрограмма для записи в EEPROM, которую можно вызвать только 1 раз.
  14. Рекомендуется хранить константы во FLASH- памяти, если они не меняются во время работы программы. Меры предосторожности при работе с EEPROM хорошо написаны например в книге А.В. Евстефеев "Микроконтроллеры AVR семейств Tiny и Mega фирмы Atmel" см. стр 41.
  15. Как вариант, попробывать снизить частоту кварца.