Wenn es dich interessiert, aber da hängt bei mir relativ viel dran und meine Assembler-Routinen hab ich auchg selber geschreiben.
Code:
#HostKommandoG
'Orientierung mit Kompass zurückgeben (16-Bit Genauigkeit)
'Rückgabewert: 0 - 3599 (0,1° / Einheit)
'Antwort: "G" KompassHigh KompassLow EOT
Sys ASM_I2C_Start 'I2C Startbit senden
Sys ASM_I2C_Write ADR_CMPS_W 'Adresse senden
Sys ASM_I2C_Write REG_CMPS_INTH 'Register senden (16-Bit Wert Higher)
Sys ASM_I2C_Stop 'I2C Stopbit senden
Sys ASM_I2C_Start 'I2C Startbit senden
Sys ASM_I2C_Write ADR_CMPS_R 'Register anfragen
AlphaH = I2C_Read 'Wert empfangen
Sys ASM_Send_ACK 'Acknowledge senden
AlphaL = I2C_Read 'Wert empfangen
Sys ASM_Send_NAK 'Not-Acknowledge senden
Sys ASM_I2C_Stop 'I2C Stopbit senden
Put x_G
Put AlphaH
Put AlphaL
Put x_EOT
GoTo Main
Grüsse Wolfgang
Lesezeichen