Hallo,

ich möchte für ein Meßsystem das Signal eines S/W-Videokameramoduls framegrabben. Das ist von der Geschwindigkeit her schon anspruchsvoll: Ich rechne mit gut 2 Megasamples pro Sekunde. Bei jedem zweiten Frame muß zusätzlich on-the-fly eine Dunkelbild-Differenz gemacht werden.

Geht das, welchen ARM brauche ich? Muß ich Assembler, oder ginge auch C? Gerne würde ich bei Atmel bleiben (Entwicklungsumgebung schon vorhanden), da gibt es aber anscheinend wenig Entwicklerboards. Mit dem Philips-ARM gibt es von embedded-artists ein interessantes Platinchen für 39€. Ob nun ARM7, ARM9 oder ARM11, da habe ich echt keine Ahnung. Es soll schon günstig sein, und wirklich nur auf diese Aufgabe zugeschnitten.

Nun die Details:

Kamera hat 352x288. Bin aber pro Zeile auch mit ca. 150 statt 352 Samples zufrieden. Ich glaube, bei einem analogen S/W-Videosignal kann man undersampeln. Dann ergibt sich ein Speicherbedarf von ca. 43kByte pro Bild. Bei 50Hz Halbbildwiederholrate, 288 Zeilen und 150 Samples ergibt sich 2,16MS/s, oder 0,46us pro Sample. Oder ist da noch ein Rechenfehler? z.B. Halbbild hat nur 144 Zeilen?

Der 8Bit-Wert würde von einem Flash-Wandler parallel an einem Port des ARMs zur Verfügung stehen. Der Flash-Wandler braucht sicher ein Triggersignal oder so. Der Beginn eines Bildes und jeder Zeile würde von einem speziellen Chip zu kurzen TTL-Signalen aufbereitet werden, die man auf Interrupt- oder Porteingänge legen kann.

In einem zweiten Durchlauf muß dann bei jedem Pixel sofort der vorherige Wert aus dem Speicher abgezogen werden, und dann die Differenz im Speicher abgelegt werden. Wenn man zuerst zwei Bilder sampelt und danach die Differenzbildung macht, wird der Speicherbedarf größer als 64kB - und bis jetzt habe ich nur ARMs mit bis zu 64kB gesehen.

Nach diesen zwei Sample-Durchläufen kann sich der ARM dann viel Zeit für Verarbeitung genehmigen (0,1s? Ist das viel?), bis er erneut zwei Frames holt.

Wäre schön, wenn ich meinen Bedarf durch Eure Antworten besser eingrenzen könnte.

Gruß
Tom.