PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Anfänger will Programieren -> ProBot 128



sebroos
09.12.2010, 21:56
hallo alle zusammen,

ich werde zu weihnachten den probot 128 bekommen, hoffe ich. (es steht zumindest auf meinem wunschzettel) =)

jedenfalls habe ich mal angefangen mir die Demo-Programme von Conrad anzuschauen. Zum glück kann ich etwas C-Programmieren und somit habe ich mit diesen Programmen weniger Probleme. Nun zur Frage:
Was mache ich wenn ich außerhalb der "Conrad - Anfänger.lib" arbeiten will?
also ich will zum beispiel neue sensoren einbauen, wie ich bestimmte ports aktiviere und ansteuer weiß ich schon aber welche ports von der C-Control Mega 128 darf ich verwenden ohne gleich den Microcontroler zu zerschießen?

und wie kann ich Daten in einen Speicher schreiben und dann vom PC auslesen lassen? ich würde gerne die odometriedaten des probots speichern und am pc dann den gefahrenen weg zurück verfolgen. ich danke schonmal für eure antworten =) und lasst euch zeit.... bis weihnachten ist ja noch ein bisschen hin. ;)

mfg

sebastian roos

bnitram
10.12.2010, 12:47
Hier habe ich dir mal eine Seite gepostet wo sehr viel über die C-Control steht.(unter Bibliotheken findest du viel mit Ports und so..)
http://www.c-control-pro.de/documentation/index.html?pinzuordnung128.htm

Mfg
bnitram

PS:
Der Roboter wird in C-Compakt programmiert. Es ist nicht ganz C.

sebroos
10.12.2010, 17:38
vielen dank für die antwort =)
ich werde mal ein bissel rumstöbern.. und mich wiede rzu wort melden wenn weitere fragen aufkommen =)

danke

bnitram
10.12.2010, 19:14
Kein Problem kannst dich immer an mich bzw. dem ganzen Forum wenden wenn du probleme hasst.

Mfg
bnitram

sebroos
14.12.2010, 14:15
hi, ich habe tatsächlich noch eine frage oder vielmehr ein problem...

unter dieser seite : http://www.c-control.de/c-robotics/zubehor_ccrp5/zubehor_ccrp5.html

von C-Control kann man die C-Control Manuals/anleitungen runterladen. was man dann erhält ist eine ZIP-Datei in der eine andere Tabelle mit ner anderen PIN-Belegung von dem Microcontroler als in dem oben genannten link.

Das schöne dabei ist... wie es aussieht steht in den comments genau das was am Pro-Bot standardmäßig angeschlossen ist.

Schlecht ist dabei das scheinbar einige PINs völlig anders genutzt werden, so sind zum beispiel die PINs für den USB anschluss gewandert und die PINs mit denen man die Adressen für nen Speicherort an einem SRAM eingeben können sollte sind teilweise von sensoren und aktoeren belegt worden...

um welchen SRAM baustein handelt es sich da eigentlich? um einen im C-Controler integrierten oder einem externen auf einem Experimentierboard?

in welchem speicher wird eigentlich mein programm geschrieben?

bei dem probot liegen doch auch ein paar testprogramme (wenn man der anleitung glauben darf) kann man sich von diesen programmen die quellcodes anschaun? ich denke das einfachste wäre den quellcode von dem memorytest (da soll über den I²C bus der ram beschrieben und ausgelesen werden) anzuschaun.... nur leider finde ich ihn nicht zum download... kann vllt jemand nachsehen ob er im quellcode den part findet wie der ram beschrieben wird und wieder ausgelesen?
das wäre sehr nett.... vielen dank im vorraus =)[/img]

bnitram
14.12.2010, 18:03
Also ich habe dir mal die richtige Beschaltung gepostet:

Und hier habe ich noch das mit dem EEPROM gespostet.
Die C-Control besitzt 4kb intigrierten EEPROM.
Wenn du mehr brauchst musst du ihn extern anschließen.

Mfg
bnitram

sebroos
16.12.2010, 08:14
ahh... jetzt weiß ichs...

habe die ganze Zeit gesucht was die Adresse oxA0 soll, da auf dem Schaltplan von Conrad die Adresse auf 111 geschaltet ist... das wäre aber nicht A0.. jetzt hab ich mal auf die Platine geschaut, und siehe da... die adresse ist in wirklichkeit auf 000.... ist jetzt schon der 2te fehler in der Conrad-Doku.

nun verstehe ich nur eins nicht.... man legt nachdem man den ROM angesprochen hat die High-Adresse und danach die LOW-Adresse auf den bus. Bei beiden vorgängen erwartet der ROM eine byte große adresse aber wir schicken da jedesmal nen word hin... ist das erlaubt?

lg

sebroos
16.12.2010, 17:08
huhu,
weiß jemand woher ich ich die PC software bekomme um den Probot fernzusteuern? diese liegt normal bei diesem probot selbstbau buch bei... und ist open source.... aber ich finde es nirgends zum downloaden...

bnitram
16.12.2010, 17:13
Welche denn???
Die mit Funk oder IR??

sebroos
17.12.2010, 15:39
beide =)

mit einem vorrang an dem mit IR =)
will mir mal den quelltext durchlesen... um zu sehen wie es funktioniert...

bnitram
17.12.2010, 15:58
Ich habe dir mal beide in der Zip-Datei hochgeladen.

Mfg
bnitram

sebroos
22.12.2010, 22:47
vielen dank für die daten =)

jetzt mal ne ziemlich dumme frage... wahrscheinlich....
aber ich komme gerade nicht weiter....

in den programmen stoße ich immeriweder auf widersprüche... in der PRO-BOT128_lib.cc schreibt Ulli S. diese Zeile:

Port_WriteBit(Motor_Enable,1); //Port = Low

und diese Zeile:

Port_WriteBit(Motor_Enable,0); //Port = High +5V

in einer anderen DEMO-Datei (Table_Drive)
steht diese zeile:

Port_WriteBit(Motor_Enable,1); //Port = High +5V

nun was stimmt denn jetzt? den Schaltplänen entnehme ich das der Bit High sein muss damit die Motoren angesteuert werden können....

nun stoße ich aber bei genauerem hinsehen auf weitere seltsamen ausdrücken...

so heißt es in manchen Programmen:

Port_WriteBit(FLL, PORT_ON) // LED FLL EIN

und in einem anderem Programm :

Port_WriteBit(FLL, 0) // LED FLL EIN

PORT_ON ist in dem Programm keine vordifinierte Vartiable...
Dem Schaltplan zur folge muss der ausgang LOW also GND als Ptential haben damit die LED leuchtet, da sie an Vcc angeschlossen ist...
PORT_ON würde ich jetzt als "setze den Port auf HIGH" interpretieren und die 0 als setze den Port auf LOW...

vorallem weil in der PRO-BOT128_Lib.cc
wieder diese Zeile steht:

Port_WriteBit(Encoder_IR,PORT_OFF); //PORT_OFF = IR -> Ein

aber die LED ist genauso an Vcc angeschlossen wie die FLL also muss auch hier der eingang auf LOW stehen, damit die LED angeht....

also was stimmt den nun?

und die nächste bescheuerte frage:

bei dem Beschaltungsplan vom Mega128 sind immer 8Ports Blau zusammengefasst und dann 8 Ports Rot... was hat das zu bedeuten? sind das ports die LOW +5V oder LOW GND liefern oder einfach nur eine optische unterstützung damit man die IO-ports Byteweise besser überblicken kann?

lg

seb