logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak przełączać sygnały wtryskiwaczy na jednym pinie Atmega328?

piotrekcrash 18 Lut 2012 13:16 1558 13
REKLAMA
  • #1 10562567
    piotrekcrash
    Poziom 12  
    Witam!

    Buduję komputer pokładowy na Atmedze328 program pisany w Arduino.

    Chciałbym zliczać impulsy wtryskiwacza benzyny i gazu na jednym pinie procesora.

    Oba sygnały są "masą"

    Jak mogę rozwiązać mój problem jakiś prosty układ który będzie mi przełączał źródła tego sygnału i nie będzie wprowadzał żadnych zakłóceń tegoż sygnału?

    Z góry dziękuję za pomoc.
  • REKLAMA
  • #2 10562614
    xamrex
    Poziom 28  
    Oba trwają taką samą ilość czasu?
  • #3 10563482
    Konto nie istnieje
    Konto nie istnieje  
  • REKLAMA
  • #4 10563562
    piotrekcrash
    Poziom 12  
    1. pracują oba ale w jednym momencie potrzebuje używać tylko jednego z nich
    2. tako dokładnie wtryskiwacz daje 0V
    3. dwa wolne piny na pewno się znajdą

    Pozdrawiam;)


    AD1.

    Oba wtryskiwacze działają cały czas ale potrzebuję liczyć czas otwarcia jednego.
    A kiedy zechcę czytać z drugiego to przełączam na drugi i liczę z drugiego.
  • REKLAMA
  • Pomocny post
    #5 10563611
    Konto nie istnieje
    Konto nie istnieje  
  • #6 10564084
    piotrekcrash
    Poziom 12  
    Wielkie dzięki;) Pomógł poszło do Ciebie.

    Rozumiem, że dając stan niski na Select1 lub Select2 wybieram z którego źródła będę pobierał sygnał?

    Robiłeś może taki układ kiedyś jakiego układu tego "transoptora" (chyba?) użyłbyś w tym projekcie?

    Pozdrawiam
  • #7 10564144
    Konto nie istnieje
    Konto nie istnieje  
  • #8 10564273
    piotrekcrash
    Poziom 12  
    Zakładając, że się nie mylę to mój silnik kręci się do 8tys obr/min

    jedno otwarcie jednego wtryskiwacza na każdy obrót

    8000 obr/min to ~ 134obr/sek

    Czyli spokojnie powinno wystarczyć.

    A co do napięcia to będę musiał pokombinować. dodam, że kiedy używałem sygnału tylko z jednego wtryskiwacza to wyglądało to tak i działało bez zarzutu:

    Jak przełączać sygnały wtryskiwaczy na jednym pinie Atmega328?
  • REKLAMA
  • #9 10564338
    Konto nie istnieje
    Konto nie istnieje  
  • #10 10564371
    piotrekcrash
    Poziom 12  
    No to rozwiązanie już wyglada faktycznie banalnie.

    Tylko ostatnie pytani czy tranzystory są wystarczająco szybkie - pytam bo nie orientuję się zupełnie w tej kwestii. Np BC547?

    Do tego sterowanie stanem wysokim i 4,7k między uC a Selectami?
  • #11 10564483
    Konto nie istnieje
    Konto nie istnieje  
  • #12 10564551
    michalko12
    Specjalista - Mikrokontrolery
    piotrekcrash napisał:
    jedno otwarcie jednego wtryskiwacza na każdy obrót


    Zasady działania silnika nie znasz, a za komputer do niego się bierzesz? ;)
  • #13 10565158
    Nawigator
    Poziom 33  
    Wpuść sygnały na oddzielne piny i wykorzystaj przerwania Pin Change Interrupts.
    W programie możesz je sobie przełączać i wykorzystywać jak Ci pasuje.
    Oczywiście jak masz wolne to można użyć INT0 i INT1.

    N.
  • #14 10567276
    piotrekcrash
    Poziom 12  
    Cytat:
    Zasady działania silnika nie znasz, a za komputer do niego się bierzesz?

    W takim razie mnie oświeć


    Używam właśnie INTów bo komputer już działa od dawna tyle, że jeden jest zajęty przez zliczanie impulsów z czujnika przejechanej drogi, a na drugim jest zliczanie czasu otwarcia wtryskiwacza dlatego chę zrobić ten przełącznik i tylko w programie wprowadzić odpowiednie zmiany.
REKLAMA