PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Servoprogramm/Bascom



easyprivate
10.11.2008, 19:39
Hi@all!
Habe noch so gut wie keine Erfahrung beim programmieren,versuche aber mir das ganze mal näher zu bringen...
Programmiert wird mit Bascom. Dazu verwende ich das ATmega32 und 3 Servos....
Da ich nicht lesefaul bin habe ich mir schon mal einen Teil des Programms erlesen,komme nun aber nicht mehr weiter... Und da kommt ihr ins Spiel :-b

Mein Ziel ist es die 3 Servos von rechts,nach ganz links und anschließend zur mitte zu "bewegen". Würde das so funktionieren?

Wofür stehen die Befehle Reload = 10 und enable interrupts??????

Hier mal das Programm bisher....


$regfile = "m32def.dat"
$crystal = 16000000
$baud = 9600


Config Servos = 3 , Servo1 = Portb.0 , Servo2 = Portb.1 , Servo3 = Portb.2 , Reload = 10

Config Portb = Output

Enable Interrupts

Servo(1) = 50
Servo(2) = 50
Servo(3) = 50
waitms 1000

Servo(1) = 150
Servo(2) = 150
Servo(3) = 150
waitms 1000

Servo(1) = 100
Servo(2) = 100
Servo(3) = 100
waitms 1000

loop
Code-Tags geben mehr her als Farbe (picnick)


Hoffe ihr könnt mir weiterhelfen. Wäre auch sehr dankbar über hilfreiche Quellen in DEUTSCH^^

Gruß,Easy

hexabotix
10.11.2008, 19:49
du da tut doch das do fehlen :-)

easyprivate
10.11.2008, 20:11
Wo muss es denne hin?

hexabotix
10.11.2008, 21:22
Huch!? Immer noch nicht geholfen? Hatte vorher wenig Zeit - Jetzt ist es besser, weil ich fertiggegessen habe :-)

Also, ich bin zwar auch BASCOM-Anfänger, habe aber den Vorteil, mir das entsprechende Handbuch heruntergeladen zu haben ... ;-)

1. Wenn Du ein "loop", also eine Schleife programmieren möchtest, dann empfielt sich ein "do" für deren Einleitung, andernfalls schimpft der BASCOM-Compilier und erstellt kein ausführbares Programm (siehe Fehlermeldungen unten sinngemäß .... Error ....DO expected ...).

2. "Enable interrupts" aktiviert die Interrupts, die standardmäßig nicht aktiviert sind

3. Der Reload-Wert ist die Wiederholrate für die ISR in µS. Bei "Reload = 10" wird die ISR alle 10 µS ausgeführt.

Oh, ich sehe gerade, dass ich für meine Antworten wohl das falsche Forum verwendet habe; es gibt ja eines eigens für BASCOM-Sachen. Nächstes Mal gebe ich mir mehr Mühe. Schuldigung.

jeffrey
11.11.2008, 15:06
hoi,
also wurde ja gerade schon gut erklärt. allerdings stimmen meiner meinung nach deine zeiten nicht. der eine anschlag sollte ca 100, mitte 150 und der andere anschlag etwa 200 sein.
mfg jeffrey

easyprivate
11.11.2008, 17:31
Werde ich ja beim ersten "Test" herausfinden ;-) Danke euch schonmal für die klasse Hilfe... Interessieren würde mich noch das BascomHandbuch in Deutsch ....

Englische Version habe ich gefunden,nur da komme ich nicht weit mit...Wäre toll wenn jemand nen Link hat ;-)