Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

Проблем с индексиране на буфер.
http://mcu-bg.com/mcu_site/viewtopic.php?f=3&t=8475
Страница 1 от 1

Автор:  PIC [ Съб Яну 15, 2011 5:44 pm ]
Заглавие:  Проблем с индексиране на буфер.

Здравейте,
От няколко дена си блъскам главата с нещо толкова елементарно, а изобщо не потегля
и не мога да измисля решение.
Тази програмка има за целта да изобрази на лсд датата, като в date_buffer символите се зареждат правилно, само че на дисплея нищо не излиза, а на дебъгера се вижда, че във всеки елемент на буфера има съответния семвол изобразяващ датата. Програмката LCD_write работи, защото инициализацията и останалите символи по дисплея се изобразяват с нея. Остава ми да се съмнявам в компилатора, който е mikroC 8.0.0. :evil:

unsigned char date_buffer[16]={0};

void LCD_send(unsigned char buffer[])
{
char i=0;

while(buffer[i]){
LCD_write(chr,buffer[i++]);
}
}

void main() {
LCD_send(date_buffer);
}

Автор:  mladejat [ Съб Яну 15, 2011 6:28 pm ]
Заглавие: 

Не трябва ли да е "void LCD_send(unsigned char *buffer)" ?

Автор:  valioman [ Съб Яну 15, 2011 11:56 pm ]
Заглавие: 

Този while(buffer[i]){ ми се вижда мноого съмнителен .
Я пробвай с прост for цикъл от 0 до strlen или засега с твърда дължина да видиш поне ще излезне ли нещо .
не съм ползвал микро С ама в CCS е много добре имлементиран printf -a демек хем пишеш хем форматираш ;)

Автор:  E1 [ Нед Яну 16, 2011 2:19 am ]
Заглавие: 

Към стойностите на датата прибави ли 0х30 (48), за да ги конвертираш в ASCII за изобразяване на LCD?
Дай целия код, че така не виждам какво присвояваш на chr, например.

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/