Hi Picnick,
jetzt bin ich doch noch über ein Rätsel gefallen:
* wenn ich von einem Slave einige Byte abholen möchte müssen diese ja dann im Slave irgendwie bereit gestellt werden.
=> hier schicke ich dem Slave 8 byte... verstandenCode:Twi_mst_addr = Mn2_adr 'I2C adresse ZIEL Twi_mt_cntr = 8 ' 8 Byte senden Twi_mt_data = Varptr(twi_mst_buff(1)) ' Daten
=> hier hole ich mir 3 byte, wie muss nun im Slave der Code aussehen, um 3 bestimmte Bytes zu holen?Code:Twi_mr_cntr = 3 ' dann 3 Byte empfangen Twi_mr_data = Varptr(twi_mst_buff(1)) ' empfangsbuffer Gosub Run_wait_master ' noch eine SUB
Bzw. ich habe 3 Singles hintereinander und dann noch mal 3 Bytes die abgeholt werden sollen, wie und wo im Slave muss ich diese anordnen/bereitstellen?
Vielleicht hab ich es schon gefunden?!
=> Twi_st_data = Varptr(twi_slv_buff(1)) 'datenbuffer senden
die Daten, welche abgeholt werden sollen, stehen im twi_slv_buff(1)?
Wenn ja, müsste ich es so machen?
Danke und GrußCode:Dim Temp1 As Single Dim Temp2 As Single Dim Temp3 As Single Dim Byte1 As Byte Dim Byte2 As Byte Dim Byte3 As Byte Twi_slv_addr = Mn1_adr 'lokale I2C-Adresse Twi_sr_data = Varptr(twi_slv_buff(1)) 'datenbuffer empfang Twi_st_data = Varptr(Temp1) 'datenbuffer senden
MAT







Zitieren

Lesezeichen