#1 2025-06-08 20:41:23

stas_amp
Учасник
З Полтава
Зареєстрований: 2025-06-02
Повідомлень: 42

DigiSpark Attiny85 проблема з логічною 1 на виході.

Вітаю.

Маю проект для автоматичного змащування ланцюга мотоцикла.

Всі алгоритми працюють, без проблем.
Але є одне але.
Вихід на керування насосом автозмазчика, PB1 поводить себе не адекватно.
На виході, замість 5-ти вольт, маємо тільки 1.2. Що ще дивно, що ці 1.2 вольти ідуть з частотою 6кГц.

При подачі живлення перші два імпульси йдуть нормальні, далі вже в 1.2 Вольти. Відраховує 64 імпельси, знову два нормальні, і так по колу.

Поради по навантаженню порту - відпадають.

Осцил чіпляв прямо на ногу контролера.

Переназначав іншу ногу, на PB4, раптом порт пошкоджено. Теж не допомагає.
Якщо написати звичайну блималку, на той порт, то все працює без проблем.

Хочу зрозуміти, що не так. Чого так себе поводить контролер.

Може хто має ідеї?

Дякую.

Неактивний

#2 2025-06-08 21:07:03

jokeer
Гість

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

Прикольно, але без телепата тут ніяк wink Ви навіть не натякнули що за контроллер і що за програма.

#3 2025-06-08 22:29:21

jokeR
Учасник
Зареєстрований: 2024-12-12
Повідомлень: 121

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

Ага, сорян, який контроллер побачив.
Ну, це трохи незвичайний контроллер. Може ви щось з таймерами хитре робили, чи з тактуванням.. Я б подумав, що він в режимі бутлоадера хоче щось з USB, але з ваших слів все інше працює.

Неактивний

#4 2025-06-09 01:10:57

dimich
Учасник
Зареєстрований: 2023-12-01
Повідомлень: 488

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

stas_amp пише:

На виході, замість 5-ти вольт, маємо тільки 1.2. Що ще дивно, що ці 1.2 вольти ідуть з частотою 6кГц.

Амплітуда цих 6-кілогерцових імпульсів 1.2 вольт? Чи амплітуда 5 вольт, але в середньому при вимірюванні дає 1.2?

stas_amp пише:

При подачі живлення перші два імпульси йдуть нормальні, далі вже в 1.2 Вольти.

Як живите плату? З якого джерела, якою напругою, на який вхід?

stas_amp пише:

Відраховує 64 імпельси, знову два нормальні, і так по колу.

64 імпульси схоже на преамбулу PowerDelivery, але там 300 кГц по лінії CC.
До USB в цей час плата ж не підключена, сподіваюсь?

stas_amp пише:

Поради по навантаженню порту - відпадають.

Чому? Глюк спостерігається, коли до PB1 окрім вбудованого світлодіода нічого не підключено?

stas_amp пише:

Переназначав іншу ногу, на PB4, раптом порт пошкоджено.

PB4 та PB3 використовуються V-USB в ролі D+/D-. Якщо у вас прошивка з V-USB, то їх краще не використовувати.

stas_amp пише:

Може хто має ідеї?

Якщо виключити навантаження, то або живлення, або баг в схемі підключення чи в коді. Без схеми та коду здогадуватись буде непросто.

Неактивний

#5 2025-06-09 08:41:17

stas_amp
Учасник
З Полтава
Зареєстрований: 2025-06-02
Повідомлень: 42

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

jokeer пише:

Прикольно, але без телепата тут ніяк wink Ви навіть не натякнули що за контроллер і що за програма.

Як це не натякнув? А в назві теми Attiny85?

Неактивний

#6 2025-06-09 08:50:59

stas_amp
Учасник
З Полтава
Зареєстрований: 2025-06-02
Повідомлень: 42

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

dimich пише:
stas_amp пише:

На виході, замість 5-ти вольт, маємо тільки 1.2. Що ще дивно, що ці 1.2 вольти ідуть з частотою 6кГц.

