Відповісти

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

Назад

Огляд теми (нові повідомленні вгорі)

dimich
Сьогодні 18:59:58
jokeR пише:

Які є кращі ідеї? Є якийсь софтовий таймер, чи підпирати перевірками?

if (millis() - btnModeNoVeryLongPressed > durationVeryLongPressMode)
stas_amp
Сьогодні 18:47:35

Вчора так і не дістався до цієї грачки.

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

Якщо так, то я й сідушку підніму, щоб глянути, що там з мастилом.

Одне б що залишити, так це пам'ять вибраного редиму.
Це б не вадило.

Якщо можна, то виріжте той шмат.

Дякую.

jokeR
Сьогодні 17:33:13

@л@!
Не відтворилось.
Я здивований.
Тут ще можливо, що в мене якось в board urls було і digistump 1.6.7 (офіціально протухший), і 1.7.5 (неофіціально свіжий), різні репозиторіі, однакові назви.. хз.. Видалив всі, встановив тільки 1.7.5.. не відтворюється. Може @stas_amp це ще не виправив, і в нього ще все зламане wink

на 50-й день роботи

Для мотоцикла не думаю що це сильно актуально wink Які є кращі ідеї? Є якийсь софтовий таймер, чи підпирати перевірками?

dimich
Сьогодні 16:58:05

Доречі, в програмі є й інші баги, не повʼязані з сигналом на піні. Наприклад, конструкції типу

if (millis() > (durationVeryLongPressMode + btnModeNoVeryLongPressed))

на граничних значеннях (на 50-й день роботи smile) працюватимуть неправильно.

dimich
Сьогодні 16:32:16

@JokeR, вам же наче вдавалось відтворити баг? А можете зашарити .lst-файл прошивки, на якій баг стабільно відтворюється? IDE наче створює .lst при експорті бінарика і кладе його поряд.

jokeer
Сьогодні 09:13:19

Там цікава проблема, схоже, була в кривій реалізації eeprom в саме цьому BSP саме для Arduino IDE. При ініціалізації eeprom щось писалося не в ті регістри, і виходи переходили в дивний стан, коли логічні рівні якось міксуються як аналогові сигнали.
Ну, якщо лампочка буде трохи блимати, думаю це допустимо wink може так і задумано.

ard125
Вчора 23:28:13

Вставлю і я свої 3 копійки картинки  з логаналізатору big_smile

oil1.jpg

oil2.jpg

oil3.jpg

Як видно - ШИМ з частотою 5 кГц з’являється лише на РВ2 (LEDMode) при довгому натисканні кнопки.
Спробуйте тимчасово вимкнути в коді (закоментувати) все що стосується індикації

dimich
Вчора 16:57:03
stas_amp пише:

Якщо у Вас все це проінстальвано, й налаштовано, чи можна Вас попросити, скомпілювати прошивку, для проби?

Та льогко: DigiSpark_Oiler_Moto_hex.zip

jokeR
Вчора 16:45:37

Здається, platformio це таки ваше рішення wink Тупо зібралось, прошилось. На P1 нормальний 0, на P2 - іноді нормальні 5В імпульси. Без провалів. Дивно трохи - індикаторний LED прикрутити не до ноги з LED, а до іншої wink

 - framework-arduino-avr-digistump @ 1.7.2 
 - tool-micronucleus @ 1.250.210222 (2.50) 
 - toolchain-atmelavr @ 1.70300.191015 (7.3.0)

Походу, framework 1.7.5 що в arduino ide якийсь кривий. Зручно коли все автоматизовано, але коли автоматизовано криво то це ПЦ wink
Хоча platformio той ще ПЦ всередині wink Просто повезло.

stas_amp
Вчора 16:30:29
dimich пише:
stas_amp пише:

Тобто, я встановлюю цей софт, копіюю текст скетчу, вставляю скопійоване, додаю Arduino.h на початку, отримую hex, пишу його в плату, через програматор.
Так?

Як під віндою його ставити і користуватись не знаю, вибачте. Під лінухами я просто встановив пакет platformio-core з репозиторію.
Створюю директорію і проект в ній:

