По-моєму в даний момент кожен зробив/встановив собі їх, або хоче цезробити. Більшість реалізацій представлених на ринку є додатковоюхусткою яку необхідно якось прикріпити до дроту. То й ні... Алемені зовсім не хотілося, щоб десь там валився/бовталася якасьхрень. >
На даному схематичному малюнку, можна зрозуміти розпинуваннярідного реле
Звідси випливає бажаний алгоритм роботи:при подачі сигналу "вкл"— продовжити утримувати сигнальну лінію протягом ~1.8 сек.. Чогодостатньо для подачі 3х сигналів, якщо під час роботи каналу буввключений протилежний — зупинити поточний (якщо включили лівий, вимкнути правий) так само, додамо подовжню для аварійки (спасибі/вибач і т.Д.) На щастя, вхідна лінія для нас є і вихіднимодночасно. Тому ми можемо зменшити кількість проводів. Вартозауважити, що при вимкненому запалюванні реле поворотів працює лишеу режимі аварійки. Отже треба або живити схему від запалення, абовикористовувати лінію запалювання як сигнал On/Off. По-моєму другийваріант краще, при чому, має сенс скористатися LDO з входомвправлення, не віддаючи цей функціонал МК (не треба заморачуватисяз енергоспоживанням у Stop mode).
Сподіваюся, схема зрозуміла. Перепрошую за масштабування, схемидавно не малював Маємо вхід живлення від батареї — його заводимо навхід ЛДОшки, сигнал запалювання на вхід, що дозволяє. ЛДОшказапитує STM32F031F4 (у моєму випадку STM32F050 - стара назва). У МКна входах включена піддтяжка до одиниці, тому при включенніповороту, МК отримує Falling Edge через діод (прямо не можна, МК не12v tolerant) і це сигнал до активації, зводимо тайм, включаємотранзистор. Таймаутом — вимикаємо. Сподіваюся, хард зрозумілий.Перейдемо до софту. Частою проблемою подібних рішень є брязкітвхідних ланцюгів. Тому, в цій реалізації є таймант антибрусків(100мС). Алгоритм примітивний, переривання зводить тайм-аут, потаймууту перевіряється стан лінії, якщо стан не змінився -сприймаємо як сигнал до активації. Якщо стан змінилося, значитьігноруємо. До речі, якщо до "пострілу" таймера антибрязкотувідбудеться активне переривання - таймер просто скинеться напочаток. Далі - активувавши вихід, зводимо "робочий" таймер, коливін "вистрілить" - вимикаємо вихід. У разі, коли під час роботиодного каналу, активують протилежний (правий/лівий) — достатньозупинити поточний. Значення антибруску настільки велике т.К. При "острілі" перемикач сигналу поворотів може зачепити протилежнийнапрямок. >
Власне цікаві файли:
include/api.h
src/initialize.c — свого роду Board Support Package (налаштування, геттери/сеттери)
<
src/process.c — реалізація алгоритму обробки подій
Упевнений, для людини, що працює з ARM'ами, не важко перенести це усвій улюблений тулчейн (у моєму випадку GCC ARM Embedded)
< /
А тепер про збірку:
Топологія печатки
Виготовляємо виріб, програмуємо чим зручно (St-link/J- link…)
Перевірити досить просто — припаюємо лампочки між + живлення тасигнальними лініями, тикаємо в них 0, якщо лампочка продовжуєтьсясвітитися 1, 8 секунди — супер:)
Як це все встромити в машину:
1) У салоні виймаємо пробку запобіжників
2) Залазимо правою рукою в отвір і виштовхуємо ліву частину панелі (що зазвичай закрита дверима)
3) відкручуємо 2 гвинти
4) якщо у вас є підсвічування ніг - відключіть її
5) Акуратно від'єднуємо панель
> 6) візуально знаходимо релюшку прикріплену до блоку релезверху, блок прикріплений праворуч до запобіжників
7) беремо тупий предмет (або гострий, як зручніше) і заганяємо йогопо центру релюшки, після цього вона зійде легким рухом руки.
Йдемо туди, де є паяльник:
1) Розкриваємо релюшку (з засувками просто)
2) Витягуємо плату з корпусу, думаю, по фото зрозуміло що робити 3)клеїмо плату на 2х сторонній скотч до релюшок
4) Припаюємо, лівий і правий канал можна переплутати. Решта — ні:)рекомендую брати дрібний МГТФ.
У результаті одержує щось на кшталт
5) перевіряємо чи працює як треба
/>
6) за бажанням — заливаємо плату цапонлаком, як захист відвологи
Даємо їй висохнути, збираємо (якщо провід, як у мене 0, 14 у Вінілі— піде туго)
7) збираємо у зворотному порядку. Готово! Ти кращий!
ЗИ:Ця нотатка написана, не для повного повторення, як ще одинвелосипед, який зробила на ARM'e, а не AVR-ке






Коментарі1
Ех, готовий виріб б. Спробуємо звичайно спаяти/прошити або знайти майстра.UPD. Знайшов готове рішення на ledtune.com/ready/turn2.html - ідеальне для мене, але мало кому захочеться.