PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Brauche Befehle für CCBasic



Jon
31.12.2005, 15:10
Kann mir mal bitte jemand bei meinem Problem helfen?
Ich habe vor kurzem mit der Programmierung des CCRP5 mis CCBasic angefangen, habe aber keinen Ahnungn, was die Befehle bedeuten und was sie bewirken. Hat jemand eine Liste mit den Befehlen und deren Bedeutung.
Danke für die Hilfe!

Manf
31.12.2005, 17:45
Eine vollständige Liste mit Erläuterungen:
http://www.wieselsworld-online.de/befehle_index.htm

Jon
31.12.2005, 17:56
Danke für den Hinweis. Ich brauche aber auch Befehle mit denen ich zum Beispiel das Anticollisionssystem abfragen kann.

Manf
31.12.2005, 18:19
Meinst Du diese Funktionen?
http://www2.produktinfo.conrad.com/datenblaetter/175000-199999/190333-an-01-de-Robby_RP5.pdf

function getAMBIENT_SENS( )
Ruft die Werte der Umgebungssensoren ab. Sie sind als ccrp5.LIGHTL, ccrp5.LIGHTR. ccrp5.MIC und
ccrp5.TOUCH verfügbar
function getDISTANCE( )
Ruft die Werte der Wegstreckenzähler ab und stellt sie in ccrp5.DISTL und ccrp5.DISTR zur Verfügung
function setACSLO( )
function setACSHI( )
function setACSMAX( )
Funktionen zum Einstellen der ACS-Empfindlichkeit

Jon
01.01.2006, 11:41
Wie kommt es, dass Befehle die für die Grundplatte gebraucht werden erst bei der Erweiterung aufgelistet werden?
Trotzdem denke ich, dass ich jetzt erstmal weiter komme.

Dirk
01.01.2006, 14:31
Hallo Jon,

wenn du zum Robby Fragen hast, ist es wichtig, mit welcher "Version" du arbeitest.
1. Robby in der Grundform wie gekauft (Programmierung in CCBASIC)
2. Robby mit Erweiterungsplatine (190310), CCBASIC
3. Robby mit Erweiterungsplatine UND C-Control II (191111), Programmierung in C2

Dann kann dir geholfen werden!
Ich denke aber, dass du die Grundform hast.
Die "Befehle" für das Abfragen von Sensoren sind in CCBASIC keine einfachen Funktionsaufrufe wie liesSensorXY, sondern setzen sich aus einzelnen BASIC-Befehlen zusammen. Du must dir also zuerst die BASIC-Befehle ansehen und dann die Beispielprogramme anschauen. Da findet man dann Abfragen der Sensoren, so wie man sie in eigene Progs einbauen kann.
Beispiel:
SYS ACS_MAX:SYS COMNAV_STATUS:GOSUB LED3ON
if (SYSTEM_STATUS and &H03)=3 then goto move_fwd
Hier werden 2 Systemroutinen aufgerufen (ACS_MAX setzt die Empfindlichkeit des ACS auf MAX, COMNAV_STATUS liest den Status des Subsystems).
Durch diesen Aufruf wird die Variable SYSTEM_STATUS mit dem Ergebnis gefüllt: Bit 0 ist der rechte Sensor, 1 der linke. Nur diese 2 Bits in der 8-Bit-Variable sind interessant. Daher werden in der folgenden if-Abfrage mit AND &H03 alle anderen Bits maskiert. Das Ergebnis kann dann 0, 1, 2 oder 3 sein.
0: Kein Sensor angesprochen
1: rechter Sensor
2: linker Sensor
3: beide Sensoren
Wenn beide Sensoren angesprochen haben, geht's zu move_fwd

So kannst du dir alle Beispiele ansehen und die Codeteile für eigene Entwicklungen nutzen.

Gruss Dirk

Jon
01.01.2006, 16:18
Vielen Dank Dirk!!
Ich glaube, dass ich jetzt deutlich mehr verstanden habe.

Jon
03.01.2006, 21:21
Hallo Dirk!
Könnte es sein, dass
1:der linke Sensor und
2:der rechte Sensor ist?
Schreibe doch bitte kurz zurück!
Gruß Jon

Dirk
03.01.2006, 21:43
Hallo Jon,


Könnte es sein, dass
1:der linke Sensor und
2:der rechte Sensor ist?
du hast Recht! Sorry! :-#

Gruss Dirk