deslocamento dos caracteres

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

deslocamento dos caracteres

Mensagempor eliandrostz » 15 Fev 2007 10:12

Olá pessoal
Alguém poderia me dizer como formatar o comando printf para que ele não desloque os caracteres para a direita quando as variaveis vierem com sinal negativo, fiz do jeito que está aí no código mas não funciona, parece que não tem como formatar o sinal para que fique em uma posição fixa.
estou usando o arquivo lcd420.c do CCS.

Código: Selecionar todos
void atualiza_display()
{
   char simb[ ]=" C";
   simb[0]=223;
   lcd_putc("\fCANAL1 CANAL2 CANAL3");
   printf (lcd_putc,"\n%3ld%s %3ld%s %3ld%s",a , simb, b, simb, c, simb);
   lcd_putc("\nCANAL4 CANAL5 CANAL6");
   printf (lcd_putc,"\n%3ld%s %3ld%s %3ld%s",d, simb, e, simb, f, simb);
}
O conhecimento vem e vai, a sabedoria permanece...
eliandrostz
Nibble
 
Mensagens: 71
Registrado em: 16 Out 2006 13:51

Mensagempor Red Neck Guy » 15 Fev 2007 20:50

Uma alternativa seria fazer assim:
//(...)

if(variavel>0)
posiciona_lcd(X);
else
posiciona_lcd(X-1);

printf("%3d",variavel);

//(...)
//Exemplo meio abstrato, mas o que vale é a idéia.
ASM51 descanse em paz!
Avatar do usuário
Red Neck Guy
Dword
 
Mensagens: 1968
Registrado em: 12 Out 2006 22:24

Mensagempor styg » 15 Fev 2007 23:48

utilizando um espaço ' ', antes do especificador faz com que seja inserido um espaço quando nao há sinal negativo.

var = 1.6;
printf("valor= % f",var);
var = -1.6;
printf("valor= % f",var);

saida:
valor=**1.6;
valor=*-1.6; * = espaço (pra melhor visualizar)
Lucas
Avatar do usuário
styg
Word
 
Mensagens: 799
Registrado em: 16 Out 2006 08:24
Localização: Floripa abaixo de zero.

Mensagempor eliandrostz » 16 Fev 2007 06:47

Ok Aquino, acho que a sua idéia é a mais inteligente a ser usada na falta de uma formatação adequada, obrigado.

Lucas, colocar um espaço antes do especificador não é um modo de formatação aceita pelo CCS, também tentei colocar uma váriavel tipo char = ' '; mas ela também ocupa um espaço fixo e é deslocada quando o sinal aparece, ainda assim muito obrigado pela atenção.
Se alguém tiver mais alguma idéia ajuda aí.
O conhecimento vem e vai, a sabedoria permanece...
eliandrostz
Nibble
 
Mensagens: 71
Registrado em: 16 Out 2006 13:51


Voltar para PIC

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x