Bonjour tout le monde.

Je travail sur un code exemple avec un SRF 08. Ce composant fonctionne sur le bus I2C. Je suis arrivé à lui mettre la configuration de base avec ce bout de code en assembleur:
Code:
	call I2C_Start
	movlw B'11100000'	;Adresse du sonar + ecriture
	call I2C_Write
	call I2C_ACK_slave_to_master

	movlw B'00000000'	;Sélection du registre de commande
	call I2C_Write
	call I2C_ACK_slave_to_master

	movlw B'01010001'	;Mesure en cm
	call I2C_Write

	call I2C_NOACK
	call I2C_Stop
Par contre je n'arrive pas à recevoir de distance. Ma variable reste desespérément vide.

Code:
Loop1
	call Attente_5s

	call I2C_Start
	movlw B'11100001'	;Adresse du sonar + lecture
	call I2C_Write
	call I2C_ACK_slave_to_master

	call I2C_Read
	movwf vartemp3
	call I2C_NOACK
	call I2C_Stop

	movlw H'80'
	call LCD_Position

	movlw vartemp3
	call LCD_Write

	call Attente_5s

	goto Loop1
Je pense sur deux cas, ou je vais plus vite que le composant donc je ne voie rien, si je rajoute 5s, je n'ai pas plus de résultat. Autre possibilité je n'ai pas la bonne méthode pour récupérer les informations de distance et du coup je n'ai rien dans ma variable.

J'avoue que sur ce coup je veux bien un peu d'aide.

Je vous remercie pour vos précision si il y en a.
Cordialement.