Dzień dobry,
Od jakiegoś czasu przymierzam się do budowy urządzenia rozpoznającego barwy.
Posiadam czujnik koloru TCS3200D z matrycą 8x8 fotodiod. Na każde 16 fotodiod przypada odpowiednio filtr koloru zielonego, niebieskiego, czerwonego oraz 16 fotodiod bez filtra. Na wyjściu modułu czujnika pojawia się sygnał o częstotliwości zależnej od intensywności oświetlenia badanego obiektu. Za pomocą 4 pinów konfiguracyjnych modułu, (poprzez podanie stanu wysokiego/niskiego) ustala się, której barwy częstotliwość chcemy mierzyć (filtr barwy zielonej, niebieskiej, czerwonej lub bez żadnego filtra).
Udało mi się już napisać program w języku Bascom, który za pomocą TIMERA dokonuje pomiaru częstotliwości sygnału dla barwy R, G, B i prezentuje je na wyświetlaczu. Problem polega na tym, że na wyświetlaczu docelowo chcę mieć kod html barwy, która odpowiada wszystkim trzem wartościom mierzonej częstotliwości. Aktualnie mój wyświetlacz wygląda tak: R=12 B=7 G=10 C=15. Są to (o ile mój program działa poprawnie) wartości częstotliwości w kHz odpowiednio dla barw R,G i B. C oznacza częstotliwość dla konfiguracji pinów bez filtra.
Nie wiem czy wystarczająco jasno przedstawiłem swój problem, więc jeszcze jeden przykład.
Gdy zakryję całkowicie matrycę czujnika układ mierzy intensywność barwy czarnej (bo jest całkowicie ciemno). Na wyświetlaczu są wartości równe 0. Ja zamiast tych wartości potrzebuje napis : #000000, co odpowiada barwie czarnej w html.
Czy da się programowo stworzyć tego typu konwerter dla większej ilości barw? Jeśli tak, to w jaki sposób?
Od jakiegoś czasu przymierzam się do budowy urządzenia rozpoznającego barwy.
Posiadam czujnik koloru TCS3200D z matrycą 8x8 fotodiod. Na każde 16 fotodiod przypada odpowiednio filtr koloru zielonego, niebieskiego, czerwonego oraz 16 fotodiod bez filtra. Na wyjściu modułu czujnika pojawia się sygnał o częstotliwości zależnej od intensywności oświetlenia badanego obiektu. Za pomocą 4 pinów konfiguracyjnych modułu, (poprzez podanie stanu wysokiego/niskiego) ustala się, której barwy częstotliwość chcemy mierzyć (filtr barwy zielonej, niebieskiej, czerwonej lub bez żadnego filtra).
Udało mi się już napisać program w języku Bascom, który za pomocą TIMERA dokonuje pomiaru częstotliwości sygnału dla barwy R, G, B i prezentuje je na wyświetlaczu. Problem polega na tym, że na wyświetlaczu docelowo chcę mieć kod html barwy, która odpowiada wszystkim trzem wartościom mierzonej częstotliwości. Aktualnie mój wyświetlacz wygląda tak: R=12 B=7 G=10 C=15. Są to (o ile mój program działa poprawnie) wartości częstotliwości w kHz odpowiednio dla barw R,G i B. C oznacza częstotliwość dla konfiguracji pinów bez filtra.
Nie wiem czy wystarczająco jasno przedstawiłem swój problem, więc jeszcze jeden przykład.
Gdy zakryję całkowicie matrycę czujnika układ mierzy intensywność barwy czarnej (bo jest całkowicie ciemno). Na wyświetlaczu są wartości równe 0. Ja zamiast tych wartości potrzebuje napis : #000000, co odpowiada barwie czarnej w html.
Czy da się programowo stworzyć tego typu konwerter dla większej ilości barw? Jeśli tak, to w jaki sposób?
