J'ai pour projet de réaliser un capteur de température équivalent au DS18B20,
composé d'une sonde PT1000 et d'un ATtiny85.
L'ATtiny85 assure la conversion analogique digitale et l'interface OneWire.
Or pour cet interface, le timing est très important.
Le test suivant :
Loop(){
while(1){
digitalWrite(1,LOW);
delayMicroseconds(10);
digitalWrite(1,HIGH);
delayMicroseconds(10);
}
}
La mesure du signal de sortie est :
Période : 32.4 µs
Etat haut : 16.3 µs
Etat bas : 16.1 µs
Ce résultat n'est pas assez précis (60% trop lent) pour mon application.
Le problème vient-il de :
- l'imprécision du microcode delayMicroseconds()
- du compilateur car le choix de la carte : "ATtiny85 @8Mhz (internal oscillator, BOD disabled)
or mon ATtiny85 20PU (acheté chez Snootlab

Pouvez-vous m'orienter vers une solution ?
Merci de votre aide.
Serge