Moderadores: andre_luis, 51, guest2003, Renie
elzirobotelho escreveu:quando acesso a opção mensagem para a alteração da mensagem exibida, não funciona adequadamente
ze escreveu:tentei analisar por alguns minutos. Numa análise superficial penso que tudo pode ser otimizado. p.ex. penso não ser necessários:
-WordToStr()
-max7219: faria varredura pelos pinos que sobram
Sei que isso não te ajudou muito mas tenho visão minimalista e seu projeto me pareceu muito complexo pra uma missão tão simples. Estimo que o fonte poderia ser reduzido nuns 60% e o circuito uns 25. Pelo menos reduziria um pouco o tamanho do palheiro onde está a agulha
Pra tentar agregar algum coisa...
-carregue o .cof no proteus pra ver o fonte
-rode passo a passo
-crie break points onde suspeita de algo
Talvez as interrupções esteja zoando o barraco
brasilma escreveu:Olá Colega,
Pelo que descreve, está ocorrendo alguma especie de conflito, que pode ser de sinal ou variável. V
erifique a ligação de pinos do display, veja se não ficou nenhum sem conexão, verifique a rotina do display, variáveis em comum.
andre_teprom escreveu:elzirobotelho escreveu:quando acesso a opção mensagem para a alteração da mensagem exibida, não funciona adequadamente
Se tiver como detalhar mais isso aí ajudaria.
Um video no Youtube talvez fosse melhor do que com palavras...
andre_teprom escreveu:elzirobotelho escreveu:quando acesso a opção mensagem para a alteração da mensagem exibida, não funciona adequadamente
Se tiver como detalhar mais isso aí ajudaria.
Um video no Youtube talvez fosse melhor do que com palavras...
while(1)
do main(), e possui dentro dela, um delay de 300ms, que é da mesma ordem de grandeza do delay usado pela rotina do display (250ms). Em primeiro lugar, seja qual for o material que você esteja medindo, com certeza sua temperatura não vai variar significativamente em alguns segundos. Isso significa que voce poderia colocar um contador para que essa temperatura fosse monitorada a cada, digamos 10 passadas, ex.: for ( i=0 ; i<10 ; i++ )Alem disso, será que 300ms é realmente necessário ?
{
temperatura();
}
andre_teprom escreveu:elziro,
A sua função temperatura() é instanciada diretamente dentro do loopwhile(1)
do main(), e possui dentro dela, um delay de 300ms, que é da mesma ordem de grandeza do delay usado pela rotina do display (250ms). Em primeiro lugar, seja qual for o material que você esteja medindo, com certeza sua temperatura não vai variar significativamente em alguns segundos. Isso significa que voce poderia colocar um contador para que essa temperatura fosse monitorada a cada, digamos 10 passadas, ex.:
cpp codefor ( i=0 ; i<10 ; i++ )Alem disso, será que 300ms é realmente necessário ?
{
temperatura();
}
Não daria pra diminuir 1/10 esse valor ?
No mais, gostei do seu código, tem bastante comentários...
Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante