hallo leute,
hier will ich euch mein neues projekt vorstellen. nachdem ich jetzt kurz vor studienbeginn doch noch zeit zum basteln hatte, habe ich nun endlich meinen 4 Achs Roboterarm fertig gebaut, welcher über die freien IO-Ports der M32 angesteuert werden soll.



Hier ein paar bilder für die ersten eindrücke:
ps: ja den greifer hab ich mir von Radbruch abgeschaut^^.

Bild hier  

Bild hier  


Bild hier  

der arm besteht aus 5 Servos und einem Reflexkoppler (befindet sich am Greifer), mit welchem gegenstände im erfassungsbereich des greifers erkannt werden können.

jetzt hab ich mich mal an die programmierung gemacht. aber ich scheitere schon an der ersten hürde.
warum sind alle IO- Ports der M32 unprogrammiert high bzw. warum der M32 auf meinen an PD 5 angeschlossenen Reflexkoppler nicht?

scheinbar habe ich noch irgendeine Maßnahme bei der Initialisierung meiner IO- Ports in meinem programm vergessen. wer kann mir da kurz weiterhelfen?

mfg


Code:
#include "RP6ControlLib.h" 


//Motor 1 => PD6
//Motor 2 => PC6
//Motor 3 => PC7
//Motor 4 => PC3
//Motor 5 => PC2
//Reflexkoppler => PD5

void teil_erkannt(void)
{if(PINA & IO_PD5)
 {writeString_P("kein Teil erkannt\n");} 
 
 else
 {writeString_P("Teil erkannt\n");} 
}



int main (void)
{ 
initRP6Control();

DDRD &=~ IO_PD5; 		//PD5 (M32) als Eingang


while(true)
{teil_erkannt();

}
return 0;
}