$ mkdir test-project
$ cd test-project
$ pio project init -b digispark-tiny

Копіюю ваш скетч в test-project/src/, дописую на початку "#include <Arduino.h>", збираю:

$ pio run

(а краще "pio run -v", щоб бачити, які команди воно викликає).
Для прошивки зазвичай достатньо

$ pio run -t upload

Для digispark-tiny, мабуть, повинно так само працювати. Принаймні у мене воно скачало й запустило micronucleus, просить підключити плату.

Всі налаштування в platformio.ini.
Бінарик, hex та інші артефакти лежать в .pio/build/digispark-tiny/


Дякую.

Якщо у Вас все це проінстальвано, й налаштовано, чи можна Вас попросити, скомпілювати прошивку, для проби?

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

stas_amp
Вчора 16:26:38
jokeer пише:

Прийнято wink
А взагалі, як часто в цьому моті треба змащувати цеп? бо я ніколи не чув про таку проблему wink

Якщо мот спортивний, то там таке не використовують. Там миють кожну тисячу, і змащують липкою спеціальною мазутою, кожні 500 км.

На ендуро - там ніхто взагалі не робить, все одно цепу там хватає не на довго. Його від багна оббили, водою помили, й готово.

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

В середньому розхід мастила для цепу, десь 50 - 60 грамів на тисячу кілометрів.

dimich
Вчора 15:00:03
stas_amp пише:

Тобто, я встановлюю цей софт, копіюю текст скетчу, вставляю скопійоване, додаю Arduino.h на початку, отримую hex, пишу його в плату, через програматор.
Так?

Як під віндою його ставити і користуватись не знаю, вибачте. Під лінухами я просто встановив пакет platformio-core з репозиторію.
Створюю директорію і проект в ній:

$ mkdir test-project
$ cd test-project
$ pio project init -b digispark-tiny

Копіюю ваш скетч в test-project/src/, дописую на початку "#include <Arduino.h>", збираю:

$ pio run

(а краще "pio run -v", щоб бачити, які команди воно викликає).
Для прошивки зазвичай достатньо

$ pio run -t upload

Для digispark-tiny, мабуть, повинно так само працювати. Принаймні у мене воно скачало й запустило micronucleus, просить підключити плату.

Всі налаштування в platformio.ini.
Бінарик, hex та інші артефакти лежать в .pio/build/digispark-tiny/

jokeer
Вчора 14:46:40

Прийнято wink
А взагалі, як часто в цьому моті треба змащувати цеп? бо я ніколи не чув про таку проблему wink

stas_amp
Вчора 14:30:55
jokeer пише:

Підтримка саме tiny85 в Arduino ide зроблена якось per anus. Кілька реалізацій, деякі протухли. В деяких, схоже, проблеми з eeprom.
А навіщо взагалі щось писати в eeprom? Як на мій погляд, між кількістю обертів і інтенсивністю роботи маслонасосу відповідальність однозначна. Хіба що мотогодини зберігати, але у вас цього все одно немає.
та і з nano які проблеми? одягнув термоусадку, краї залив герметиком. Плату полакував. Не вірю що в моті не знайдеться місце під Arduino nano wink

В еепром пишеться кількість імпульсів, для того, щоб вирахувати, скільки масла в бачкк. І наприклад, після 1000 імпульсів, нагадувати, що масло закінчується.

Ще вибраний режим пишеться до еепром, щоб його запам'ятати, після того, як вимкнеться живлення. 


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

Але враховуючи, потрачений час і нерви, то вже і зі шприца готовий мазати той цеп ???

stas_amp
Вчора 14:24:44
dimich пише:
stas_amp пише:

Якщо так, то чи підійде цей код, чт треба все переписувати заново?
Може що порадите?

PlatformIO
Скетч збирається без переписування, тільки в самому початку додати

#include <Arduino.h>

Тобто, я встановлюю цей софт, копіюю текст скетчу, вставляю скопійоване, додаю Arduino.h на початку, отримую hex, пишу його в плату, через програматор.

Так?

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