Farbsensor TCS 3200 an K8055:
Schaltplan
|
||
Schaltplan |
Fotos
Bascom Quellcode für ATmega 8
'*********************************************************************** 'Farbsensor '10.06.2012 'www.freggelweb.de '*********************************************************************** $regfile = "m8def.dat" $crystal = 3686400 $baud = 9600 $hwstack = 100 $swstack = 100 $framesize = 100 'Rechteck- Signal von TCS 3200 Config Portd.4 = Input Portd.4 = 1 Config Portc = Output Farbe Alias Portc Portc = 0 Config Portb = Output Farbew Alias Portb Portb = 0 'Counter Config Timer0 = Counter , Edge = Falling On Timer0 Timer0_isr Enable Timer0 'jede Sekunde Config Timer1 = Timer , Prescale = 256 Const Timer1_startwert = 51043 Timer1 = Timer1_startwert On Timer1 Timer1_isr Enable Timer1 Enable Interrupts 'Variablen Dim Ueberlaufzaehler As Long Dim Impulse As Long Do Select Case Impulse '!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! '!!! !!! '!!! für n und m jeweilige Grenzwerte einsetzen !!! '!!! Werte können mit HTerm ermittelt werden !!! '!!! !!! '!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Case n To m : Print "weiss" ; Impulse Portc = &B000011 Portb = &B000000 Case n To m: Print "gelb" ; Impulse Portc = &B000111 Portb = &B000000 Case n To m: Print "rot" ; Impulse Portc = &B001111 Portb = &B000000 Case n To m: Print "blau" ; Impulse Portc = &B011111 Portb = &B000000 Case n To m: Print "schwarz" ; Impulse Portc = &B111111 Portb = &B000000 Case Else : Print "error" ; Impulse Portc = &B111111 Portb = &B000011 End Select Waitms 100 Loop End 'nach 256 Impulsen Timer0_isr: Incr Ueberlaufzaehler Return Timer1_isr: Timer1 = Timer1_startwert Ueberlaufzaehler = Ueberlaufzaehler * 255 Impulse = Ueberlaufzaehler + Timer0 Ueberlaufzaehler = 0 Timer0 = 0 ReturnHTerm
Wertzuordnung
Analogwert von K8055 | Farbe |
1-4 | weiß |
5-8 | gelb |
12-15 | rot |
28-30 | blau |
58-62 | schwarz |
181-185 | anderer Wert (Rest/ "Error") |
weitere Informationen zur Ansteuerung, Programmierung (VB, LabVIEW), etc.
Farbsortierung von Lego Steinen
Ich kann keinerlei Haftung für die Schaltungen übernehmen und auch keine Funktionsfähigkeit garantieren. Der Nachbau und Einsatz der hier veröffentlichten Schaltungen erfolgt auf eigene Gefahr. Ich übernehme keinerlei Garantie. Die VDE-Vorschriften sind zu beachten.