реклама на сайте
подробности

 
 
> Проблема с sscanf_P, или StringToInt
alux
сообщение Dec 21 2007, 07:38
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 589
Регистрация: 24-04-05
Пользователь №: 4 447



Для преобразования строки в целое число попробовал сделать так:
Код
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. В чем дело?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Dog Pawlowa
сообщение Dec 21 2007, 12:17
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(alux @ Dec 21 2007, 11:38) *
Проблема в том, что эти переменные не пишутся в RTC. Вернее пишут, но 0. Точнее записалось только значение года ("7").Хотя если явно инициализировать эти переменные какими-то значениеми или преобразовать с помощью ф-ции StrToInt(), то эти "какие-то"значения или результат ф-ции StrToInt() запишутся без проблем в RTC. В ф-ции rtc_set_time() каждое значение делается dec2bcd. В чем дело?

А почему Вы решили, что RTC способен принять это значение года одной переменной?
Какой RTC вы используете? Как кодируется год в нем?


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th July 2025 - 20:41
Рейтинг@Mail.ru


Страница сгенерированна за 0.01367 секунд с 7
ELECTRONIX ©2004-2016