Ich habe eine Frage: Wie kann ich den TCS230 an meinen PIC 16F84A anschließen? Wie muss ich die Ein- und Ausgänge setzen? Die Farbe soll dann auf einem LCD oder 7-Segment angezeigt werden. Danke für die Hilfe!
des ding wandelt licht in eine frequenz um also wirst du schonmal einen frequenzzähler benötigen (schau mal bei sprut) und als weiteren tip empfehle ich das studium des datenblatts und die suche nach app-notes ich weiss jetzt net wie gross der code für den frequenzzähler is aber könnte eng werden je nach dem wieviel schnickschnack du noch auf dem display anzeigen lassen willst (300 worte code für display)
Nach Frequenzzählern habe ich mich informiert. Nur wird nicht ganz klar, wie man den Quellcode programmieren soll?
@ Jörg Du solltest Deine Fragen etwas konkreter formulieren, sonst kannst Du nicht geholfen werden (frei nach Verona...) Was ist Dir nicht ganz klar? Beherrschst Du PIC-Assembler? Hast Du das Datenblatt des PIC16F84A studiert (weshalb überhaupt DER Typ, er ist ziemlich veraltet)? Ist Dir klar, wie der Sensor angesteuert werden muss?
Also, Schritt für Schritt: o Du hast MPLAB? o Willst Du in Assembler oder C oder... programmieren? o Hast Du einen Programmer oder Debugger? o Welchen? o Nochmals: muss es der PIC16F84A sein? Weshalb? o Mit welchen PICs hast Du Dich in den letzten drei Jahren beschäftigt? o Was hast Du damit gemacht? o Hast Du das Datenblatt des PIC16F84A studiert? o Ist Dir klar, wie der Sensor angesteuert werden muss?
Also ich würde den Tnread gerne noch fortführen. Allerdings verwende ich keinen PIC 16F84A (will auch nichts ausgeben) sondern ATMEGA8, das Programm soll in C geschrieben werden 1. "Wie muss ich ein und Ausgänge setzen?" Datenblatt sagt folgendes: S0 und S1 zum Frequenz teilen, 100% -> beide High MIt S2 und S3 wählst du den Farbfilter, beide High wäre dann die Reihe Dioden mit dem roten Farbfilter. negierten OE auf Masse, Rest dürfte Klar sein 2. Das Programm in C Hier hab ich auch meine Probleme und hätte mir Hilfe erhofft. Timer ist mir aus dem Datenblatt natürlich ein Begriff, habe aber keine Ahnung wie ich ihn als Counter nutze, ansteuere oder das richtige register wähle. Das Programm als Structogramm ist eiglich ganz einfach. Timer Starten bei der postiven Flanke und stoppen bei der negativen. (oder Impulse auf gewisste Zeit, bzw. benötigte Zeit auf bestimmte Anzahl von impulsen)
Ich weiß schon dass man die Faulheit nicht unbedingt unterstützen soll, aber vielleicht hat doch jemand Mitleid.
16bit Timer frei laufen lassen und Capture-Input verwenden, mit Interrupt oder ohne je nach Geschmack. Die Differenz zweier aufeinander folgender Capture Werte berechnen, und fertig ist die Frequenz (naja, der Kehrwert davon). Den Frequenzbereich vom Sensor und/oder den Prescaler vom Timer so wählen, dass die Zeit zwischen den Captures auch bei maximaler Frequenz nicht zu klein und damit ungenau wird, aber am anderen Ende der Skala auch nicht den Zählbereich des Timers überschreitet. Will man gleichermassen Mondlicht und Sonneneinstrahlung rauskriegen, muss man ggf. Frequenzbereich oder Prescaler bedarfsgemäss umschalten.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.