Амплітуда цих 6-кілогерцових імпульсів 1.2 вольт? Чи амплітуда 5 вольт, але в середньому при вимірюванні дає 1.2?


stas_amp пише:

При подачі живлення перші два імпульси йдуть нормальні, далі вже в 1.2 Вольти.

Як живите плату? З якого джерела, якою напругою, на який вхід?

stas_amp пише:

Відраховує 64 імпельси, знову два нормальні, і так по колу.

64 імпульси схоже на преамбулу PowerDelivery, але там 300 кГц по лінії CC.
До USB в цей час плата ж не підключена, сподіваюсь?

stas_amp пише:

Поради по навантаженню порту - відпадають.

Чому? Глюк спостерігається, коли до PB1 окрім вбудованого світлодіода нічого не підключено?

stas_amp пише:

Переназначав іншу ногу, на PB4, раптом порт пошкоджено.

PB4 та PB3 використовуються V-USB в ролі D+/D-. Якщо у вас прошивка з V-USB, то їх краще не використовувати.

stas_amp пише:

Може хто має ідеї?

Якщо виключити навантаження, то або живлення, або баг в схемі підключення чи в коді. Без схеми та коду здогадуватись буде непросто.

1.2 вольти на 6кГц, по осцилографу дивився. Якби там було 5 вольт, то мене б це не бентежило.

Глюк на всіх портах, що я пробував PB1 та PB4,

Живлення там достатньо, перевіряв, та до всього ж, якщо що, то звичайний блінкер там працює без проблем.

Порти не пошкоджено, usb працює та й той самий блінкер - теж.

Неактивний

#7 2025-06-09 08:53:25

jokeer
Гість

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

Ну я роздивився вже wink
До речі, не пробували інший контроллер взяти? може у вас якийсь підгорівший екземпляр. Чи на платі щось підкорочене.
Взагалі, уявіть, що це питання задає вам гумова качечка. Зможете відповісти? wink Отож. Давайте подробиць якихось, чи що

#8 2025-06-09 08:55:05

stas_amp
Учасник
З Полтава
Зареєстрований: 2025-06-02
Повідомлень: 42

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

Ось код.

DigiSpark_Oiler_Moto.rar

Неактивний

#9 2025-06-09 08:56:23

stas_amp
Учасник
З Полтава
Зареєстрований: 2025-06-02
Повідомлень: 42

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

jokeer пише:

Ну я роздивився вже wink
До речі, не пробували інший контроллер взяти? може у вас якийсь підгорівший екземпляр. Чи на платі щось підкорочене.
Взагалі, уявіть, що це питання задає вам гумова качечка. Зможете відповісти? wink Отож. Давайте подробиць якихось, чи що

Дві плати маю, і однаковий глюк.

Переписува вже там і версію завантажувача, 1.06,  1.11. та 2.06

Все однаково.

Неактивний

#10 2025-06-09 08:57:10

jokeer
Гість

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

і взагалі, якщо у вас є код, який видав 1.2 в - ви ж можете з нього зробити MVP і показати? бо розбирати 1000 рядків коду ніхто не буде, а приклад із 10 рядків можна навіть прошити.

#11 2025-06-09 09:07:46

stas_amp
Учасник
З Полтава
Зареєстрований: 2025-06-02
Повідомлень: 42

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

jokeer пише:

і взагалі, якщо у вас є код, який видав 1.2 в - ви ж можете з нього зробити MVP і показати? бо розбирати 1000 рядків коду ніхто не буде, а приклад із 10 рядків можна навіть прошити.

Не зрозумів Вас.
Що таке MVP?

Неактивний

#12 2025-06-09 09:08:07

jokeer
Гість

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

на перший погляд, звичайна програма під Arduino. Не може статись, що ваша периферія заганяє проц в bootloader?

#13 2025-06-09 09:09:49

jokeer
Гість

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

MVP - minimum viable product.
Як blink, тільки для видачі 1.2 в.

#14 2025-06-09 09:17:00

stas_amp
Учасник
З Полтава
Зареєстрований: 2025-06-02
Повідомлень: 42

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

Код писав не я, а мій товариш.

