Der Nachfolger des WDR-Computerclub mit Wolfgang Back und Wolfgang Rudolph - ...und immer ein Bit übrigbehalten!


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: Frequenz einlesen verändern und wieder ausgeben Kategorie: Open-Micro/Open-Mini/Open-Midi/Open-Macro/Open-Maxi (von Georg - 13.11.2007 21:58)
 Als Antwort auf Re: Frequenz einlesen verändern und wieder ausgeben von Alex - 13.11.2007 18:10
Georg nutzt:  CC1-M-Unit V1.2/2.0
Hallo Alex
hier ein Beispiel:

' --- Betriebssystem konfigurieren ------------------------------------------
include "om.def"                       ' Definitionen fuer Betriebssystem
pullupa = 0       '&b00111101     ' Schaltet die internen Pull-Up-Widerstände ab
' --- Definitionen der Ports--------------------------------------------------
'define PWM_Port    port[1]      ' PWM-Port für den Lüfter
'                             port[2]      ' Anschluss RS232-Interface (für Testphase)
'                             port[6]      ' Dipschalter  'DEFINE DIP1 PORT[2]
' FREQ1                ' port[4]
'                             port[5]      ' Dipschalter  'DEFINE DIP2 PORT[5]
'                             port[2]      ' Dipschalter  'DEFINE DIP3 PORT[6]
' --- Definition der Variablen ----------------------------------------------
define tmp                 byte          ' Hilfsvariable ersatz für pwm BYTE
define PWMIn            byte

CONFIG2=&b01000000        'IRQEN im CONFIG2-Register des Kontrollers setzen
'INTERRUPT basicirq        'BASIC-Interruptroutine vereinbaren

FREQ=50                        ' Torzeit, bzw. Meßzeit für FREQ1: 1 Sekunde
KBIER=&b01001100          'FREQ1 zusätzlich an PORT[4]

'Programmschleife
pwm1_ein      ' Einschaltung PWM-Port1

#Loop

PWMIn = freq1

 Looktab FreqausgabeKennlinie0, PWMIN ,tmp  '
              pwm1 tmp
              pause 1

goto Loop

TABLE FreqausgabeKennlinie0 byte      
 0 0 0 0 0  0  1  1  2  3  4  5  6  8  9 10 12 13 14 15 16 17 18 19 20 21 22 23 25 27 29 31 33 35 37 39
TABEnD

' ---------------------------------------------------------------------------
' --- PWM-Routinen für Port1 ----------------------------------
' ---------------------------------------------------------------------------
' Hinweis
' Wenn Diese PWM-Routine eingeschaltet wird, dann kann nicht mehr auf die
' Serielle Schnittstelle zugegriffen werden. Nach abschalten dieser
' PWM-Routine steht die Serielle Schnittstelle wieder zur Verfügung.
' ---------------------------------------------------------------------------
TABLE pwm1_ein byte    ' PWM Port1 einschalten
  &h12 &h06
  &h1a &h20 &h18 &h20 &h3f &h26 &h3f &h27 &ha6 &h1a &hb7 &h25 &h1b &h20 &h81
TABEND
' ---------------------------------------------------------------------------
TABLE pwm1 byte        ' PWM Port1 setzten - Uebergabe als Argument
  &h12 &h06
  &had &h13 &ha1 &hfa &h25 &h03 &h10 &h25 &h81 &h5f &h48 &h59 &h48 &h59 &hbf &h26
  &hb7 &h27 &h11 &h25 &h81 &hae &h01 &h83
TABEND
' ---------------------------------------------------------------------------
TABLE pwm1_aus byte    ' PWM Port1 ausschalten
  &h12 &h06
  &h1a &h20 &h18 &h20 &h3f &h25 &h1b &h20 &h81
TABEND
' ---------------------------------------------------------------------------
end

