|
BASCOM -AVR 编写电机控制程序报错。
$regfile = "m8def.dat"
$crystal = 8000000
'Config Portb = Output
'Config Portc = Input
Declare Sub Await(byval A As Byte)
Ddrb = &B11110000
Dim X As Byte , Y As Word , Z As Byte , U As Byte , V As Byte , T As Byte
Dim A(8) As Byte
Dim W As Byte
Z Alias Portb ‘!!!!!!!!!!!这条无法通过
Z = &B00001111
T Alias Pinb ‘!!!!!!!!!!这条无法通过
Restore Bianma
For X = 1 To 8
Read A(x)
Next X
X = 5 : Y = 20000 : W = 0
Begin:
Do
Gosub Check
Select Case W
Case &H55
X = X + 1
If X = 9 Then X = 1
Z = A(x)
Case &HAA
X = X - 1
If X = 0 Then X = 8
Z = A(x)
End Select
AWait Y ‘!!!!!!!!!!!这条无法通过
Loop Until W = &HFF
End
Bianma:
Data &H8F , &HAF , &H2F , &H6F
Data &H4F , &H5F , &H1F , &H9F
Check:
U = T And 15
If U = 15 Then Return
Waitms 20
V = T And 15
If U <> V Then Return
If V.3 = 0 And V.2 = 0 Then
W = &HFF
Elseif V.2 = 0 And Y > 100 Then
Y = Y - 100
Elseif V.3 = 0 And Y < 65000 Then
Y = Y + 100
Elseif V.0 = 0 Then
W = &H55
Elseif V.1 = 0 Then
W = &HAA
End If
Return
Sub Await(byval A As Word)
Local I As Word
For I = 1 To A
Next I
End Sub
三条无法通过。选自马老师参与编著的AVR单片机BASIC语言编程及开发,第七章。 |
|