Witam,
Mam dosc banalny problem, ale za nic nie potrafie go rozwiazac. Napisalem programik do sterowania centralk± alarmow± w Codevision C AVR na ATMega128. Na plytce centralki jest zegar RTC PCF8583. Wszystko pieknie dziala, poza jednym z zadan programu, ktorym jest wysylanie aktualnego czasu pobranego z zegara poprzez UART do szyfratora z wyswietlaczem LCD. Problem polega na tym, ze wbudowane w biblioteki procedury pobieraja czas z RTC i konwertuja go bcd2bin. Chcialbym wyslac aktualny czas jako string np. "time: 22:24:58" Jak narazie uzywam putchar() i wysylam pojedynczo godziny, minuty i sekundy, a na koncu CR,LF. Ale na porcie szeregowym w oknie terminala na PC pojawiaja sie znaki Ascii (#$%-+()0123 itd...) zamiast np. sekund od 0 do
- Probowalem uzywac roznych funkcji wbudowanych (np. atoi() - w tym przypadku jednak nic nie jest wysylane) ale wciaz na port szeregowy wysylane sa znaki ASCI odpowiadajace aktualnie odczytanej z zegara liczbie (sekundzie, minucie, godzinie). Podobno funkcja printf ma takie mozliwosci konwersji, ale w Codevision jest ona "biedniejsza" i moze wysylac tylko stringi z pamieci programu. Co robie nie tak ? Co i na co powienienem przekonwertowac i w jaki sposob ?
Z gory dziekuje za jakiekolwiek podpowiedzi
Pozdrawiam