Foi sim, ótima sugestão. Assim ele pode ver as duas formas de se fazer.
Mas tenho certeza que depois que ele descobrir "switch-case", nem vai mais querer saber de "if-else"...kkkkkk
Moderadores: andre_luis, 51, guest2003, Renie
ze escreveu:"Ai quem manda é o o projetista. Ele tem que dosar os prós e contras. Foi apenas uma sugestão."
(by cfeund)
(kk)
float fleprv;
ponteiro = &fleprv;
eepromwrite(0,*((unsigned char *)(ponteiro)+0));
eepromwrite(1,*((unsigned char *)(ponteiro)+1));
eepromwrite(2,*((unsigned char *)(ponteiro)+2));
eepromwrite(3,*((unsigned char *)(ponteiro)+3));
ze escreveu:iich. já vi que terei dificuldades em me alinhar neste forum. achei que ia achar bacana (EU acharia) a menção de seu comentário pois afinal está coerente com o andamento do tópico. enfim é mais uma linguagem "chinesa" que tento traduzir com conseqüência indesejada o que confirma minha dificuldade em fazer parte deste mundo. Assumo 100% minha falha, peço perdão, vou dar preferência a não deixar de não tentar considerar não mencionar que vou conseguir procurar ignorar voce a partir daqui (to falando... ninguém me entende pow! nem eu.rs). Peço ao moderador que apague este e demais comentários que achar desagregadores. (mas espero que vc tenha lido antes).Sim Ele tem mal gosto mas... Jesus te ama!
Agora até me deu vontade retomar o tema do tópico...
Uma maneira de gravar um float 32bits na eeprom em c [quase] puro. Isso evita usar a biblioteca particular do ccs (iéca!) e, claro, pode ser portado para qualquer mc e compilador
é algo +- assim...
- Código: Selecionar todos
float fleprv;
ponteiro = &fleprv;
eepromwrite(0,*((unsigned char *)(ponteiro)+0));
eepromwrite(1,*((unsigned char *)(ponteiro)+1));
eepromwrite(2,*((unsigned char *)(ponteiro)+2));
eepromwrite(3,*((unsigned char *)(ponteiro)+3));
para ler ... bom fica pra próxima.
dica antiga do 'antigo' amigo xultz (cara, vc não vai ficar brabo, vai?)
Sucessos!
while (true)
{
numero = kbd_getc();
switch (numero)
{
case 123: led_verde=1 ; break;
case 180: led_vermelho=1; break;
default: led_verde=0; led_vermelho=0;
}
char cmd[4], cnt;
while (true)
{
for(cnt = 0; cnt < 3; ++cnt)
{
cmd[cnt] = kbd_getc();
if(cmd[cnt] == '\n') break;
}
cmd[cnt] = 0;
if (strcmp(cmd, "1" ) == 0) led_verde=1
else if (strcmp(cmd, "10" ) == 0) led_vermelho=1
else if (strcmp(cmd, "120") == 0) led_verde=1
else if (strcmp(cmd, "560") == 0) led_vermelho=1
else led_verde=led_vermelho=0;
}
Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante