Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Help
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Denisvak
Начал изучать Си в CodeVisionAVR

Объясните пожалуйста почем код:
Код
unsigned char s[11]="test";
uart_send_string(s);
работает, а код:
Код
uart_send_string("test");
не фурычит?

Вот сам uart_send_string

Код
void uart_send_string(char* s)
{
int i;
for(i=0; i<strlen(s); ++i)
{
uart_transmit(s[i]);
};
}


И ещё как самой переменной "s" присвоить другое значение
Код
strcpy(s, "test2");
тоже не работает
vet
void uart_send_string_from_flash(flash char* s) {
...
}


...

uart_send_string_from_flash("test");

Подробности во встроенном хелпе.
Denisvak
Ответ компилятора:
function parametr #1 incompatible with its declaration

Бред какой-то. Не понимаю
WHALE
а если так:
void uart_send_string_from_flash(flash char* s) {
...
}
flash char *s="test";
uart_send_string_from_flash(s);
Denisvak
Ага, переписал
Код
void uart_send_flash( char flash* s)
{
int i;
for(i=0; i<strlen(s); ++i)
uart_transmit(s[i]);
}


на
Код
void uart_send_flash( char flash* s)
{
int i;
for(i=0; i<strlenf(s); ++i)
uart_transmit(s[i]);
}


и заработало

Вызов
Код
uart_send_flash("STBY");


Я так понял что это всё работает только через флеш... blink.gif
WHALE
это работает везде,читай хэлп к компилятору.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.