Hallo MeckPommER,

als Entwicklungsumgebung benutzte ich WinARM mit dem arm-elf-gcc/g++.

Die Hardware besteht aus dem LPC2138-Modul http://cgi.ebay.de/ARM7-Philips-LPC2...QQcmdZViewItem,
einem Subsystem aus einem AtMega32 für die Motorsteuerung(L298 und RB35-Motoren) und Servos und einem zweiten Mega32 für eine kleine Tastatur und für die Überwachung von Strom und Spannung.

Die Kamera wird direkt an den LPC2138 angeschlossen. Bei jedem HSync wird ein IRQ ausgelöst, in der ISR werden dann die Pixel eingelesen und gespeichert. Sobald ein Frame komplett übertragen wurde, wird der Frame-Zeiger verändert, sodass das Frame bearbeitet werden kann, wärend ein das nächste parallel dazu eingelesen wird.

Gerade das war eines der grösten Fehler bei der Planung. Der Controller verbrauchte einfach zu viel Zeit, um ein Frame zu empfangen, weil er ja während der ganzen HSync beschäftigt war. Irgendwann kam mir die Idee, zwei externe RAMs zu benutzen. Ein Frame wird in das eine RAM eingelesen, der µC verarbeitet inzwischen den Inhalt des zweiten. Dann werden die Daten- und Adreassbusse der beiden RAMs getauscht. Da ich dann aber über 20 Logig-ICs brauchen würde, hab ich mir überlegt, ein enzelnes externes RAM zu benutzen. Ein Frame wird von der Cam reingeschrieben und in der inaktiven Zeit(VSync) wird es vom LPC2138 in sein internes RAM übertragen. So könnte man die mögliche Zeit für die Verarbeitung eines Frames bis zu 10 mal erhöhen.

...die Eingesetzte ... Software dafür.
Was meinst Du mit Software? Für die Entwicklung benutze ich nur den Compiler, weitere Tools habe ich nicht.

MfG Mark