Вот что есть -
while(1){
buf = USART_GetChar(); //считываем буфер usart
if (buf){
IND_Output(buf, 2);
Проблемма такая и УСАРТ символы выпрыгивают по одному, и по одномуже уходят на 7 сегментник. Как сделать чтоб buf была не 1 символ, а несколько(к примеру 4), то есть строка?
IAR как объединить символы в строку?
- Реклама
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18546
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: IAR как объединить символы в строку?
хотелось бы, конечно, знать, что там такое у вас этот buf... и как вы с ним работаете... и как ваш вывод устроен, т.е. как он строку принимать будет...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
Re: IAR как объединить символы в строку?
buf цифра из терминала, мне нужо накопить такие 4 цыфры и пульнуть их на семисигментник. Я допиреть не могу как можно из 4 символов к примеру 1,2,5 и 8 сделать 1258.ARV писал(а):хотелось бы, конечно, знать, что там такое у вас этот buf... и как вы с ним работаете... и как ваш вывод устроен, т.е. как он строку принимать будет...
Re: IAR как объединить символы в строку?
Во-первых buf - это не цифра, а переменная, по-видимому, типа char или int. А цифра - это значение этой переменной, которое туда затем записывается.Alca писал(а):buf цифра из терминала
Значит во-первых их надо где-то хранить, для этого очень подходит массив, так что объявляй массив и записывай в него приходящие байты.Alca писал(а):мне нужо накопить такие 4 цыфры и пульнуть их на семисигментник.
Что-нибудь типа такого:
Код: Выделить всё
char buf[4]
char count;
while(1) {
char a = USART_GetChar();
if (a) buf[count++] = a;
if (count>=4) {
ShowMyArray(buf);
count=0;
}
}

