Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

Ответ:

Отправлено alex_engine 12 февраля 2009 г. 22:06
В ответ на: Давайте упростим задачу : sprintf и itoa не используем. >> отправлено пользователем Юрий_СВ 12 февраля 2009 г. 21:58

набрал следующее:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<iom8.h>
#include <intrinsics.h>
#include<ds18b20.h>
#include<lcd.h>

int main( void )
{
char buffer[5];
char temp_c;
char Mes0[]={84,101,188,190,101,112,97,191,121,112,97,0};

lcdInit();
DDRB |= (1<<1)|(1<<2);
PORTB |= 1<<1;

temp_c=0;
buffer[1]=0;

while(1){
lcdPrintData(Mes0, 11);
lcdGotoXY(0, 1);

temp_c++;
if (temp_c>9) temp_c=0;
buffer[0]=temp_c+48;
lcdPrintData(buffer, 2);
__delay_cycles(1000000);

lcdHome();
}
}
на экране слово "температура"
и... происходит счет с 0 до 9 и второй символ - кракозябра не меняется!
а почему "+48"?


Составить ответ | Вернуться на конференцию.

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 63:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru