Hallo, ich hab jetzt endlich die Library fertig mit der man ein VGA-Signal mit dem STM32F4 Discovery Board erzeugen kann. Der VGA-Mode ist 640x480 @60Hz, wobei aber nur 320x240 Pixel angezeigt werden (weil nicht genug RAM in der CPU vorhanden ist) die Farbtiefe ist bei meiner Version bei 8bit (RGB332) wobei auch weniger oder mehr theoretisch machbar sind es werden 2 Timer (TIM1 und TIM2) und der DMA2 (CH6,Stream5) benutzt ich hab allerdings keinen zweiten Bildpuffer eingebaut, beim zeichnen von bewegten sachen wird es also zwangsläufig zu "Bildfehlern" kommen (da werd ich vermutlich noch was dagegen machen) bei mit läuft es unter CooCox auch ohne Optimierungsstufe zufriedenstellend, allerdings "an der Grenze"...da müsst ihr aber selber mit rumspielen hier der Link : http://mikrocontroller.bplaced.net/
Wow hätte nicht gedacht dass das möglich ist. Wenn VGA unbedingt nötig war haben wir das sicherheitshalber auf ein FPGA ausgelagert z.B. https://www.olimex.com/Products/Modules/Video/MOD-VGA-32MB Inzwischen nehmen wir aber MC mit LCD-Controller plus RGB-VGA oder RGB-HMDI Converter-Chip z.B. LPC4088 http://www.nxp.com/products/microcontrollers/cortex_m4/LPC4088FBD144.html
Hi Lothar, ich hab es auch mehr aus "Spass an der Freude" implementiert, wirklich perfekt ist es nicht z.B. stimmt der Pixeltakt nicht genau weil mit dem 168MHz-Clock kein Teiler auf 25,175MHz (bzw. 12,58MHz) möglich ist und ich hab auch nicht getestet was passiert, wenn die CPU was anderes zeitkritisches parallel machen muss und für Bilder sind die 8bit Farbetiefe auch "Grenzwertig" aber ... who cares :-)
Hier haben die auch VGA über den F4 gemacht. Zeigt schön was der F4 drauf hat und vom Code kann man noch einiges lernen: http://pouet.net/prod.php?which=59095
@Marius S,
>Zeigt schön was der F4 drauf hat
ja, davon bin ich überzeugt...man muss es halt programmieren können :-)
und ich war noch nie der GrafikFreak
bzw. ich stell ja nur die "Grundgerüste" zur verfügung ..."rausred"
@vampire,
deine Schaltungen versteh ich nicht ganz
Bild 1. SCART :
was ist PB0 (Pin20) für ein Signal bzw. wie muss das aussehen ?
Bild 2. FBAS :
was ist 4FSC (Pin3) für ein Signal bzw. wie muss das aussehen ?
ich vermute da sind die Timings komplett anders (PAL = 50Hz)
Gruss
-beides sind Schaltungsauszüge zur UZE-/Fuze-Box, wie sie hier im Forum vor Jahren mal veröffentlicht wurden. Ich habe sie nur wegen ihrer Ähnlichkeit zu deiner VGA-Ausgabe, quasi als weitere Möglichkeit, hier aufgezeigt. s.a.: Beitrag "Re: (F)UZE-Box Zusatzmodul für AVR NET-IO" Uwe B. schrieb: > Bild 1. SCART : > > was ist PB0 (Pin20) für ein Signal bzw. wie muss das aussehen ? -nehme an Hsync; Uwe B. schrieb: > Bild 2. FBAS : > > was ist 4FSC (Pin3) für ein Signal bzw. wie muss das aussehen ? Ich habe die Schaltungen damals aufgebaut. Soweit ich mich erinnere, war es ein ATmega644 mit 27,xx Mhz übertaktet. Dürfte schwierig sein, für den AD725 die erforderlichen Signale zu generieren -- Auch dies dürfte passend sein: http://www.jcwolfram.de/projekte/avr/chipbasic2/hard.php 1.2 Farbversion (SCART)
-Nachtrag: PB0 ist das BAS-Signal. gebildet aus Hsyn+Pixelfrequ.; 4FSC Clock Input. For NTSC: 14.318 180 MHz. For PAL: 17.734 475 MHz. über Timer/counter zu generieren. Aber, wie Du schon bemerkt hast (in deinen Erläuterungen), -nicht so einfach zu erzeugen --
- ah, am besten, Du vergisst alles ab Beitrag "Re: VGA Ausgabe per STM32F4 Discovery-Board" -geht sooo nicht -- !!!
ich hol den Thread noch mal hoch um ein Demovideo von einem User zu verlinken da sieht man was mit der VGA-Lib alles möglich ist (wenn man es kann :-) http://www.youtube.com/watch?v=axJRn_WZFY0 Gruss Uwe
Uwe B. schrieb: > bei mit läuft es unter CooCox auch ohne Optimierungsstufe Warum eigentlich immer ohne? Die GCC-Optimierungen bewirken kleine Wunder, während ohne diese der generierte Code ziemlich gruselig ist (so stehen gerne die gleichen Instruktionen 5x hintereinander da, wo 1x gereicht hätte). Und präzise Delays sollte man onehin nicht mit C-Delay-Loops machen...
nochmal um ein Missverständnis auszubügeln das Video (und der Youtube Account) ist NICHT von mir !! sorry, wenn das falsch verstanden wurde
Uwe B. schrieb: > das Video (und der Youtube Account) ist NICHT von mir !! Hallo alle ;) Diese Video ist von mir und mit als Basis der Video Treiber Uwe auf seine Seite gibt. Ist nicht mit cocoox aber mit keil kompiliert. Alle Graphik Funktionen habe ich vom meine TFT Treiber konvertiert das die auch mit dem VGA Treiber funktioniere. Diese Demo lauft auf eine HY-STM32F407Core144 mit 8Mb PSRAM onboard. Aktuell ist noch viel zu tun das alle graphische Funktion alle zusammen funktioniere konnte und die Sprite ich gerade integrierte habe funktioniere gut ;) Ab ende muß das alles eine kleine graphics game Kernel sein , ich werde auch noch paar Video in Youtube machen wenn ich so weit bin. Tschuss. Fabrice. PS : sorry für meine schlechte Deutsch ;)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.