Быстрый заказ, позвонить +7-978-708-85-73
Дроссель Amadeus Productions. Быстрый заказ по телефону.
(Viber, WhatsApp, Telegram)
Amadeus Productions Дроссельный узел на Lancer IX 1.6 (4G18), 2.0 (4G63) и другие моторы
Ремкомплект РХХ на Mitsubishi Lancer IX, 1.6 (4G18), MD619857, 1450A116
Облегченный маховик на 1.6 (4G18) и другие моторы
Облегченные шкивы на 1.6 (4G18) и другие моторы
One-touch или "Ленивые поворотники"

44 страниц V  « < 26 27 28 29 30 > »   
Reply to this topicStart new topic
> One-touch поворотники, они же Ленивые Поворотники
SSh
сообщение 19.5.2012, 20:34
Сообщение #541


Технический Маньяк-Гуру
*******

Группа:
Технический Маньяк
Сообщений: 7049
Регистрация: 3.6.2009
Из: Армения
Вне форума
Авто: Lancer IX, AT

Репутация:   265  


Просто поставить такую кнопку не получится. Причина банальна - не осталось свободных ног, куда можно было-бы её подцепить.
Но вопрос решаем несколькими методами:
1. Отказаться от функции аварийки при заднем ходе - высвобождается нога и к ней цепляем кнопку. В этом случае надо выкинуть резистор 20кОм и стабилитрон и вместо сигнала ЗХ соединить этот вывод через кнопку с плюсом питания схемы.
2. Применить контроллер с большим кол-вом выводов, кнопку подключаем на любой из них.
3. Поменять местами выводы подключения сигнала ЗХ и левого поворотника - по схеме MCLR и GP4. Этот вариант наиболее интересен. Т.к. GP4 можно переконфигурировать в аналоговый вход, то, подав сигнал ЗХ через существующий делитель (стабилитрон надо убрать), а сигнал с кнопки через делитель с другими параметрами, скажем 20 кОм и 2 кОм, то измеряя напряжение на входе МК четко будет распознавать сигнал - от ЗХ или от кнопки.

Во всех 3-х случаях, естественно, требуется изменение прошивки.

И, наиболее простой способ, не требующий ни переделки схемы ни прошивки - просто соединить через нормально разомкнутые контакты кнопки и диод вход "Rear" с плюсом, и еще диод на сам сигнал "Rear", но в этом случае аварийка будет моргать до тех пор пока нажата кнопка, т.е. желаемые 3 моргания автоматически формироваться не будут. Но и здесь возможны некоторые ухищрения, например, ставим доп. одновибратор, с длительностью выходного импульса соответствующего 3-м морганиям. И подаем этот импульс на вход "Rear". Диодная развязка нужна и в этом случае.
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
black_infinity
сообщение 19.5.2012, 23:02
Сообщение #542


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 54
Регистрация: 19.5.2012
Из: Самара
Вне форума
Авто: Black Subaru Forester 2.5XT AT

Репутация:   2  


Цитата(SSh @ 19.5.2012, 21:34) *
3. Поменять местами выводы подключения сигнала ЗХ и левого поворотника - по схеме MCLR и GP4. Этот вариант наиболее интересен. Т.к. GP4 можно переконфигурировать в аналоговый вход, то, подав сигнал ЗХ через существующий делитель (стабилитрон надо убрать), а сигнал с кнопки через делитель с другими параметрами, скажем 20 кОм и 2 кОм, то измеряя напряжение на входе МК четко будет распознавать сигнал - от ЗХ или от кнопки.

время моргания как я понимаю прописывается в прошивке? программатор можно любой взять и софт из инета? например такой
а ты сможешь такую модификацию сделать? или подробнее описать что где и куда перепаять? (IMG:style_emoticons/default/rolleyes.gif)
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
SSh
сообщение 20.5.2012, 6:28
Сообщение #543


Технический Маньяк-Гуру
*******

Группа:
Технический Маньяк
Сообщений: 7049
Регистрация: 3.6.2009
Из: Армения
Вне форума
Авто: Lancer IX, AT

Репутация:   265  


