PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : i2c Richtung Motorsteuerung



Astro
05.01.2008, 15:03
Hallo und ein schönes neues !

Meine Motorsteuerung springt auf i2c nicht an wenn mir das jemand beheben könnte und auch durch den Compiler ( auch ohne wenn gut beschrieben) jagen würde währe ich froh.
DANKE








$regfile = "m128def.dat" ' Bei Mega 128

$framesize = 32
$swstack = 32
$hwstack = 32

$crystal = 16000000

$baud = 19200
$baud1 = 9600


Config Scl = Portd.0
Config Sda = Portd.1
Config I2cdelay = 10


Open "com2:" For Binary As #2


Sound Portg.2 , 400 , 450
Sound Portg.2 , 400 , 250
Sound Portg.2 , 400 , 450
' ---------------------------------------------------

Const Befehl_ausschalten = 51
Const Befehl_drehrichtung = 52
Const Befehl_geschwindigkeit = 53
Const Befehl_endlosdrehung = 54

Const Motor_1 = 1
Const Motor_2 = 2
Const Motor_3 = 3


Const I2crnmotorw = &H58
Const I2crnmotorsr = &H59



Dim I2cdaten(7) As Byte
Dim Lowbyte As Byte
Dim Highbyte As Byte
Dim Richtung As Bit


Dim Schritte As Long
Dim Temp As Byte
Dim Ltemp As Long
Dim Umdrehungen As Single
Dim Fahrstrecke As Word

Dim Geschwindigkeit As Byte



Richtung = 0
Geschwindigkeit = 250

Do

I2cdaten(1) = Befehl_endlosdrehung
I2cdaten(2) = Motor_3
I2csend I2crnmotorw , I2cdaten(1) , 7


Toggle Richtung
I2cdaten(1) = Befehl_drehrichtung
I2cdaten(2) = Motor_3
I2cdaten(3) = Richtung
I2csend I2crnmotorw , I2cdaten(1) , 7


If Geschwindigkeit > 40 Then
Geschwindigkeit = Geschwindigkeit - 20
Else
Geschwindigkeit = Geschwindigkeit - 1
End If


I2cdaten(1) = Befehl_geschwindigkeit
I2cdaten(2) = Motor_3
I2cdaten(3) = Geschwindigkeit
I2cdaten(4) = 0
I2csend I2crnmotorw , I2cdaten(1) , 7




Loop
End