Witam, mam kłopoty z aplikacją fototranzystora, korzystając z atmegi8. Zastosowałem diodę IR oraz fototranzystor (taki typowy ze "szkłem" BPYP22) dodałem też doświadczalnie rezystory. Na płytce stykowej - zanim podłączyłem wyprowadzenie uC wystarczyły dużo mniejsze rezystory, po podłączeniu jak na obrazku, musiałem rezystory skorygować. Z logicznego punktu widzenia układ powinien działać.
[update: oczywiscie zapomniałem na obrazku napisać + 5V nad rezystorem 220Ohm]
Podczas pierwszego ze stanów dioda jest zasłonięta i fototranzystor przy pomocy odrobiny taśmy izolacyjnej na emiterze ma 0.35V (co jeśli dobrze zrozumiałem nie jest JESZCZE dla uC stanem logicznym 1 , właściwie takie napięcie jest nad rezystorem 10MOhm). Z takiego stanu przechodzimy do stanu w którym dioda IR oświetla fototranzystor - i daje on praktycznie całe zasilenia (~4,7V) na emiterze.
Niestety AVR nie wykrywa zmiany tego stanu na porcie.
(w skrócie - if(bit_is_set(PIND,0)){ migaj_diodami(); }
Próbowałem dać inne rezystory - tak żeby podczas 1 stanu było równe zero na Emiterze. I to się udało - jednak po przejsciu do 2 stanu , dostawałem niewiele ponad 0.1V. Dlatego stwierdziłem że wypróbuję rozwiązanie opisane wyżej.
Czy mój sposób "aplikacji" jest niepoprawny?
[update: oczywiscie zapomniałem na obrazku napisać + 5V nad rezystorem 220Ohm]
Podczas pierwszego ze stanów dioda jest zasłonięta i fototranzystor przy pomocy odrobiny taśmy izolacyjnej na emiterze ma 0.35V (co jeśli dobrze zrozumiałem nie jest JESZCZE dla uC stanem logicznym 1 , właściwie takie napięcie jest nad rezystorem 10MOhm). Z takiego stanu przechodzimy do stanu w którym dioda IR oświetla fototranzystor - i daje on praktycznie całe zasilenia (~4,7V) na emiterze.
Niestety AVR nie wykrywa zmiany tego stanu na porcie.
(w skrócie - if(bit_is_set(PIND,0)){ migaj_diodami(); }
Próbowałem dać inne rezystory - tak żeby podczas 1 stanu było równe zero na Emiterze. I to się udało - jednak po przejsciu do 2 stanu , dostawałem niewiele ponad 0.1V. Dlatego stwierdziłem że wypróbuję rozwiązanie opisane wyżej.
Czy mój sposób "aplikacji" jest niepoprawny?