-
-
Erfahrener Benutzer
Roboter Experte
Hallo Mastermelo,
Lese zuerst mahl das Robby Basic manual (ha, ha, ha!) Ich hab schon manche Jahre Erfahrung mit programmieren und Programmiersprachen aber fur anfanger lasst sich dass Robby Basic manual nur ganz schwer verstehen. (Fur mich jedenfals)
Die Hauptprozessor der Robby (ein Motorola MC68HC05B6) hat 3 digital 8-bits Ports (A, B und C) und 1 analoge 8-bits port (D).
Im allgemeinen wird das Wort 'Port' often benutzt sowohl fur eine Gruppe von 8-bits (z.B. Port C) aber auch fur ein einzelnes mitglied eines Ports z.B. Port C bit 3 wird Port PC3 genannt.
Warum gibt es kein Ports mit z.B. 6 bits? Weil alles im Computer mit Bytes angesteuert wird und bytes sind nun mahl 8-bits breit. Und damit
sind Ports als ein Byte zu betrachten (Lesen und Schreiben).
Normahlerweise im Computerwelt wirden port-bits nummeriert von 0-7 aber Conrad-Basic nummeriert port-bits von 1-8 und 9-16 Und Conrad-Basic kenzeichnet ein einzelne port-bit als ein 'Port'.
Prozessor PortA (8-bits) davon werden nur 3 bit benutzt vom Robby und sind nur fur interne nutzen und sind NICHT vom Basic her manipulierbar.
Prozessor PortB (8-bits) dass sind die Basic ports Port[1] bis Port[8]. Sind auch fur internen nutzen aber einige sind mit Robby connectoren verbunden.
Prozessor PortC (8-bits) dass sind die Basic ports Port[9] bis Port[16]. Sind intern nirgendwo mit verbunden, nur mit anschliessung Y9-Y16 am rechter Robby connector und sind fur anwender nutzungen.
Ein Robby-program (klaren Tekst) wird vom Tastendruck F12 umgesetzt nach Basic-Code (Tokens genannt) und danach zum Robby gesended und von den Robby hauptprocessor im EEprom chip (8-beiniges chip) gespeichert. Im innern der Robby hauptprocessor ist ein Conrad-Basic-Umwandler program anwesend (Basic-Interpreter) der beim ausfuhren vom Program die Basic-Code (Tokens) aus die EEprom chip heraus holt und interpretiert und dazu gehorende (vom Conrad geschrieben und vom hersteller der chip einprogrammiert) in spezielles MC68HC05 mikro-controller code geschriebene functionen ausfuhrt........verstehs du's noch oder bist du schon pleite???
Intern im Prozessor kan mann im prinzip jeden Port-bit als eingang oder als ausgang schalten. Aber die Conrad-Basic Interpreter ubernimmt diese function durch einfachere Basic-commando's. Beim aufstarten der Robby sind alle ports als eingang geschaltet (wird vom Procezzor internen hardware ausgefuhrt).
Jetzt komt Robby Basic. (z.B. einen Led einschalten/ausschalten)
Led verbinden mit connector Y12 (ist port[12])
====================
define LedControl port[12]
port[12]=on 'ist illegale code
LedControl=on 'Led einschalten, strom an
LedControl=off 'Led ausschalten, strom aus
====================
Beim 'LedControl=on' wird 'unterwasser' im Hauptprocessor wenn port[12] (irgendwo) als eingang definiert war zuerst port[12] als ausgang geschaltet und 'hoch' (ungefahr 5 Volt) geschaltet.
SERVO's
Bin kein Expert mit Servo's aber so weit ich weiss werden servo's mit schnellen pulsen angesteurt. Die port[9] bis port[16] sind nicht dafur geeignet weil durch die zwischenlage vom Conrad-Basic die ports nicht schnell genug und correct zu programmieren/schalten sind. Dafur sollst du im 'prozessor-sprache' programmieren mussen und nicht in Basic.
So, jetzt hor ich mahl auf, sonst versteh ich's selbst nicht mehr...
mvg,
Henk
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen