Ja stimmt ich werde jetzt 3 LEDS verbauen.
nun habe ich ein Problem ich will die Freuqenz mit einer Select case anweisung auswerten. klappt auch soweit nur ich kann keine bereiche von zahlen also zum beispiel 150 bis 200 sondern nur eine zahl also 150 eintragen. wie muss ich das schreiben?
habe es mit mit größer als und mit 150 to 200 versucht aber das geht beides nicht
die erste led geht jetzt bei 8000 an, die zweite bei 9000 und die dritte bei 10000. code kommt noch aber erst wenn er compiliert werden kann.
gruß marius
Edit: So der neue Schaltplan und der neue Code sind fertig:
Code:
#include <C:\cc5\16F84a.h>
#pragma config |= 0b.1111.1111.0010 // Prozessor-Typ definieren
void warten(void) //Timer auf eine ms einstellen
{
OPTION = 2;
TMR0 = 131;
while (TMR0);
}
void main(void) // Start des Hauptprogramms
{
TRISB = 0b.0000.0001; //Pin 0 ist Eingang , Pin 1 bis 7 ist Ausgang
PORTB = 0b.0000.0000;
char puls; //Frequenz Impulse Variable setzen
char lauf; // Durchläufe festhalten
bit rein @ PORTB.0; //Pin für Frequenz Input
bit unter @ PORTB.1; //Pin für erste LED
bit fast @ PORTB.2; //Pin für zweite LED
bit drauf @ PORTB.3; //Pin für die maximale Drehzahl
Sprungmarke:
//Abfrage an Port B
lauf=250;
while (lauf)
{
if (rein) ;
{
puls++ ;
}
warten();
lauf-- ;
}
puls=puls*4;
if (puls>133) ;
{
unter=1;
}
if (puls>150) ;
{
fast=1;
}
if (puls>167) ;
{
drauf=1;
}
puls=0;
goto Sprungmarke;
}
Lesezeichen