Hallo zusammen Ich machte mir Gedanken mit einem MIcrocontrolle ein TV-Terminal zu machen um ein Bild in voller TV-Qualität auf dem Fernseher darzustellen. wieviel RAM brauche ich? Ich nehme an dass man für jeden Bildpunkt (RGB) schon 3 Byte braucht? 625 Zeilen soll ein Fernsehbild haben kann aber nirgends nachlesen wieviel Spalten es sind. Spalten gibt es vermutlich ja keine da es Analog ist? Wer kennt sich damit aus? Möchte was selbermachen und nicht unbedingt kaufen. CPLD/FPGA möchte ich nicht verwenden.Welcher uc wäre dazu geeignet? Gruss Zirrus
>wieviel RAM brauche ich? >625 Zeilen soll ein Fernsehbild haben kann aber nirgends nachlesen >wieviel Spalten es sind Na überleg mal, welches Seitenverhältniss hat den dein TV Bild? Wieviel Spalten würdest du daher sinnvollerweise nehmen?
Normal sind 768x576 bei PAL. Je nach Empfangsqualität bekommt man mit analogen Geräten auch noch mehr Spalten hin. Macht also 768x576x2 (bytes/pixel), also ~880kB. Da kommst du mit'm uC wahrscheinlich nicht weit.
Hallo I_ H. Demfalls sind wird für die Farbe pro Pixel also 2 Byte verwendet. Also gar kein RGB? Also müsste ich einen 16Bit DA-Wandler nehmen für die Ausgabe? Denn ich will wie Ausgabe nicht über Scart machen sondern über das normale Antennenkabel. Da ich 880kB SRAM brauch könnte ich ja ein externes SRAM anschliessen welches genug schnell ist dass ich in nützlicher Zeit schreiben und lesen kann.
16bit sind auch RGB, glaub 5 bit rot, 6 bit grün und 5 blau. Wenn du das Bild mit'm uC auf den Fernseher bekommen willst, brauchst du garnet weitermachen, dafür ist der uC zu langsam. Du hast da auch gleich mehrere Probleme: - ein AVR kann 800kb nicht direkt adressieren, also muss banking/segmentierung her (über 4 extra IO Ports) - die Daten wollen auch recht flott zum Fernseher, effektiv (ist ja interlaced) sind's 22MB/sek. Nun rechne mal, 16 bit sind ein Symbol, also hast du 'ne Symbolrate von 11MBaud. Bei 22MHz AVR Takt musst du also alle 2 Takte 16 Bits auf die IO Ports gegeben haben - Da du über/unter dem Bild noch schwarze Zeilen hast, und links/rechts außerhalb noch schwarze Spalten reichen die 11MBaud sowieso nicht - und schließlich brauchst du noch SRam mit <25ns Zugriffszeit, und dann auch gleich 880kB Also Bild im AVR speichern geht mit viel Mühe. Den AVR das Bild direkt auf'm Fernseher anzeigen lassen: vergiss es
Und mit Parallax Propeller? Kann ja angeblich auf VGA ausgeben.
Hab mal kurz gesucht und das gefunden: max. 80MHz, 32k ram, 32k rom Klingt für mich auch nach 64kB Adressraum, also am Stück kannst du die 880kB nicht adressieren. Das Timing ist auch mit dem Teil sehr sehr knapp. Rechne mal mit 20MSamples/sek, dann hast du 4 Takte in denen du 16bit raushauen musst. Wenn's ein 8bitter ist, hast du für 8bit grad mal 2 Takte. Wenn man es klug anstellt, kann man zwischen den einzelnen Bänken umschalten während der Strahl links/rechts außerhalb vom Bild ist (Bild nicht am Stück im Speicher ablegen). Die 16bit machen sich zum sequenziellen Auslesen schon ganz gut, den DAC wirst du aber mit einzelnen Widerständen aubauen müssen. Für die Ansteuerung von einem externen DAC ist keine Zeit. Das größte Problem ist der Befehlssatz. In 4 Takten musst du 2mal Inkrement machen, 2 Speicherstellen lesen und 2 schreiben. Mit 'nem nicht superskalaren RISC (was der Propeller wohl sein wird) kannst du das gleich vergessen, mit (nicht superskalarem) CISC wäre es unter Umständen möglich. Aber selbst wenn das machbar ist (was ich nicht glaube), das ist 'ne echte Aufgabe. Mach das doch einfach mit diskreter Logik, dürfte vom Umfang her überschaubar sein, und schnell genug ist es auch. Wenn du dir zB. SRam mit 16bit Anbindung holst, brauchst du für die Adresserzeugung nur ein paar kaskadierte Zählbausteine. Die lässt du in den unteren Bits dann zB. immer von 0 bis 2048 zählen, die oberen gibst du für jede Zeile extra mit'm uC vor. Dann brauchst du noch eine Resetlogik, die dafür sorgt, dass der Zähler bei einem bestimmten Wert auf 0 zurückgeht, 'nen Multiplexer damit du die unteren Adressbits auch per uC ansteuern kannst (irgendwie müssen die Daten ja erstmal in den Ram), und ein Enable für der Zähler, damit du den auch anhalten kannst (zB. Spalten/Zeilenrücklauf). Die Logik musst du dann nur mit etwa 20MHz takten. VGA ist was anderes als TV. Als VGA geht nämlich auch 320x240x8bit durch, oder 300x200x4bit. Letzteres wären grad mal 1.8MB/sek (bei 60hz).
Der Propeller ist ein bisschen ein ungewöhnliches Konzept, für den Einsteiger nicht so geeignet. Du kaufst ja auch nicht dein erstes Auto mit Ionenantrieb. Wenn Du ein bisschen Hardware um dein RAM rum baust, ähnlich wie bei einer Grafikkarte, dann wird es gehen. Dann läuft die Bildsignalerzeugung sozusagen vollautomatisch, ohne Zutun des µC. Guck mal den 6845 an. Für einigermassen statische Bildinhalte mag das gehen, aber wenn du 50 mal pro Sekunde ein komplett neues Bild im RAM haben willst, geht das nicht mit einem µC. Ins Antennenkabel heisst, du brauchst noch einen HF-Modulator.
Wie es ausschaut ist es doch mindestens so aufwendig wie ich zuerst dachte. Vermutlich wäre eine Steuerung mit diskreter Logik welche über einen AVR angesteuert wird am besten. Ich dachte so was gehe ohne HF-Modulator da ich mal in Elektor ein einfaches s/w Tennisspiel gesehen habe? Ich will kein Video abspielen, nur was Anzeigen und bei Bedarf was ändern. Vielleicht noch einfache bewegliche Grafik.
Zirrus wrote: > Ich dachte so was gehe ohne HF-Modulator da ich mal in Elektor ein > einfaches s/w Tennisspiel gesehen habe? Da war dann aber auch Schwarzweis, und hatte nur eine Auflösung von wenigen 100x100 Pixel oder nochweniger. Außerdem wird die Ausgabe meist auch speziell dafür angepasst. Man baut das Bild also nicht in einem Speicher auf, sondern setzt die Blöcke direkt bei der Signalerzeugung.
Kannst auch 8-bit-Palette (256 Farben aus 18-bit Farbraum) nehmen, dann ist's nur noch die Hälfte. Passende DACs kann man aus alten Grafikkarten schlachten. Oder gleich die Grafikkarte ansteuern.
> Ich dachte so was gehe ohne HF-Modulator da ich mal in Elektor ...
Geht definitiv nicht. Das was zum Antenneneingang reinkommt, wird
erstmal auf eine Trägerfrequenz im Bereich hunderte MHz untersucht, und
ohne die läuft gar nichts.
So ein HF-Modulator ist aber einfach zu machen, wenn es nicht schön oder
genau sein muss. Gibts auch fertig für wenig Geld.
Texte oder einfache kleine Grafiken bekommt man mitm AVR schon hin, jedoch kannst du nicht frei zeichnen es muss schon vorher ungefähr feststehen was wo landen soll. Ein OSD Menü z.b. kann man hinbekommen. Oder solche einfachen Spiele wie snake oder dieses Ping Pong o.ä. Farbe ist auch möglich aber nur ein paar Farben und recht aufwendig zu berechnen. Graustufen sind da wesentlich einfacher. Dazu betreibt man den AVR mindestens mit 16 Mhz, Bastelt eine kleine Synchronimpulserkenung dazu gibts entweder IC´s von Maxim die man an die externen Interrupts hängt oder man bastelt ne kleine Analogschaltung mit der man sich über den Analogkomperator Interrupts generieren lassen kann. Die Ausgabegeschwindigkeit bekommt man über die SPI hin, dabei muss man aber recht effizient Programmieren.
> Ich dachte so was gehe ohne HF-Modulator da ich mal in Elektor ein > einfaches s/w Tennisspiel gesehen habe? Da verwechselst du was. Anntenneneingang nicht gleich Video-Composit-Eingang.
Mit einem Mikrocontroller ist es wohl derzeit noch nicht möglich ein farbiges PAL-Videosignal in 768*576 @ 16Bit zu erzeugen ... Mit FPGAs sieht die Sache anders aus, denn da hab ich vor einiger Zeit eine Art Grafikkarte für Microcontroller gebastelt. Der FPGA erzeugt ein 780*576 @ 16Bit PAL-Videosignal ... [1] Zu deiner eigentlichen Frage: Mein PAL-Encoder ist mit 1MB Bildschirmspeicher ausgestattet. Ich hab pro Pixel 2 Byte (=16Bit im 5:6:5 Format), brauch also mindestens 878kB Speicher. Mfg Thomas Pototschnig [1]: http://www.opencores.org/projects.cgi/web/graphiti/overview
>Mit FPGAs sieht die Sache anders aus, denn da hab ich vor einiger Zeit eine Art Grafikkarte für Microcontroller gebastelt.< Hut aber aber mit FPGA kenne ich micht nicht aus. Mit uc kann ich doch das eine oder andere umsetzen ,ausser eben ein gutes TV-Terminal wie es scheint.
Zirrus wrote: >> Mit FPGAs sieht die Sache anders aus, denn da hab ich vor einiger Zeit >> eine Art Grafikkarte für Microcontroller gebastelt. > > Hut aber aber mit FPGA kenne ich micht nicht aus. Mit uc kann ich doch > das eine oder andere umsetzen ,ausser eben ein gutes TV-Terminal wie es > scheint. Es lohnt sich in die Welt der FPGAs reinzuschnuppern ... Man kann viele tolle Sachen machen, die nicht oder nur sehr schwierig mit uCs umzusetzen sind :-) Mfg Thomas Pototschnig
>Es lohnt sich in die Welt der FPGAs reinzuschnuppern ... Man kann viele tolle Sachen machen, die nicht oder nur sehr schwierig mit uCs umzusetzen sind < Stimmt werde ich auch machen. Nur muss ich Schritt für Schritt vorwärts gehen und die FPGAs müssen noch ein bisschen warten.
Was ist das Geheimnis an diesen Geräten? http://www.tvterminal.de/ Die arbeiten ja auch mit AVR und sind denoch erstaunlich leistungsfähig?
Als Propeller Fan muss einfach mal einiges richtigstellen: I_ H. schrieb: "Hab mal kurz gesucht und das gefunden: max. 80MHz, 32k ram, 32k rom Klingt für mich auch nach 64kB Adressraum, also am Stück kannst du die 880kB nicht adressieren. Das Timing ist auch mit dem Teil sehr sehr knapp. Rechne mal mit 20MSamples/sek, dann hast du 4 Takte in denen du 16bit raushauen musst. Wenn's ein 8bitter ist, hast du für 8bit grad mal 2 Takte. Wenn man es klug anstellt, kann man zwischen den einzelnen Bänken umschalten während der Strahl links/rechts außerhalb vom Bild ist (Bild nicht am Stück im Speicher ablegen). Die 16bit machen sich zum sequenziellen Auslesen schon ganz gut, den DAC wirst du aber mit einzelnen Widerständen aubauen müssen. Für die Ansteuerung von einem externen DAC ist keine Zeit." Also der Propeller ist kein 8bitter sondern er besteht aus 8 parallelen 32bit Prozessoren, jeder mit etwa 20 MIPS, die auf ein globales 32 kByte RAM zugreifen können! Er hat einen speziellen Videoshifter bei jedem Prozessor (also 8 mal) eingebaut, der mit 32bit Werten gefüttert wird und diese dann mit Farbinformationen zu einem FBAS Signal verwandelt und rausschiebt. Am Ausgang braucht man nur eine 3-bit DAC aus 3 Widerständen, und hat das fertige Video Signal inclusive Farbmodulation. Mehr noch: es ist möglich das FBAS Signal noch auf einen Träger aufzumodulieren (Kanal 1 oder 2), und kann dann direkt in den Antenneneingang gehen, oder noch besser ein Stück Draht als Antenne und einfach durch die Luft zum TV. Dazu ist kein einziges zusätzliches Bauteil notwendig. Allerdings erreichst du natürlich nicht 768x576 Pixel mit 24bit Farbe, das ist schon wegen dem RAM nicht möglich. Realistisch ist 320x200 mit 4 Farben . Die 4 Farben werden aus ca. 256 möglichen für jeweils 16 Pixel ausgewählt. So was benötigt 12 kByte wenn Grafik gewünscht ist. Soll nur Text dargestellt werden, so hat der Propeller ein Character Set im ROM, und du brauchst nur noch ca. 1-2kByte im RAM um die Zeichen auszuwählen. Tom schrieb: "Der Propeller ist ein bisschen ein ungewöhnliches Konzept, für den Einsteiger nicht so geeignet. Du kaufst ja auch nicht dein erstes Auto mit Ionenantrieb." Ungewöhnlich - JA. Aber für den Einsteiger nicht so geeignet - NEIN. Der Propeller ist sehr einfach zu programmieren, wenn man sich auf die Sprache Spin beschränkt, und vorgefertigte Objekte einbindet. Viel einfacher als C z.B. Erst wenn man mehr will, muss man sich mit Assembler und der genauen Architektur beschäftigen. Es gibt dutzende fertiger Objekte für TV und VGA Ausgabe von Graphik und Text. Und diese benötigen 2-3 Prozessoren, so dass man noch genügen Resourcen hat um auch gleich ein PS2 Keyboard und eine Maus abzufragen, Bilder ab eine SD Karte zu laden usw. Alles mit ein paar Spin-Zeilen, ohne tiefere Kenntnisse. So jetzt ist mir wohler - und ich arbeite nicht etwa für Parallax, dem Hersteller des Propeller Chips, nur finde ich dieser Chip wird total unterschätzt. Gruss Andi
Hallo Andi Ich interessiere mich ebenfalls für ein ähnliches Projekt und der Propeller finde ich auch interessant. Hast du vielleicht ein paar interessante Links zu einem TV-Terminal (mit einem Propeller) was einfach zu verstehen ist? MfG Pozo
Hallo Pozo Die freie Programmierumgebung zum Propeller enthält einige Beispiele zu Keyboard, TV und Serielle Ein/Ausgabe. Sie heisst Propeller Tool und kann hier heruntergeladen werden: http://www.parallax.com/ProductInfo/Microcontrollers/PropellerDownloads/tabid/442/Default.aspx Eine Webseite mit einem Terminal Projekt kenne ich gerade nicht (meist ist Tastatur und TV Ausgabe nur ein kleiner Teil von grösseren Projekten) aber hier ein Codebeispiel auf dem man aufbauen kann, und das zeigt wie einfach es sein kann:
1 | ' TV Terminal Demo |
2 | |
3 | CON _clkmode = xtal1 + pll16x ' Quartz und PLL definieren |
4 | _xinfreq = 5_000_000 |
5 | |
6 | OBJ kb : "Keyboard" |
7 | tv : "TV_Text" |
8 | ser: "FullDuplexSerial" |
9 | |
10 | PUB Main | k |
11 | |
12 | tv.start(12) ' start the TV display on Pin12..14 |
13 | kb.start(26, 27) ' start the keyboard on Pin 26,27 |
14 | ser.start(31, 30, 0, 9600) ' start UART 9600 Baud 8N1 Pins 31,30 |
15 | |
16 | repeat
|
17 | if kb.gotkey |
18 | k := kb.getkey ' empfangene Tasten seriell ausgeben |
19 | ser.tx(k) |
20 | tv.out(k) ' mit Echo |
21 | k := ser.rxcheck |
22 | if k > 0 |
23 | tv.out(k) ' seriell empfangene Zeichen anzeigen |
Dieses Beispiel läuft genau so in die IDE kopiert, ohne irgendwelche Zusätze, alle eingebundenen Objekte gehören zur Standard Library der oben erwähnten Propeller Tool IDE. Wie du vielleicht bemerkst kann man die meisten Objekte für beliebige Pins konfigurieren, und man kann sie auch mehrfach an verschiedenen Pins verwenden. Andi
Sowas wie ein diskreter RAMDAC klingt ja eigentlich recht gut. Würd mich mal zum rumspielen interessieren. Weiss zufällig jemand ob soetwas schon irgendwie im Netz rumschwirrt? Könnt einem ja doch die ein oder andere Stunde Hirnschmalz ersparen. greets, Jens
Übrigens kommt man mit 256 darstellbaren Zeilen ganz brauchbar hin. Auf Zeilensprung wird man für eine einfache Darstellung ohnehin eher verzichten wollen, da hat man also nur noch 312 Zeilen insgesamt. Die Differenz zu 256 ist dann die Bildaustastlücke (Strahlrücklauf von unten nach oben). Mit ebendiesen 256 Zeilen haben früher die typischen Computer gearbeitet, die ihr Videosignal auf einen Fernseher ausgegeben haben. Wenn man als Seitenverhältnis 4:3 annimmt, hätte man 341 Spalten und knapp 64 Ki Bildpunkte. Andererseits haben ebendiese Computer- adapter dazumals schon auch 64 Zeichenpositionen je 8 Pixel darstellen können, also 512 Pixel. Damit käme man auf 128 Ki Pixel. Alles aber immer noch mehr als das, was man ohne memory banking an einen AVR als RAM dranklemmen kann.
Hallo Andi Ich bin eigentlich erstaunt mit wie wenig Code man mit diesem Propeller was umsetzen kann. wie einfach dies nun ist kann ich nicht beurteilen aber irgendwie ist dieser Chip interesant für mich. Leider habe ich bis jetzt noch kein brauchbare Bild gesehen wie es ausschaut wenn Grafi man auf den TV (Antenneneingang) ausgibt. Hat vielleicht jemand so eine Beispiel gesehen? Gruss Pozo
Zirrus wrote: > Was ist das Geheimnis an diesen Geräten? > > http://www.tvterminal.de/ Keine vollen 768*576 ansprechbaren Pixel.
>Keine vollen 768*576 ansprechbaren Pixel.<
Ich habe diesen Konverter auch angeschaut. Sieht recht respektabel dafür
dass es ein ATMega8 ist.
768x576 Pixel machen doch, bei Übertragung per FBAS Video oder gar Antenne, gar keinen Sinn. Die horizontale Auflösung eines TV-Bildes beträgt dabei ca 160 unterscheidbare Pixel, darüber verwaschen sich die Pixel zu einem grösseren mit falscher Farbe. Nicht umsonst hatten Commodore64 und Co Fonts, die aus 2 Pixel breiten Linien bestanden (bei 320*200Pixel), weil es sonst zu seltsamen Effekten kommt. Etwas anders ist das natürlich wenn Filme oder Fotos dargestellt werden sollen, da macht höhere Auflösung schon Sinn. Aber für höher auflösenden Text oder Linien-Grafik sollte man einen VGA Monitor benutzen, und kein TV. @Pozo Ich habe mal versucht ein Bild von der Ausgabe eines Propellers mittels einer Antenne zum TV zu machen. Leider habe ich nur eine ganz billige Kamera ohne Macro. Durch vorhalten einer Lupe ergab sich dann doch ein Bild das wenigstens einige scharfe Stellen aufweist. Also Verzerrungen und verwaschene Darstellung am rechten Rand sind nicht so auf dem TV, sondern kommen nur von der Aufnahme! Und auch die Farben sind viel besser als auf dem Bild. Am Propeller ist nur ein Draht von 20cm und der Frenseher ist ein kleiner, tragbarer mit Antenne. Dieser lässt sich mit einem Drehregler stufenlos durch die Kanäle abstimmen, was vieles erleichtert. Antennen Eingang gibts nicht, darum durch die Luft von Antenne zu Antenne. Wichtig ist, dass man den Propeller mit einem PAL Quarz betreibt (4.43..MHz), da sonst Streifenmuster bei einigen Farben entstehen. Das heisst er läuft dann mit 71MHz Clock, und 8*17.7 MIPS. Die Trägerfrequenz auf die aufmoduliert wird, muss ein ganzzahliges Vielfaches der Quarzfrequenz betragen und es kommen eigentlich nur die Kanäle 2..4 (47..68MHz) in Frage. Laut Parallax ist dieser Video-Broadcast Mode nicht dazu gedacht um den Propeller dauerhaft an einen TV "anzuschliessen", sondern z.B. für Roboter um während dem, herumfahren drahtlos Daten anzeigen zu können. Und dafür taugt er allemal. Noch mal zur Erinnerung: An Hardware benötigt man gerade mal 3 Widerstände und ein Draht. Andi
Ich habe in der Zwischenzeit doch noch ein Bild gefunden. Sieht eigentlich gar nicht so schlecht aus wenn es klappt. http://ftp.parallax.com/forums/default.aspx?f=25&m=205116 Ich glaube ich kaufe mir so einen Propeller der macht mich noch ganz "verzückt". Kann man den auch ganz normal über die RS232-Schnittstelle programmieren oder ist man gezwungen den USB-Adapter von Parallax zu verwenden? Eigentlich müsste es ja auch ohne gehen. Weiss jemand gerade ob die Eingänge vom Propeller 5V-Tolerant sind? Grüsse Pozo
Ja diese Bilder zeigen es einiges besser als mein Billigfoto :) Der Parallax USB Adapter ist nur ein FT232RL den sie etwas teuer verkaufen. Ich habe mir das selber gebastelt. Es geht auch RS232 mit Pegelwandler auf 3.3V (MAX232 oder die Transistorschaltung im Propeller Datenblatt). 5V tolerant ist er nicht direkt, aber es braucht nur einen Vorwiderstand von ca. 1k..10k vor einem Eingang um 5V Signale anzuschliessen. Am günstigsten fährst du mit einem ProtoBoard (ca. 25 €) und selbstgebautem RS232 Interface. ProtoBoard erhälst du z.B. bei www.zerko.ch Gruss Andi
@ Andi (Gast) >Der Parallax USB Adapter ist nur ein FT232RL den sie etwas teuer >verkaufen. Ich habe mir das selber gebastelt. Es geht auch RS232 mit >Pegelwandler auf 3.3V (MAX232 oder die Transistorschaltung im Propeller >Datenblatt). Wozu einen Multikernprozessor wenns ein kleiner AVR locker tut? Beitrag "AVR ASCII Video Terminal - 40 x 25 - BAS Signal" MfG Falk
>Wozu einen Multikernprozessor wenns ein kleiner AVR locker tut?< Ja schon, nur ich habe aufgehört Assembler zu programmieren das es mir zu auf wendig ist. Ich möchte in Zukunft nur noch in einer Hochsprache Programmieren solche Programme kann man auch in einem Jahr lesen und versteht sie. OK es gibt auch mit dem AVR ein Beispiel welches in C-Geschrieben wurde aber da bleibt nicht mehr viel übrig. Leider fehlt die Farbe beim AVR. Ein bisschen Farbe wäre schon schön. Gruss Pozo
"Wozu einen Multikernprozessor wenns ein kleiner AVR locker tut?" Vielleicht, weil: - Du Farbe möchtest - auch Grafik darstellen willst - ein moduliertes VideoSignal für Antenneneingang möchtest - alternativ auch VGA darstellen willst - gleichzeitig Tastatur und Maus abfragen möchtest - und vor allem: Daneben ja noch eine Anwendung laufen lassen möchtest, die die Anzeige auch sinnvoll einsetzt, diese vielleicht Messwerte verarbeiten muss, oder komplizierte Grafikberechnungen durchführen soll. Das geht mit dem Propeller eben alles auf einem Chip. Und die parallelen Prozessoren machen solche Anwendungen nicht komplizierter, sondern einfacher! Gruss Andi P.S. bin auch ein AVR Anhänger, wenns um kleine einfache Anwendungen geht, wo ein Propeller zu teuer ist.
@ Pozo (Gast) >Ja schon, nur ich habe aufgehört Assembler zu programmieren das es mir >zu auf wendig ist. Du hast aufgehört zu denken, weil es zu anstrengend ist? Klar programmiert man die meisten Sachen sinnvollerweise in einer Hochsprache, aber für solche sehr zeitkritischen Dinge muss es eben Assembler sein. So what. @ Andi (Gast) >"Wozu einen Multikernprozessor wenns ein kleiner AVR locker tut?" >Vielleicht, weil: >- Du Farbe möchtest >- auch Grafik darstellen willst >- ein moduliertes VideoSignal für Antenneneingang möchtest Ob das der Propeller schafft wage ich zu bezweifeln ;-) >- alternativ auch VGA darstellen willst Kann der AVR auch, muss man nur separate Sync-Signale erzeugen, die jetzt im Videosignal mit drinstecken. >- gleichzeitig Tastatur und Maus abfragen möchtest Kann der AVR auch, schliesslich arbeitet er als Terminal. Und sowas macht man ja auch sinnvollerweise mit einer CPU? Komisch, der Rest der Welt nimmt dafür einen Grafikchip. Der kann das gleiche leisten bei wesentlich weniger Takt und Leistungsaufnahme. Beitrag "High-Quality PAL-Grafikkarte für µCs" >- und vor allem: Daneben ja noch eine Anwendung laufen lassen möchtest, >die die Anzeige auch sinnvoll einsetzt, diese vielleicht Messwerte >verarbeiten muss, oder komplizierte Grafikberechnungen durchführen soll. >Das geht mit dem Propeller eben alles auf einem Chip. Und die parallelen >Prozessoren machen solche Anwendungen nicht komplizierter, sondern >einfacher! Ist dennoch eine rein akademische Spielerei. Ganz nett, aber praktisch ohne Bedeutung. MFg Falk
@ Pozo Um den Propeller voll auszunutzen, muss man ihn auch in Assembler programmieren.. @ Falk Brunner >Ob das der Propeller schafft wage ich zu bezweifeln ;-) Dann schau mal ein paar Beispiele an: http://www.youtube.com/watch?v=_MMAMRoURcI http://www.youtube.com/watch?v=kA8sq_7nYlE http://www.youtube.com/watch?v=EjkXokgcBZw http://www.youtube.com/watch?v=pV7-twaYG84 >>- alternativ auch VGA darstellen willst >Kann der AVR auch, muss man nur separate Sync-Signale erzeugen, die >jetzt im Videosignal mit drinstecken. Für VGA mit 1024*768 brauchst du >40MHz Pixelclock, das halte ich für unmöglich mit einem AVR. Der Propeller kann bis ca. 160MHz Pixelclock wenns sein muss. >Und sowas macht man ja auch sinnvollerweise mit einer CPU? Komisch, der >Rest der Welt nimmt dafür einen Grafikchip. Der kann das gleiche leisten >bei wesentlich weniger Takt und Leistungsaufnahme. Der Propeller ist eben auch ein Grafikchip (oder besser 8 Grafikchips). Weniger Takt und Leistung als der Propeller? Dieser benötigt ca. 12mA pro Prozessor bei voller Geschwindigkeit ! >Beitrag "High-Quality PAL-Grafikkarte für µCs" Diese Grafikkarte gefällt mir sehr, spielt aber in einer anderen Liga. 144Pin (0.5mm) FPGA, externes SRAM, 40 Euro Bauteil+Printkosten im Vergleich zu einem DIL-40 mit 3 Widerständen, wobei man den Propeller Chip eigentlich gar nicht mitrechnen darf, da du zum Ansteuern der Grafikkarte ja auch noch eine CPU brauchst. Dagegegen erreicht man natürlich nie die Qualität dieser Grafikkarte, die Video-Grafikfähigkeiten des Propellers sind etwa mit einem Commodore 64 vergleichbar. >>- und vor allem: Daneben ja noch eine Anwendung laufen lassen möchtest... >Ist dennoch eine rein akademische Spielerei. Ganz nett, aber praktisch >ohne Bedeutung. ??? - Eine Grafikausgabe ist normalerweise dazu da um das Ergebnis eines Programmes darzustellen. Das kann ein Spiel sein, eine Textverarbeitung, eine Messwertaufnahme, eine Klang Visualisierung... und Millionen andere Möglichkeiten. Ich finde das praktisch sehr von Bedeutung. Gruss Andi
@Falk Brunner
>Du hast aufgehört zu denken, weil es zu anstrengend ist?<
Nee weil Zeit Geld ist und ich keinen Luft habe unnötig viel Zeit für
was aufzuwenden wenn es auch mit einer Hochsprache in viel weniger Zeit
möglich ist. Und das Programm wird man auch noch in einem Jahr
verstehen. Ich bezweifle dass du nach einem Jahr deine Assemblerprogramm
ohne grossen Zeitaufwand noch verstehst.
@ Pozo (Gast) >verstehen. Ich bezweifle dass du nach einem Jahr deine Assemblerprogramm >ohne grossen Zeitaufwand noch verstehst. Aber sicher! Assembler != Spaghetticode Man kann in JEDER Sprache unleserlicj programmieren. MFG Falk
>Man kann in JEDER Sprache unleserlicj programmieren.<
Stimmt aber ich möchte nich versuchen deinen Code zu verstehen obwohl
ich nie behaupten würde dass dein code unleserlich ist..
Obwohl ich kein Superprogrammierer bin würdest du aber meinen Code in
Hochsprache eher verstehen, als ich oder viel andere deinen
Assemblercode.
Und um genau dies geht es mir.
@ Andi (Gast) >Dann schau mal ein paar Beispiele an: >http://www.youtube.com/watch?v=_MMAMRoURcI Auch zitieren will gelernt sein. >>- ein moduliertes VideoSignal für Antenneneingang möchtest >Ob das der Propeller schafft wage ich zu bezweifeln ;-) Mein Zweifel bezieht sich darauf, dass der Propeller ein Signal für den Antenneneingang direkt selber erzeugen kann. Das kann er sicher NICHT, denn die Antennensignale liegen je nach Kanal im VHF/UHF Band bei 150..300 MHz irgendwo. Farbe und Grafik ist klar. >Für VGA mit 1024*768 brauchst du >40MHz Pixelclock, das halte ich für >unmöglich mit einem AVR. Ja, das stimmt. >Diese Grafikkarte gefällt mir sehr, spielt aber in einer anderen Liga. >144Pin (0.5mm) FPGA, externes SRAM, 40 Euro Bauteil+Printkosten im >Vergleich zu einem DIL-40 mit 3 Widerständen, wobei man den Propeller >Chip eigentlich gar nicht mitrechnen darf, da du zum Ansteuern der >Grafikkarte ja auch noch eine CPU brauchst. Naja, der meiste Aufwand entsteht dadurch, dass das Signal als FBAS moduliert wird. Was eigentlich wenig sinnvoll ist, eine direkte RGB-Ansteuerung eines Monitors ist 10mal einfacher. Aber ein nettes Projekt, das die Leistungsfähigkeit moderner FPGAs als DSP eindrucksvoll demonstriert. >Dagegegen erreicht man natürlich nie die Qualität dieser Grafikkarte, >die Video-Grafikfähigkeiten des Propellers sind etwa mit einem Commodore >64 vergleichbar. R.I.P. ;-) >Möglichkeiten. Ich finde das praktisch sehr von Bedeutung. Im LCD Zeitalter? MFG Falk
@ Pozo (Gast) >Obwohl ich kein Superprogrammierer bin würdest du aber meinen Code in >Hochsprache eher verstehen, als ich oder viel andere deinen >Assemblercode. >Und um genau dies geht es mir. OK, hast Recht. Aber worauf ich hinauswollte ist, dass man eben für KLEINE, zeitkritische Dinge noch Assembler nimmt, der Rest halt in Hochsprache. MFG Falk
>OK, hast Recht. Aber worauf ich hinauswollte ist, dass man eben für >KLEINE, zeitkritische Dinge noch Assembler nimmt, der Rest halt in >Hochsprache. Dagegen habe ich auch nichts gesagt. Es ist auch nicht so dass ich Assembler aufgebe, aber ich werde Assembler so selten wie nötig verwenden.
@Falk Brunner Es war nicht klar das sich deine Bedenken auf die HF-Modulation beziehen. Um so mehr ich das, in diesem Thread, 14 Beiträge zuvor doch genau beschrieben habe, und sogar versucht habe ein Foto davon zu machen. Glaub mir: es geht. Zumindest auf den Knälen 2,3,4 evt auch noch bei 150MHz, da die (16!) PLLs des Propellers bis 160 MHz gehen. >R.I.P (C=64) Einige sind da anderer Ansicht ;) Aber sollte auch nur ein Vergleich sein, mit etwas das viele kennen (kannten). >LCD Zeitalter Wenn du mir ein LCD mit mind. 320*200 Auflösung nennen kannst, das mit 3...5 Pins ansteuerbar ist, mind. 7 Zoll gross ist, und fast nichts kostet, bin ich sofort bereit dafür die TV und VGA Ausgabe des Propellers aufzugeben. Ich kenne da nur Handy-Displays, aber die sind für viele Fälle einfach zu klein. Gruss Andi
@ Andi (Gast) >Glaub mir: es geht. Zumindest auf den Knälen 2,3,4 evt auch noch bei >150MHz, da die (16!) PLLs des Propellers bis 160 MHz gehen. Theoretische Überlegung oder real nachgewiesen? [ ] Du kennst den Unterschied zwischen analoger Modulation und einem digitalen Takt. Von einer halbwegs brauchbaren Filterung mal ganz zu schweigen. MFg Falk
Andi wrote: >>LCD Zeitalter > Wenn du mir ein LCD mit mind. 320*200 Auflösung nennen kannst, das mit > 3...5 Pins ansteuerbar ist, mind. 7 Zoll gross ist, und fast nichts > kostet, bin ich sofort bereit dafür die TV und VGA Ausgabe des > Propellers aufzugeben. Jedes beliebige Notebook TFT: Auflösung >=1024x768, meist 14" oder größer, Kosten: mit etwas Glück garnichts, Ansteuerung via 4-5 LVDs Leitungen.
>Kosten: mit etwas Glück garnichts,
Da muss ich und Millionen anderen aber recht unglücklich sein.
Falk Brunner fragte: "Theoretische Überlegung oder real nachgewiesen?" Real nachgewiesen auf Kanal 2 von Propeller mit Antenne zu kleinem tragbaren Ferneseher ebenfalls mit Antenne. Der Propeller macht die Modulation per Hardware vor dem DAC darum ist das Signal nicht einfach digital verknüpft sondern analog amplitudenmoduliert. @Benedikt K. Und wie wird so ein TFT angesteuert? Doch mit einem VGA ähnlichen Signal. Damit hätten wird uns dann einmal voll im Kreis gedreht :) Genau das Ansteuern eines VGA LCD Monitors ist doch durch den Propeller so einfach. Und ich benutze dazu einen ausgedienten 14 Zöller der mich gar nichts gekostet hat. Oder alternativ ein Fernseher, wenns drahtlos sein soll. Aber Falk findet es ja völlig unnötig, dass ein Prozessor auch eine Grafik-Hardware eingebaut hat, im heutigen LCD Zeitalter. Gruss Andi
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.