Hier kurze Erklärung
bei diesem Beispiel wird die Frequenzzählung an an Port4 verfügbar gemacht. Die Meßzeit beträgt eine Sek. für deine Einstellung ---> je höher die Frequenz desto niedriger die Torzeit. Übergabe an die variable PWMIn. Im nächsten Schritt wird die gemessene Frequenz mit Looktab mit der Datentabelle verglichen und ein entsprechender ausgelesener Wert der variablen tmp zugewiesen und an die PWM ausgabe an Port 1 übergeben. Also wenn ich 7 Hz messe wird mir 1 Hz ausgegeben. Oder der Wert schaut in die Tabelle was an Pos 7 steht (beginnend mit Null ---> 0 1 2 3 4 5 6 7 8 9 10 11 usw. Die Messung ist mit der Torzeit veränderbar (255 stufen für Bytevariabele , mit Zusatzsoftwaremodul auch Wordvariabelen möglich 32000 Stufen) für die Ausgabe weis ichs nicht genauwas da geht bei mir reichte die Byte Variable. Man könnte auch die PWM auf Port2 legen und auf Port1 per Terminalprogramm die Messungen anzeigen lassen - so zum testen
Für die PWM-Ausgabe können dir die Profis hier sicher mehr sagen.
Oder einen separaten BAustein für die Freq Ausgabe nutzen.

Ich hoffe ich konnte dir mit meinen Worten weiterhelfen - sonst schreib nochmal

Gruß
Georg




> Hallo Georg,
>
> ja, ich benötige da noch Hilfe.
> Für einen Lösungsvorschlag wäre ich sehr dankbar.
>
> Gruß
> Alex
>
>
> > Hallo Alex,
> > sorry das ich jetzt erst schreibe ----- ist die Frage noch aktuell ??????
> > Fequenzbereich von 0 - 2 bzw 3 kHz... mit 1 Hz Auflösung  also 2000 oder 3000 Einzelschritte der Messung. ????!!!!!!
> >
> >
> > Gruß
> > Georg
> >
> >
> >
> >
> >
> >
> > > Hallo Georg,
> > >
> > > Fequenzbereich von 0 - 2 bzw 3 kHz...
> > > An einer Tachowelle 5V Pegel nehme ich das Signal ab und
> > > möchte es korrigiert +/- 30% wieder abgeben,
> > > um den Richtigen Wert angezeigt zu bekommen.
> > >
> > > Original: Signal vom Signalgeber zum Tacho.
> > > Neu:      Signal vom Signalgeber zur Open Micro/Mini und dann zum Tacho.
> > >
> > > Gruß
> > > Alex
> > >
> > > ----------------------------------------------------------------------------------------------------------------
> > > > Hallo Alex,
> > > >
> > > > welcher Frequenzbereich soll abgedeckt werden ?
> > > > Wo willst du messen ?? zu welchem Einsatzzweck ??
> > > >
> > > > Gruß
> > > > Georg
> > > >
> > > >
> > > > > Hallo
> > > > >
> > > > > könnte mir jemand sagen, wie ich mit der Open Micro/Mini eine Frequenz einlesen,
> > > > > ändern und auch wieder ausgeben kann?
> > > > > Wie groß darf die Frquenz beim einlesen sein?
> > > > > Wie groß kann die Frquenz beim ausgeben sein?
> > > > >
> > > > > Hat jemand ein Beispiel, wie das in OCBASIC aussehen muss, um die Fequenz einzulesen,
> > > > > um den Wert der Fequenz zu ändern und wie die neue Frequenz auszugeben ist?
> > > > >
> > > > >
> > > > > Vielen Dank
> > > > > Alex

 Antwort schreiben

Bisherige Antworten:

Re: Frequenz einlesen verändern und wieder ausgeben (von Bremus - 13.11.2007 22:00)
    Re: Frequenz einlesen verändern und wieder ausgeben (von Georg - 15.11.2007 16:08)
        Re: Frequenz einlesen verändern und wieder ausgeben (von Alex - 15.11.2007 17:27)
            Re: Frequenz einlesen verändern und wieder ausgeben (von Alex - 16.11.2007 13:43)
                Re: Frequenz einlesen verändern und wieder ausgeben (von Georg - 17.11.2007 14:54)