Dzień dobry,
Zbudowałem termometr cyfrowy oparty na układzie Atmega8 i czujniku DS18B20. Do tego podpięty jest wyświetlacz LCD. Termometr "pamięta" i wyświetla temperaturę maksymalną i minimalną z ostatnich 12 godzin.
Do tego wszystkiego podłączyłem diodę RGB tak jak na schemacie:
Zadaniem diody jest świecenie w zależności od temperatury, czyli jak jest temperatura ujemna to dioda ma świecić na niebiesko, jak jest bardzo gorąco to dioda ma świecić na czerwono itd.
Niestety nie mogę jej zmusić do prawidłowego działania. Dioda cały czas bez względu na temperaturę świeci na jeden kolor (niebiesko-zielony?). Nie wiem czy przyczyna leży w kodzie czy raczej w połączeniu do atmegi.
Dioda jest podłączona do wyprowadzeń PD0, PD1 i PD2.
Oto kod programu w Bascomie:
Na chwilę obecną cały układ działa na płytce stykowej i jest zasilany poprzez programator USBasp.
Jest to mój pierwszy projekt.
Jakich ewentualnie optymalizacji w kodzie programu można dokonać?
Zbudowałem termometr cyfrowy oparty na układzie Atmega8 i czujniku DS18B20. Do tego podpięty jest wyświetlacz LCD. Termometr "pamięta" i wyświetla temperaturę maksymalną i minimalną z ostatnich 12 godzin.
Do tego wszystkiego podłączyłem diodę RGB tak jak na schemacie:

Zadaniem diody jest świecenie w zależności od temperatury, czyli jak jest temperatura ujemna to dioda ma świecić na niebiesko, jak jest bardzo gorąco to dioda ma świecić na czerwono itd.
Niestety nie mogę jej zmusić do prawidłowego działania. Dioda cały czas bez względu na temperaturę świeci na jeden kolor (niebiesko-zielony?). Nie wiem czy przyczyna leży w kodzie czy raczej w połączeniu do atmegi.
Dioda jest podłączona do wyprowadzeń PD0, PD1 i PD2.
Oto kod programu w Bascomie:
Code: basic4gl
Na chwilę obecną cały układ działa na płytce stykowej i jest zasilany poprzez programator USBasp.
Jest to mój pierwszy projekt.
Jakich ewentualnie optymalizacji w kodzie programu można dokonać?