Для преобразования строки в целое число попробовал сделать так:
Код
sscanf_P(lcd_buf, "%d", &mn);
printf_P("\n\rMONTH %d", mn);
...................
sscanf_P(lcd_buf, "%d", &dt);
printf_P("\n\rDATE %d", dt);
....................
sscanf_P(lcd_buf, "%d", &yr);
printf_P("\n\rYEAR %d", yr);
rtc_set_time(0,min,hr,dy,dt,mn,yr-2000);
Терминал честно выводит переменную yr= 2007. Точно так же делаю с другими переменными времени. Проблема в том, что эти переменные не пишутся в RTC. Вернее пишут, но 0. Точнее записалось только значение года ("2007").Хотя если явно инициализировать эти переменные какими-то значениеми или преобразовать с помощью ф-ции StrToInt(), то эти "какие-то"значения или результат ф-ции StrToInt() запишутся без проблем в RTC. В ф-ции rtc_set_time() каждое значение делается dec2bcd. В чем дело?