Hallo allerseits! Ich bin neu in dem Forum und hoffe hier Hilfe zu finden!
Ich versuche gerade vergeblich über I2C einen BMA020 (welcher sich auf dem Print von ELV befindet) auszulesen und finde einfach keinen Fehler! Ich bekomme im Terminal immer nur 255 ausgegeben und die Werte ändern sich einfach nicht!
Ich arbeite mit BASCOM (hab ich auch erst neu begonnen) und einem Atmega88 auf einenm Experimentierboard.
Ich hoffe auf Hilfe!
grüsse Robert
Hier der Code:
$regfile = "m88def.dat"
$crystal = 8000000
$baud = 19200
$hwstack = 40
$swstack = 40
$framesize = 40
Config Scl = Portc.1
Config Sda = Portc.0
Config I2cdelay = 10
Dim Ax As Integer
Dim Bx As Integer
Dim Ay As Integer
Dim By As Integer
Dim Az As Integer
Dim Bz As Integer
I2cinit
I2cstart
I2cwbyte &H70
I2cwbyte &H15
I2cwbyte &B10000000
I2cstop
Delay
I2cstart
I2cwbyte &H70
I2cwbyte &H14
I2cwbyte &B00100
I2cstop
Delay
start:
do
I2cstart
I2cwbyte &H70
I2cwbyte &H02
I2cstop
I2cstart
I2cwbyte &H71
I2crbyte Ax , Nack
I2crbyte Bx , Nack
I2crbyte Ay , Nack
I2crbyte By , Nack
I2crbyte Az , Nack
I2crbyte Bz , Ack
I2cstop
Delay
print bx
print by
print bz
loop
end
Ich versuche gerade vergeblich über I2C einen BMA020 (welcher sich auf dem Print von ELV befindet) auszulesen und finde einfach keinen Fehler! Ich bekomme im Terminal immer nur 255 ausgegeben und die Werte ändern sich einfach nicht!
Ich arbeite mit BASCOM (hab ich auch erst neu begonnen) und einem Atmega88 auf einenm Experimentierboard.
Ich hoffe auf Hilfe!
grüsse Robert
Hier der Code:
$regfile = "m88def.dat"
$crystal = 8000000
$baud = 19200
$hwstack = 40
$swstack = 40
$framesize = 40
Config Scl = Portc.1
Config Sda = Portc.0
Config I2cdelay = 10
Dim Ax As Integer
Dim Bx As Integer
Dim Ay As Integer
Dim By As Integer
Dim Az As Integer
Dim Bz As Integer
I2cinit
I2cstart
I2cwbyte &H70
I2cwbyte &H15
I2cwbyte &B10000000
I2cstop
Delay
I2cstart
I2cwbyte &H70
I2cwbyte &H14
I2cwbyte &B00100
I2cstop
Delay
start:
do
I2cstart
I2cwbyte &H70
I2cwbyte &H02
I2cstop
I2cstart
I2cwbyte &H71
I2crbyte Ax , Nack
I2crbyte Bx , Nack
I2crbyte Ay , Nack
I2crbyte By , Nack
I2crbyte Az , Nack
I2crbyte Bz , Ack
I2cstop
Delay
print bx
print by
print bz
loop
end