Вот как-то так, приведен фрагмент схемы с переделками:
Прикрепленный файл  turn.JPG ( 16,72 килобайт ) Кол-во скачиваний: 17


Здесь доп. делитель не введен, а вместо этого сигналы ЗХ и кнопки "Thanks" идут через развязывающие диоды и равны соотв. 12В и 5В. Внутренний АЦП контроллера измеряет сигнал и в соответствии с его величиной отрабатывает ту или иную команду - включить аварийку постоянно или моргнуть 3 раза.

Но, в этом случае, как уже говорил, надо и переделывать плату и, естественно, основательно менять прошивку.

С программатором по ссылке я не знаком, но хотя наш МК и не указан в списке, скорей всего подойдет. Вообще-то по программатору и софту есть отдельная тема


Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
black_infinity
сообщение 20.5.2012, 7:08
Сообщение #544


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 54
Регистрация: 19.5.2012
Из: Самара
Вне форума
Авто: Black Subaru Forester 2.5XT AT

Репутация:   2  


Цитата(SSh @ 20.5.2012, 7:28) *
Вот как-то так, приведен фрагмент схемы с переделками:
Прикрепленный файл  turn.JPG ( 16,72 килобайт ) Кол-во скачиваний: 17


Здесь доп. делитель не введен, а вместо этого сигналы ЗХ и кнопки "Thanks" идут через развязывающие диоды и равны соотв. 12В и 5В. Внутренний АЦП контроллера измеряет сигнал и в соответствии с его величиной отрабатывает ту или иную команду - включить аварийку постоянно или моргнуть 3 раза.

Но, в этом случае, как уже говорил, надо и переделывать плату и, естественно, основательно менять прошивку.

С программатором по ссылке я не знаком, но хотя наш МК и не указан в списке, скорей всего подойдет. Вообще-то по программатору и софту есть отдельная тема

Спасибо за консультацию!
С прошивкой думаю разберусь, все-таки програмист (IMG:style_emoticons/default/biggrin.gif)
Я покурю сейчас все темки, может проще будет у меня в городе найти умельца протравить плату с нужными мне изменениями, чем заказывать, а потом еще и изменения вносить.
В любом случае еще буду задавать вопросы (IMG:style_emoticons/default/rolleyes.gif)
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
SSh
сообщение 20.5.2012, 7:29
Сообщение #545


Технический Маньяк-Гуру
*******

Группа:
Технический Маньяк
Сообщений: 7049
Регистрация: 3.6.2009
Из: Армения
Вне форума
Авто: Lancer IX, AT

Репутация:   265  


А почему-бы не рассмотреть вариант с одновибратором? Надо будет только к существующей плате добавить небольшой блочок - одновибратор, хотя-бы на 555-м таймере и ничего переделывать не надо (IMG:style_emoticons/default/wink.gif)

P.S. Программирование МК отличается от программирования ПК хотя-бы тем, что здесь надо изучить внутренюю структуру контроллера. Напр. в нашем случае - надо будет перевести порт GP4 в аналоговый режим - установкой регистра ANSEL=3. Основные принципы программирования контроллеров изложены здесь.
Ну и совершенно необходимо скачать и изучить даташит на соотв. МК, у нас pic12f675.
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
black_infinity
сообщение 20.5.2012, 17:24
Сообщение #546


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 54
Регистрация: 19.5.2012
Из: Самара
Вне форума
Авто: Black Subaru Forester 2.5XT AT

Репутация:   2  


Цитата(SSh @ 20.5.2012, 8:29) *
А почему-бы не рассмотреть вариант с одновибратором? Надо будет только к существующей плате добавить небольшой блочок - одновибратор, хотя-бы на 555-м таймере и ничего переделывать не надо (IMG:style_emoticons/default/wink.gif)

вариант, но по какой схеме можно его собрать? как будет регулироваться время моргания?
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
SSh
сообщение 20.5.2012, 18:44
Сообщение #547


Технический Маньяк-Гуру
*******

Группа:
Технический Маньяк
Сообщений: 7049
Регистрация: 3.6.2009
Из: Армения
Вне форума
Авто: Lancer IX, AT

