Moderadores: andre_luis, 51
vtrx escreveu:https://electronics.stackexchange.com/questions/272427/stm32-busy-flag-is-set-after-i2c-initialization
https://github.com/ARMmbed/mbed-os/issues/4214
Eu achei um código funcional que contorna o problema,uso no compilador KEIL.
O problema é na leitura sequencial de endereços,onde o STM trava depois da primeira leitura,feita por Hardware.
Guri escreveu:Avi....ai eu choro![]()
Qual é esse bug...Rapaiz, num diga.
Fiquei curioso, compartilha conosco, essa descoberta.
Obrigado
cfreund escreveu:vtrx escreveu:https://electronics.stackexchange.com/questions/272427/stm32-busy-flag-is-set-after-i2c-initialization
https://github.com/ARMmbed/mbed-os/issues/4214
Eu achei um código funcional que contorna o problema,uso no compilador KEIL.
O problema é na leitura sequencial de endereços,onde o STM trava depois da primeira leitura,feita por Hardware.
Li por cima e me parece ser problema com as bibliotecas.
Se o problema for no hardware e acontecer apenas na primeira leitura, ainda assim é possível utilizar DMA.
vtrx escreveu:Quando pesquisei o problema na época,lí em algum lugar que era problema dos capacitores internos de filtragem do I2C.
Quando voce usa rotinas por Hardware,voce consegue ler um endereço,mas se ler outro em seguida,o ACK fica travado,não permitindo a sequencia de leitura.
Pode ser por isso que a linha 103 é tão barata.
Guri escreveu:Apesar de eu ser NOVATO...
Acredito que possa haver sim, erro no software!
Depois dessa! Vou tentar implementar na unha uma rotina de escrita e leitura e ver o que acontece...O melhor caminho para entender algo é fazendo do inicio!
Mas concordo em partes com o cfreund. Eu particularmente já peguei muitos erros e até achava que poderia ser o mcu com bug...mas no decorrer dos meus experimentos, pude notar que 99,999% dos erros era de software! Já possíveis erros de hardware, tinham uma janela para acerto ou correção por software, tal como a dica dele em relação ao DMA. Apesar de não ter feito ainda nenhum teste que seja...
Agora convenhamos que se fosse holtek....![]()
Obrigado pelas dicas,
Guri escreveu:Apesar de eu ser NOVATO...
Acredito que possa haver sim, erro no software!
Depois dessa! Vou tentar implementar na unha uma rotina de escrita e leitura e ver o que acontece...O melhor caminho para entender algo é fazendo do inicio!
Guri escreveu:Mas concordo em partes com o cfreund. Eu particularmente já peguei muitos erros e até achava que poderia ser o mcu com bug...mas no decorrer dos meus experimentos, pude notar que 99,999% dos erros era de software! Já possíveis erros de hardware, tinham uma janela para acerto ou correção por software, tal como a dica dele em relação ao DMA. Apesar de não ter feito ainda nenhum teste que seja...
Agora convenhamos que se fosse holtek....![]()
Obrigado pelas dicas,
Voltar para STMicroelectronics
Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante