Capteur de couleur principe:
TCS230 paquet de montage en surface SOIC 8 broches, sur une seule puce a 64 photodiodes. Ces diodes sont divisées en quatre types. 16 de la photodiode avec un filtre rouge; 16 photodiodes avec un filtre vert; 16 photodiodes avec un filtre bleu; les 16 autres sans filtre, peuvent toutes les informations optiques à travers. La puce de photodiode est décalée, il est possible que la non-uniformité du rayonnement incident, augmentant ainsi la précision de la reconnaissance des couleurs; d’autre part, la même couleur de la photodiode 16 est connectée en parallèle, uniformément distribuée dans le tableau de diodes, vous pouvez éliminer la couleur d’erreur de position. Travaillez par deux broches programmables pour sélectionner dynamiquement le filtre souhaité. Gamme de fréquence de sortie typique du capteur de 2Hz ~ 500 kHz, les utilisateurs peuvent également sélectionner deux broches programmables à 100%, 20% ou 2% du facteur d’échelle de sortie, ou mode de mise hors tension. Facteur d’échelle de sortie de sorte que la sortie du capteur peut être adaptée à différentes plages de mesure et augmente sa capacité d’adaptation. Par exemple, lorsque vous utilisez un compteur de fréquence à basse vitesse, vous pouvez choisir une petite valeur de mise à l’échelle que la fréquence de sortie TCS230 et le compteur correspondent.
Résumé:
1. Carte de circuit imprimé TCS3200 de puces importées avec le placage à l’or
2. TCS3200 est la version de mise à niveau TCS230, le mieux
3. Alimentation 3-5 v
4. Interférence anti-lumière
5. LED blanc, peut contrôler marche et arrêt.
6. Peut détecter la couleur de l’objet non lumineux
7. dimensions de la carte PCB: (L) 33mm * (W) 25mm
La procédure d’essai Simple est la suivante:
# Inclure <reg52.h>
# Définir un char non signé uchar
# Définir uint int non signé
Cycle d’utilisation//S0, S1 pour définir la sortie; sbit S0 = P1 ^ 0
Sbit S1 = P1 ^ 1;
Sbit S2 = P1 ^ 3;//S2, S3 est réglé pour considérer le motif de la lumière
Sbit S3 = P1 ^ 4;
Sbit OE = P1 ^ 2;//activer
Vide RS232_init ()
{
TMOD = 0X20;//minuterie 1 en mode 1
SCON = 0x50;
PCON = 0X80;//
TH1 = TL1 = 0XFF;//22.1184 M cristal, le débit en bauds est réglé à 115200
TR1 = 1;
TI = 0;
RI = 0;
}
Annuler send_char (uchar a)//envoyer des données
{
SBUF = un;
Alors que (TI = = 0);
TI = 0;
}
Uchar get_char ()//réception de données
{
Alors que (RI = = 0);
RI = 0;
Retour SBUF;
}
Uint color_display (uchar m)
{
Uint temps, a;
A = m;
TMOD = 0x61;//compteur 1, minuterie 0 fonctionne en mode 16 bits
TH0 = TL0 = 0;//commencer à compter à partir de zéro, le timing
TH1 = TL1 = 0;
S0 = 1;
S1 = 1;
S2 = m & 0x01;
S3 = m & 0x02;
OE = 0;
TR0 = TR1 = 1;
Alors que (TL1 <250);
TR1 = TR0 = 0;
OE = 1;
Temps = TH0 * 256 + TL0;
Retour (heure);
}
Vide main ()
{Uint temp;
RS232_init ();
OE = 1;
While (1)
{Temp = color_display (get_char ());
RS232_init ();
Send_char (temp/1000);
Send_char (temp % 1000/100);
Send_char (temp % 100/10);
Send_char (temp % 10);
}
}
Via le port série pour sélectionner le type de canaux de couleur, puis en raison des différentes couleurs correspondant à un temps différent (valeur de comptage du même), pour déterminer les différentes couleurs.