Репутация:   265  


Любая схема одновибратора - на 555 таймере, на логических элементах, etc... Надо чтоб и запускался от отрицательного уровня и выдавал отрицательный импульс длительностью прибл. 2...2,5 сек. которая обеспечит необходимое кол-во морганий. Подстройка осуществляется подбором номиналов времязадающих элементов.

Например, что-то типа такого, длительность регулируется подбором резистора 18 кОм. Сигналы с выхода одновибратора и с лампочки заднего хода развязаны двумя диодами.
Прикрепленный файл  monostabil.JPG ( 12,87 килобайт ) Кол-во скачиваний: 14
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
AndreyM
сообщение 28.5.2012, 18:33
Сообщение #548


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 6
Регистрация: 28.5.2012
Вне форума
Авто: Nissan Tiida

Репутация:   0  


Цитата(SSh)
Все-таки пожелание Игоря (Онега) никак не выходит из головы... Прикидывал по-разному, но в любом случае придется слегка изменить схему и выводить из-под подрулевого переключателя еще один провод в дополнение к проводу сигнала ЗХ. Прошивка, естественно, тоже нужна новая, но это не проблема.

А если попробовать по другому. Не усложняя схему.
У тебя на время 3-4 морга в подпрограмме на оптроны R или L или оба подаётся постоянная 1.
А если подавать 3-4 импульса (примерное так - 0,35 сек. единица, 0,35 сек. ноль, 0,35 сек. единица, 0,35 сек. ноль, 0,35 сек. единица, 0,35 сек. ноль). Во время 0 проверяем включен-ли ЗХ и один из поворотников?
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
SSh
сообщение 29.5.2012, 7:33
Сообщение #549


Технический Маньяк-Гуру
*******

Группа:
Технический Маньяк
Сообщений: 7049
Регистрация: 3.6.2009
Из: Армения
Вне форума
Авто: Lancer IX, AT

Репутация:   265  


А что... Вполне разумное решение (IMG:style_emoticons/default/smile.gif) Жаль опять нет времени заниматься этим (IMG:style_emoticons/default/sad.gif) Может ты возмешься?
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
AndreyM
сообщение 29.5.2012, 8:38
Сообщение #550


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 6
Регистрация: 28.5.2012
Вне форума
Авто: Nissan Tiida

Репутация:   0  


Я только для AVR программу писал. До PIC-ов пока не добрался.
Но попробовать стоит.
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
SSh
сообщение 29.5.2012, 10:15
Сообщение #551


Технический Маньяк-Гуру
*******

Группа:
Технический Маньяк
Сообщений: 7049
Регистрация: 3.6.2009
Из: Армения
Вне форума
Авто: Lancer IX, AT

Репутация:   265  


