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:
Par contre je n'arrive pas à recevoir de distance. Ma variable reste desespérément vide.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
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.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
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.
-----