Як вирізати звідти частину - я не в курсі.
Якщо допоможете - буду вдячний.

Неактивний

#15 2025-06-09 09:21:15

stas_amp
Учасник
З Полтава
Зареєстрований: 2025-06-02
Повідомлень: 42

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

jokeer пише:

MVP - minimum viable product.
Як blink, тільки для видачі 1.2 в.

Мені не треба 1.2 вольти, мені треба нормальна напруга логічної одиниці, близько 5 Вольт

Неактивний

#16 2025-06-09 09:24:48

jokeer
Гість

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

ну, як..
прошивка видає 1.2 в.
закоментувати половину loop
прошити.
продовжує видавати 1.2 в - закоментувати ще половину.
перестала видавати - повернути половину закоментованого.
повторити кілька разів. за 10 хвилин ви точно знатимете в якому рядку проблема.

До речі, ви його від чого живите?

#17 2025-06-09 09:27:13

dimich
Учасник
Зареєстрований: 2023-12-01
Повідомлень: 488

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

stas_amp пише:

Живлення там достатньо, перевіряв, та до всього ж, якщо що, то звичайний блінкер там працює без проблем.

Так як ви живите плату у вашій схемі, не в блінкері?
І що показує осцилограф на піні живлення під час глюку?

Може бути таке, що у схемі якийсь із інших виходів зʼєднаний малим опором в землю, а ви видаєте на нього високий рівень (або підтягнутий до Vcc, а ви видаєте низький). Контроллер може намагатись працювати при живлені навіть менше 1 вольта. BOD мабуть же вимкнений у фʼюзах.

Неактивний

#18 2025-06-09 09:36:23

stas_amp
Учасник
З Полтава
Зареєстрований: 2025-06-02
Повідомлень: 42

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

jokeer пише:

ну, як..
прошивка видає 1.2 в.
закоментувати половину loop
прошити.
продовжує видавати 1.2 в - закоментувати ще половину.
перестала видавати - повернути половину закоментованого.
повторити кілька разів. за 10 хвилин ви точно знатимете в якому рядку проблема.

До речі, ви його від чого живите?

На саму плату ардуіно даю 14 вольт, на виході стабілізатора чітко 5, і на вході контроллера - теж 5 вольт

Неактивний

#19 2025-06-09 09:39:10

stas_amp
Учасник
З Полтава
Зареєстрований: 2025-06-02
Повідомлень: 42

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

dimich пише:
stas_amp пише:

Живлення там достатньо, перевіряв, та до всього ж, якщо що, то звичайний блінкер там працює без проблем.

Так як ви живите плату у вашій схемі, не в блінкері?
І що показує осцилограф на піні живлення під час глюку?

Може бути таке, що у схемі якийсь із інших виходів зʼєднаний малим опором в землю, а ви видаєте на нього високий рівень (або підтягнутий до Vcc, а ви видаєте низький). Контроллер може намагатись працювати при живлені навіть менше 1 вольта. BOD мабуть же вимкнений у фʼюзах.

Зараз граюся з цим просто в макетці. Сама плата arduino. Виходи нічим не навантажені.

Фьюзи виставлені по замовчуванню.

Що дасть вимкення BOD ?

Неактивний

#20 2025-06-09 09:46:33

jokeer
Гість

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

До справи не відноситься, але живлення у вас стрьомне. В бортовій мережі що завгодно може бігати, треба розраховувати на імпульси до 40 В. Вбудований стаб може і не витягнути.

#21 2025-06-09 10:02:05

dimich
Учасник
Зареєстрований: 2023-12-01
Повідомлень: 488

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

stas_amp пише:

Що дасть вимкення BOD ?

При увімкненому BOD при просадці живлення нижче встановленого рівня (1.8, 2.7 або 4.3 вольт) контроллер гарантовано входить в reset, а не намагається з глюками працювати до останнього.

В заглюченому стані пін може тіліпатись на досить високій частоті, що осцилограф з недостатньою полосою пропускання (або за наявності паразитних ємностей на платі) може цього не бачити.

stas_amp пише:

На саму плату ардуіно даю 14 вольт, на виході стабілізатора чітко 5, і на вході контроллера - теж 5 вольт

Судячи по схемах з інтернета, там перед регулятором нема ніякого конденсатора. А по даташиту має бути.

Неактивний

#22 2025-06-09 10:16:07

stas_amp
Учасник
З Полтава
Зареєстрований: 2025-06-02
Повідомлень: 42

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

jokeer пише:

До справи не відноситься, але живлення у вас стрьомне. В бортовій мережі що завгодно може бігати, треба розраховувати на імпульси до 40 В. Вбудований стаб може і не витягнути.

Зараз все лежить на столі, і живиться все від лабораторника, стабілізованого.
То ж знову, все з якимись завадами по живленню відпадають.

Я займаюся електронікою і її ремонтом більше 30-ти років, і розумію, що і як живити, як захистити від завад, які струми тримає контроллер на виході, як із обмежити, як підключати транзистори, ну і так далі. Все що стосовно апаратної частини відпадає.

Мене цікавить, чому себе так поводить контролер. І саме його поведінка, а не фактори перевантаження портів, чи живлення, від не зрозуміло чого.

Прошу зрозуміти мене правильно. Я тут не ,,умнічаю'', я задав конкретне питання по програмній частині, в якій я не розуміюся.

Неактивний

#23 2025-06-09 10:21:38

jokeer
Гість

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

В програмній частині немає нічого незвичайного. Я впевнений до якщо я заллю її в тіньку - 1.2в не побачу. Тому пробуйте коментувати код.

#24 2025-06-09 10:21:55

stas_amp
Учасник
З Полтава
Зареєстрований: 2025-06-02
Повідомлень: 42

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

dimich пише:
stas_amp пише:

Що дасть вимкення BOD ?

При увімкненому BOD при просадці живлення нижче встановленого рівня (1.8, 2.7 або 4.3 вольт) контроллер гарантовано входить в reset, а не намагається з глюками працювати до останнього.

В заглюченому стані пін може тіліпатись на досить високій частоті, що осцилограф з недостатньою полосою пропускання (або за наявності паразитних ємностей на платі) може цього не бачити.

stas_amp пише:

На саму плату ардуіно даю 14 вольт, на виході стабілізатора чітко 5, і на вході контроллера - теж 5 вольт

Судячи по схемах з інтернета, там перед регулятором нема ніякого конденсатора. А по даташиту має бути.

Якщо навіть так, як говорите Ви, то чого зі звичайним блінкером все працює?

І при цьому, ще, всі алгоритми автозмазчика працюють нормально, йде відслідковування швидкості, реакція на кнопку вибору режимів, та робота індикації режиму.

Неактивний

#25 2025-06-09 10:41:17

dimich
Учасник
Зареєстрований: 2023-12-01
Повідомлень: 488

Re: DigiSpark Attiny85 проблема з логічною 1 на виході.

stas_amp пише:

Мене цікавить, чому себе так поводить контролер.

Документованих способів видавати на пін 1.2 В при живлені 5 В у контролера нема.

Можу припустити, що analogRead() з якоїсь причини перемикає опорну напругу на Vref або на внутрішній опорник (який, доречі, 1.1 В, звідси ваші 1.2 В може і вилазять), а потім намагається вимірювати напругу на цьому ж Vref піні (PB0).

Також не можна виключати, що і сам чіп - якийсь клон з глюками, у всій партії плат.
Так як ніяких особливостей Attiny85 у вас не використовується, перевірте програму на якій-небудь "класичній" платі ардуіно з атмегою.

stas_amp пише:

я задав конкретне питання по програмній частині, в якій я не розуміюся.

Код програми сумбурний, але явних причин для такого глюку поки не побачив. Метод діагностики вже написали: вимикаєте #if'ами або коментуєте спочатку весь функціональний код, перевіряєте. Поступово вмикаєте невеликі частини коду, і дивитесь, після включення якої частини глюк починає проявлятись.

Неактивний

Швидке повідомлення

Введіть повідомлення і натисніть Надіслати

Підвал форуму