Ага... Если-же возникнут какие-нибуть pic-specific вопросы - постараемся решить общими усилиями (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
AndreyM
сообщение 29.5.2012, 11:50
Сообщение #552


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 6
Регистрация: 28.5.2012
Вне форума
Авто: Nissan Tiida

Репутация:   0  


Ну вот так примерное, оцените.
Код
'*********************************************
'* Name       : Turn_629.bas                 *
'* Author     : AndreyM                      *
'* MCU        : PIC12F629                    *
'* OSC        : Internal, 4MHz               *
'* Date       : 29.05.2012                   *
'* Compiler   : PicBasic Pro 2.60            *
'* Description: Turn signal one-touch system *
'*********************************************
'      +5V - 1 -|Vdd   GND|- 8  - Ground
'  RightIn - 2 -|GP5   GP0|- 7  - Rear
'   LeftIn - 3 -|GP4   GP1|- 6  - RightOut
' + 10kOhn - 4 -|MCLR  GP2|- 5  - LeftOut
'*********************************************

' Set MCU & OSC - Internal, GP4 - I/O, GP5 - I/O
@ DEVICE pic12F629, INTRC_OSC_NOCLKOUT

DEFINE OSC 4                ' Internal Freq. 4 MHz
DEFINE PULSIN_MAX 10000     ' Change up to 65535 to increase delay after touch

' Variables                 ' Переменные
Left    VAR WORD            
Right   VAR WORD            
Flaf    VAR WORD            ' Флаг ЗХ

' I/O Ports                 ' Порты вход/выход
LeftIn   var GPIO.4        
LeftOut  var GPIO.2
RightIn  Var GPIO.5
RightOut var GPIO.1
Haz      Var GPIO.0

' Constants                 ' Константы
PulseTime    con 2800       ' Delay time = 3,2s - 3...4 pulses Задержка времени
PulseTimeIn  con 350        ' Время включения поворотников
PulseTimeOut con 350        ' Время выключения поворотников

TRISIO = %111001            ' RA1, RA2 - Output настройка выходов
CMCON  = %00000111          ' Comparators - Off Сомпаратор выключен
GPIO = 0                    ' All ports - Low На всех портах низкий уровень

CLEAR                       ' Clear all variables Очистка всех переменных
pause 500                   ' Start-time pause Время старта

' ##################################
' ### Main part, working forewer ### Основная часть программы
' ##################################

main:                        ' Основная программа
PULSIN RightIn, 1, Right     ' Положение рычага правого поворотника
  if Right < 8 Then          ' Если нажат
     gosub RightTurn         ' Включить правый поворотник
  Endif                      ' Перейти на выполнение RightTurn в подпрограмме

PULSIN LeftIn, 1, Left       ' Положение рычага левого поворотника
  if Left < 8 Then           ' Если нажат
     gosub LeftTurn          ' Включить левый поворотник
  Endif                      ' Перейти на выполнение LeftTurn в подпрограмме

  If Haz = 1 then            ' Если рычаг селектора передач в положении "R"
     gosub hazard            ' Включить аварийку (оба поворотника)
  endif                      ' Перейти на выполнение hazard в подпрограмме

  If Flag = 1 then           ' Проверка флага ЗХ
    Flag = 0                 ' Сброс флага при выключении ЗХ
  
GOTO main                    ' Возвратиться к началу программы если ничто не совпало
' ### End of main part ###   ' Конец основной части

' ###################
' ### Subroutines ###        ' Подпрограммы
' ###################

RightTurn:                   ' Подпрограмма включения правого поворотника
  RightOut = 1               ' Включить поворотник
  pause PulseTime            ' Оставить его включенным на 3,2 сек.
  RightOut = 0               ' Выключить поворотник
  Flag = 0                   ' Сбросить флаг ЗХ
lloop:                       ' Проверка положения рычага переключателя
PULSIN RightIn, 1, Right     ' Если рычаг все еще включен
  if Right < 8 Then          ' Ждать до тех пор,
     goto lloop              ' пока не выключится
  Endif                      ' Как только выключился
PAUSE 100                    ' Селать короткую паузу
return                       ' И вернуться в основную программу Main

LeftTurn:                    ' Подпрограмма включения левого поворотника
  LeftOut = 1                ' Включить поворотник
  pause PulseTime            ' Оставить его включенным на 3...4 сек.
  LeftOut = 0                ' Выключить поворотник
  Flag = 0                   ' Сбросить флаг ЗХ
rloop:                       ' Проверка положения рычага переключателя
PULSIN LeftIn, 1, Left       ' Если рычаг все еще включен
  if Left < 8 Then           ' Ждать о тех пор,
     goto rloop              ' пока не выключится
  Endif                      ' Как только выключился
PAUSE 100                    ' Селать короткую паузу
return                       ' И вернуться в основную программу Main

hazard:                      ' Подпрограмма включения аварийки
    If Flag = 0 then         ' Проверка первого цикла
      pause 1000             ' Пауза 1 сек.
      Flag = 1               ' Установка флага ЗХ
    endif                    
  RightOut = 1               ' Включить одновременно правый
  LeftOut  = 1               ' и левый поворотники
  pause PulseTimeIn          ' Оставить их включенными на 0,35 мс
  RightOut = 0               ' Выключить одновременно правый
  LeftOut  = 0               ' и левый поворотники
  pause PulseTimeOut         ' Выключить их на 0,35 мс
return                       ' И вернуться в основную программу

        END ' ***** End of Program *****

Алгоритм сменил.
0 проверять не стал.
Ставлю цикл ЗХ: пауза - включил - выключил -возврат в Main.
Если поворотник R или L включился - включается поворотник и сбрасывается флаг ЗХ.
Если поворотник не включали - снова включается цикл только уже без паузы: включил - выключил -возврат в Main.
Если всё выключили - сбрасывается флаг.
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
AndreyM
сообщение 29.5.2012, 12:04
Сообщение #553


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 6
Регистрация: 28.5.2012
Вне форума
Авто: Nissan Tiida

Репутация:   0  


Если всё верно при включении ЗХ включатся R и L поворотники через 1 с и будут моргать с периодом 0,7с.
При включении любого поворотника он ключится не менее чем на 3-4 моргания.
При выключении поворотника, если ЗХ ещё включен, R и L поворотники включатся снова через 1 с.
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
SSh
сообщение 29.5.2012, 12:26
Сообщение #554


Технический Маньяк-Гуру
*******

Группа:
Технический Маньяк
Сообщений: 7049
Регистрация: 3.6.2009
Из: Армения
Вне форума
Авто: Lancer IX, AT

Репутация:   265  


На первый взгляд вроде все верно, вот только неизвестно как обстоят дела с синхронизацией. Т.е. в какой момент времени включаем поворотник? В начале моргания инициированного сигналом ЗХ, в середине импульса (0,7с) или ближе к концу? Не будет-ли этот сдвиг как-то влиять на работу - надо сидеть разбираться по графикам. Или проще - просто залить модифицированную прошивку и проверить (IMG:style_emoticons/default/smile.gif)


Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
AndreyM
сообщение 29.5.2012, 15:23
Сообщение #555


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 6
Регистрация: 28.5.2012
Вне форума
Авто: Nissan Tiida

Репутация:   0  


А может не стоит синхронизировать?
У нас есть время 4-х импульсов. Делим на 4. Получаем время одног импульса. Вот и время цикла.
Код
'*********************************************
'* Name       : Turn_629.bas                 *
'* Author     : AndreyM                      *
'* MCU        : PIC12F629                    *
'* OSC        : Internal, 4MHz               *
'* Date       : 29.05.2012                   *
'* Compiler   : PicBasic Pro 2.60            *
'* Description: Turn signal one-touch system *
'*********************************************
'      +5V - 1 -|Vdd   GND|- 8  - Ground
'  RightIn - 2 -|GP5   GP0|- 7  - Rear
'   LeftIn - 3 -|GP4   GP1|- 6  - RightOut
' + 10kOhn - 4 -|MCLR  GP2|- 5  - LeftOut
'*********************************************

' Set MCU & OSC - Internal, GP4 - I/O, GP5 - I/O
@ DEVICE pic12F629, INTRC_OSC_NOCLKOUT

DEFINE OSC 4                ' Internal Freq. 4 MHz
DEFINE PULSIN_MAX 10000     ' Change up to 65535 to increase delay after touch

' Variables                 ' Переменные
Left    VAR WORD            
Right   VAR WORD            
Flaf    VAR WORD            ' Флаг ЗХ

' I/O Ports                 ' Порты вход/выход
LeftIn   var GPIO.4        
LeftOut  var GPIO.2
RightIn  Var GPIO.5
RightOut var GPIO.1
Haz      Var GPIO.0

' Constants                 ' Константы
PulseTime    con 2800       ' Задержка времени = 3,2s - 4 импульса
PulseTimeZH  con 700        ' Время включения ЗХ (PulseTime / 4)

TRISIO = %111001            ' RA1, RA2 - Output настройка выходов
CMCON  = %00000111          ' Comparators - Off Сомпаратор выключен
GPIO = 0                    ' All ports - Low На всех портах низкий уровень

CLEAR                       ' Clear all variables Очистка всех переменных
pause 500                   ' Start-time pause Время старта

' ##################################
' ### Main part, working forewer ### Основная часть программы
' ##################################

main:                        ' Основная программа
PULSIN RightIn, 1, Right     ' Положение рычага правого поворотника
  if Right < 8 Then          ' Если нажат
     gosub RightTurn         ' Включить правый поворотник
  Endif                      ' Перейти на выполнение RightTurn в подпрограмме

PULSIN LeftIn, 1, Left       ' Положение рычага левого поворотника
  if Left < 8 Then           ' Если нажат
     gosub LeftTurn          ' Включить левый поворотник
  Endif                      ' Перейти на выполнение LeftTurn в подпрограмме

  If Haz = 1 then            ' Если рычаг селектора передач в положении "R"
     gosub hazard            ' Включить аварийку (оба поворотника)
  endif                      ' Перейти на выполнение hazard в подпрограмме

  If Flag = 1 then           ' Проверка флага ЗХ
    Flag = 0                 ' Сброс флага при выключении ЗХ
  
GOTO main                    ' Возвратиться к началу программы если ничто не совпало
' ### End of main part ###   ' Конец основной части

' ###################
' ### Subroutines ###        ' Подпрограммы
' ###################

RightTurn:                   ' Подпрограмма включения правого поворотника
  RightOut = 1               ' Включить поворотник
  pause PulseTime            ' Оставить его включенным на 3,2 сек.
  RightOut = 0               ' Выключить поворотник
  Flag = 0                   ' Сбросить флаг ЗХ
lloop:                       ' Проверка положения рычага переключателя
PULSIN RightIn, 1, Right     ' Если рычаг все еще включен
  if Right < 8 Then          ' Ждать до тех пор,
     goto lloop              ' пока не выключится
  Endif                      ' Как только выключился
PAUSE 100                    ' Селать короткую паузу
return                       ' И вернуться в основную программу Main

LeftTurn:                    ' Подпрограмма включения левого поворотника
  LeftOut = 1                ' Включить поворотник
  pause PulseTime            ' Оставить его включенным на 3...4 сек.
  LeftOut = 0                ' Выключить поворотник
  Flag = 0                   ' Сбросить флаг ЗХ
rloop:                       ' Проверка положения рычага переключателя
PULSIN LeftIn, 1, Left       ' Если рычаг все еще включен
  if Left < 8 Then           ' Ждать о тех пор,
     goto rloop              ' пока не выключится
  Endif                      ' Как только выключился
PAUSE 100                    ' Селать короткую паузу
return                       ' И вернуться в основную программу Main

hazard:                      ' Подпрограмма включения аварийки
    If Flag = 0 then         ' Проверка первого цикла
      pause 1000             ' Пауза 1 сек.
      Flag = 1               ' Установка флага ЗХ
    endif                    
  RightOut = 1               ' Включить одновременно правый
  LeftOut  = 1               ' и левый поворотники
  pause PulseTimeZH          ' Оставить их включенными на 0,7 мс
  RightOut = 0               ' Выключить одновременно правый
  LeftOut  = 0               ' и левый поворотники
return                       ' И вернуться в основную программу

        END ' ***** End of Program *****

Компилируйте, прошивайте, пробуйте, отписывайтесь.
У меня не на чем. Даже программатора пока нет.
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
AndreyM
сообщение 1.6.2012, 9:25
Сообщение #556


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 6
Регистрация: 28.5.2012
Вне форума
Авто: Nissan Tiida

Репутация:   0  


Вопрос к SSh
Кусок Вашего кода:
Код
main:                       ' Основная программа
PULSIN RightIn, 1, Right    ' Положение рычага правого поворотника
  if Right < 8 Then         ' Если нажат
     gosub RightTurn        ' Включить правый поворотник
  Endif

PULSIN LeftIn, 1, Left      ' Положение рычага левого поворотника
  if Left < 8 Then          ' Если нажат
     gosub LeftTurn         ' Включить левый поворотник
  Endif

  If Haz = 1 then           ' Если рычаг селектора передач в положении "R"
     PAUSE 1000             ' Подождать секунду
       IF Haz = 1 THEN      ' Если все еще в этом положении
          gosub hazard      ' Включить аварийку (оба поворотника)
       ENDIF
  endif

GOTO main                     ' Возвратиться к началу программы

Интересует вопрос.
Например нажат правый поворотник. По "Endif" мы сразу уходим в выполнение подпрограммы или продолжается проверка левого поворотника и заднего хода?
Идея какая. По данному коду условия проверяются последовательно все - правый/левый/ЗХ. В таком случае, если сначала была включена подпрограмма поворотников, мы сами её скидываем на ЗХ.
Так вот, сначала ставим проверку ЗХ, потом поворотников - ЗХ/правый/левый.
Если включен одновременно ЗХ и любой и поворотников то подпрограмма "gosub hazard" в любом случае у нас поменяется на обработку поворотников.
И ничего больше в Вашей программе менять не надо.
Код
main:                       ' Основная программа
  If Haz = 1 then           ' Если рычаг селектора передач в положении "R"
     PAUSE 1000             ' Подождать секунду
       IF Haz = 1 THEN      ' Если все еще в этом положении
          gosub hazard      ' Включить аварийку (оба поворотника)
       ENDIF
  endif

PULSIN RightIn, 1, Right    ' Положение рычага правого поворотника
  if Right < 8 Then         ' Если нажат
     gosub RightTurn        ' Включить правый поворотник
  Endif

PULSIN LeftIn, 1, Left      ' Положение рычага левого поворотника
  if Left < 8 Then          ' Если нажат
     gosub LeftTurn         ' Включить левый поворотник
  Endif

GOTO main                     ' Возвратиться к началу программы
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
set_terry
сообщение 18.7.2012, 16:52
Сообщение #557


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 12
Регистрация: 24.3.2009
Из: Киев
Вне форума


Репутация:   0  


Посмотрел схему. Как будет вести себя бортовая электроника в начальный момент - в момент поворота рычажка и соответственно подачи напряжения на схему. Будет промаргивание аварийкой?
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
SSh
сообщение 18.7.2012, 17:09
Сообщение #558


Технический Маньяк-Гуру
*******

Группа:
Технический Маньяк
Сообщений: 7049
Регистрация: 3.6.2009
Из: Армения
Вне форума
Авто: Lancer IX, AT

Репутация:   265  


В момент подачи напряжения (включение зажигания) аварийка подмигивает. Типа как-бы тест. В момент поворота рычага - нет, срабатывает только соотв. поворотник.


Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
set_terry
сообщение 18.7.2012, 17:40
Сообщение #559


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 12
Регистрация: 24.3.2009
Из: Киев
Вне форума


Репутация:   0  


Цитата(SSh @ 18.7.2012, 17:09) *
В момент подачи напряжения (включение зажигания) аварийка подмигивает. Типа как-бы тест. В момент поворота рычага - нет, срабатывает только соотв. поворотник.

Понял, подмигивание есть. Поворот рычага, это я имел ввиду поворот ключа в замке ))
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
Titus
сообщение 18.7.2012, 17:49
Сообщение #560


Don Amadeus
*******

Группа:
Главные администраторы
Сообщений: 29954
Регистрация: 19.2.2009
Из: Russia, Sevastopol
Вне форума
Авто: Lancer IX-1.6 MT Turbo, Honda Accord IX-2.4 AT Executive.

Репутация:   466  


Есть, но оно не раздражает, даже прикольно (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post

44 страниц V  « < 26 27 28 29 30 > » 
Reply to this topicStart new topic
18 чел. читают эту тему (гостей: 18, скрытых пользователей: 0)
Пользователей: 0

 



Быстрый заказ, позвонить +7-978-708-85-73
Дроссель Amadeus Productions. Быстрый заказ по телефону.
(Viber, WhatsApp, Telegram)
Amadeus Productions Дроссельный узел на Lancer IX 1.6 (4G18), 2.0 (4G63) и другие моторы
Ремкомплект РХХ на Mitsubishi Lancer IX, 1.6 (4G18), MD619857, 1450A116
Облегченный маховик на 1.6 (4G18) и другие моторы
Облегченные шкивы на 1.6 (4G18) и другие моторы
One-touch или "Ленивые поворотники"