Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

Hoe bepalen welke flank het eerste is ?

Pagina: 1
Acties:

  • Xqlusive
  • Registratie: Oktober 2003
  • Laatst online: 10:35
Ik heb 2 signalen waarvan ik wil bepalen welk signaal het eerste hoog wordt.

Het uitgangssignaal moet hoog worden als signaal 1 het eerste hoog is, het uitgangssignaal moet laag worden/blijven als signaal 2 als eerste hoog is. Als beide signalen laag zijn moet het uitgangssignaal laag zijn.

Ik zat zelf in de richting van flip-flops en latches te denken, maar het is al weer een tijd geleden dat ik hiermee bezig ben geweest. Heeft iemand van jullie een idee hoe ik dit kan maken met digitale logica ?

I1 I2 U1
1 0 1 (ingang 1 hoog, ingang 2 nog laag, dan uitgang hoog)
1 1 1 (ingang 2 ook hoog, maar later dan 1, dan uitgang hoog)

0 0 0 (beide ingangen laag, uitgang laag)
0 1 0 (ingang 2 eerst hoog, dan uitgang laag)
1 1 0 (ingang 1 hoog, maar later dan 2, dan uitgang laag)

  • Sprite_tm
  • Registratie: September 2002
  • Laatst online: 29-10 06:07

Sprite_tm

Semi-Chinees

Kan je ons wat meer info geven over waar je het precies voor wilt gebruiken?

Relaxen und watchen das blinkenlichten. | Laatste project: Ikea Frekvens oog


  • Xqlusive
  • Registratie: Oktober 2003
  • Laatst online: 10:35
Sprite_tm schreef op dinsdag 13 maart 2007 @ 12:05:
Kan je ons wat meer info geven over waar je het precies voor wilt gebruiken?
Uiteraard wil ik wel wat meer info geven.

Het is voor mijn project waarbij ik botverschuivingen wil meten met behulp van ultrageluid.
Van de ontvangen en verzonden sinussen maak ik een blokgolf met behulp van nuldoorgang detectors. Deze 2 signalen AND ik met elkaar zodat ik de faseverschuiving heb. Het enige probleem is nog dat ik nu dus niet weet naar welke kant de verschuiving gaat. De verdere berekeningen gebeuren in een PIC, daarom leek het me makkelijk om met 1 signaal aan te geven of de faseverschuiving naar links of rechts is om daar mijn berekening op aan te passen.
Ik heb dus 2 blokgolven in fase verschoven waarvan ik wil weten welke flank het eerst hoog wordt.

EDIT: even snel een hersenspinsel gemaakt, zou dit werken ?

Afbeeldingslocatie: http://img90.imageshack.us/img90/9507/ideetjeko9.th.jpg

Let niet op mijn paint skills, een touchpad en paint gaan niet samen....
Die 2 stippen voor de AND poort zijn inverters.

FF1 zal worden geset als signaal 2 laag is, hierdoor zal FF2 ook geset worden. Als signaal 2 hoog word, zal FF1 gereset worden, maar FF2 blijft hoog omdat hij niet gereset wordt. Als nu beide signalen laag worden komt er een reset op FF2, waardoor het uitgangssignaal laag wordt.

Als nu eerst signaal 2 hoog wordt, dan word de uitgang van FF1 nooit hoog, hierdoor de uitgang van FF2 ook niet.

Klopt dit zo ongeveer ?

[ Voor 30% gewijzigd door Xqlusive op 13-03-2007 12:35 ]


  • sebastius
  • Registratie: September 2000
  • Laatst online: 18-11 21:59

sebastius

Laten we lekker link gaan doen

Waarom doe je die AND niet gewoon in je PIC? Dan ben je er toch? Dan kun je softwarematig alles uitrekenen :)

  • Xqlusive
  • Registratie: Oktober 2003
  • Laatst online: 10:35
sebastius schreef op dinsdag 13 maart 2007 @ 16:58:
Waarom doe je die AND niet gewoon in je PIC? Dan ben je er toch? Dan kun je softwarematig alles uitrekenen :)
De PIC is hier eigenlijk te langzaam voor....
Na de AND operatie word het signaal nog een keer geAND met een 11Mhz signaal om er pulsjes van ongeveer 90ns van te maken. Deze pulsjes zijn dan met de asynchrone timer van de PIC te tellen. Het word zo dus nauwkeuriger dan dat ik het met de PIC meet, deze heeft een snelheid van "maar" 200 ns.

Ik heb nu het volgende schema wat redelijk werkt, het geeft een constant laag signaal als ingang 2 voorloopt en een pulserend hoog signaal als deze achterloopt.

Afbeeldingslocatie: http://img260.imageshack.us/img260/9823/flipfloppersnv8.th.jpg

  • StapelPanda
  • Registratie: Februari 2005
  • Laatst online: 19-11 11:29

StapelPanda

PB0MV

Xqlusive schreef op dinsdag 13 maart 2007 @ 18:44:
[...]


De PIC is hier eigenlijk te langzaam voor....
Na de AND operatie word het signaal nog een keer geAND met een 11Mhz signaal om er pulsjes van ongeveer 90ns van te maken. Deze pulsjes zijn dan met de asynchrone timer van de PIC te tellen. Het word zo dus nauwkeuriger dan dat ik het met de PIC meet, deze heeft een snelheid van "maar" 200 ns.

Ik heb nu het volgende schema wat redelijk werkt, het geeft een constant laag signaal als ingang 2 voorloopt en een pulserend hoog signaal als deze achterloopt.

[afbeelding]
200ns? is dit met alle andere verwerking erbij ofzo.
Kan je het niet in een interrupt zetten met een IOC? dit zou volgens mij snel genoeg moeten zijn, but correct me if i'm wrong

  • Fish
  • Registratie: Juli 2002
  • Niet online

Fish

How much is the fish

pak gewoon een data flip flop die klokt op een positieve flank

sluit er een pootje aan op D en de andere op C

op het moment dat een singaal op de klok hoog word neem ej dus een moment opname van D

dus als Q hoog is loopt singaal op D voor op C
als Q laag is loopt je singaal C voor op D

geen fancy processors nodig .. standaard oplosing voor rigtingbepaling in muizen met bal etc.

[ Voor 3% gewijzigd door Fish op 13-03-2007 23:22 ]

Iperf


  • Xqlusive
  • Registratie: Oktober 2003
  • Laatst online: 10:35
fish schreef op dinsdag 13 maart 2007 @ 23:20:
pak gewoon een data flip flop die klokt op een positieve flank

sluit er een pootje aan op D en de andere op C

op het moment dat een singaal op de klok hoog word neem ej dus een moment opname van D

dus als Q hoog is loopt singaal op D voor op C
als Q laag is loopt je singaal C voor op D

geen fancy processors nodig .. standaard oplosing voor rigtingbepaling in muizen met bal etc.
Super ! Werkt perfect !
Had al verwacht dat het zoiets simpels zou zijn, maar kom der maar es op...
Nu is het eerst veel PIC proggen en simuleren, als er weer vragen zijn van mijn kant, dan open ik wel weer een topic....

Heel erg bedankt voor de inbreng allemaal !
Pagina: 1