Hallo,
die Aussage, dass der BMA020 nicht funktioniert, halte ich für sehr
mutig.
Selten stellt die Hardware das Problem dar.
> -das erste Problem:
>
> Config Twi = 400000
>
> (diese Zeile lässt sich nicht kompileren)
Wenn sich eine Zeile schon nicht kompilieren läßt, dann solltest Du
zuerst die Ursache dafür suchen.
Aus dem Stegreif fällt mir ein:
TWBR muss >= 10 sein, dass bedeutet, dass der ATMEGA 8 mit mindestens
16MHz getaktet sein muss.
Es könnte aber auch ein Syntaxfehler vorliegen (mit Bascom kenne ich
mich nicht mehr aus).
> Er kann also das Nack nicht vom Sensor empfangen.
Ein NACK ist das Fehlen/Ausbleiben eines ACK.
Der Slave, der adressiert wurde, zieht nicht aktiv SDA auf gnd.
Ursache könnte sein: die Adresse ist ungültig.
Oder die ganze Kommunikation funktioniert grundsätzlich noch nicht.
Im Zweifelsfalle würde ich so vorgehen:
Ein 0x70 an den BMA020 senden, wenn kein ACK zurückkommt, dann nach den
Ursachen suchen.
Vielleicht frisst Bascom auch die 7-Bit TWI-Adresse (versuchs mal mit 56
dezimal).
Oder was ich in solchen Fällen gerne mache:
Einen PCF8574 anschließen und mit ihm verfizieren, dass das TWI-Modul
auf dem Master, die Verkabelung und Terminierung korrekt funktionieren.
mfg
Michael S.