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

 
 
> подскажите как лучше ф-ю UART описать, пока не сообразить
Метценгерштейн
сообщение Mar 1 2006, 13:51
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 357
Регистрация: 12-04-05
Из: Петербург
Пользователь №: 4 079



есть уже рабочая ф-я, она пишет один символ
putchar('H');
символ Н, например. Как сделать так, чтобы слова строковые можно было бы закидывать?
"йцукен", например
вот наваял, но опыта пока мало и ругается IAR

void puts(char s[])

{
int i;
i = 0;
while (s[i] != '\0')
++i
putchar(s[i]);
}

Кто что посоветует?

Сообщение отредактировал Метценгерштейн - Mar 1 2006, 13:53
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 3)
vet
сообщение Mar 1 2006, 14:13
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 550
Регистрация: 16-06-04
Из: Казань
Пользователь №: 32



Код
void puts(char *s)
{
  char c;
  while (c = *s++) putchar(c);
}


Вообще, функция puts уже есть в <stdio.h>.
Её варианты, читающие строку из флэш, специфичны для конкретного компилятора (putsf для CV, puts_P для IAR).


--------------------
Главная линия этого опуса ясна мне насквозь!
Go to the top of the page
 
+Quote Post
Метценгерштейн
сообщение Mar 1 2006, 14:31
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 357
Регистрация: 12-04-05
Из: Петербург
Пользователь №: 4 079



Спасибо за совет, сейчас опробую, а как пользоваться puts_P для IAR?
Я включаю в проект <stdio.h> а в проге что пишу?
puts_P ("qwerty");

так? И никаких моих ф-й больше не надо?
Go to the top of the page
 
+Quote Post
vet
сообщение Mar 1 2006, 15:55
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 550
Регистрация: 16-06-04
Из: Казань
Пользователь №: 32



#include <pgmspace.h>

Хинт: узнать, какая функция в каком заголовочном файле описана, можно поиском в каталоге avr\inc\clib.


--------------------
Главная линия этого опуса ясна мне насквозь!
Go to the top of the page
 
+Quote Post

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

 


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


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