Archiv verlassen und diese Seite im Standarddesign anzeigen : Wieviele "bilder" passen in einen Mega32 ?
BlaueLed
12.09.2005, 23:17
Hallo,
ich weiß es klingt vielleicht etwas komisch, aber mich würde mal interessieren, wieviel 240*64 Bilder in einen Mega32 passen. Wie kann ich das berechnen ? kann mir jemand einen tip geben ?
mfg Kay
ShadowPhoenix
12.09.2005, 23:37
Schau doch einfach, wie groß die einzelnen Bilder durchschnittlich sind, und vergleiche mit dem internen Speicher des Mega32...
Kommt auch drauf an, ob Farbe oder SW.
Ob Graustufen oder nicht.
Womit willst du die Bilder denn Anzeigen ? Monitor ? Grafikdisplay ?
Für Grafikdisplays gibt's ja den Grafik Konverter, der komprimiert auch..
Gruß
Christopher
und dann kommts noch drauf an, ob du die Bilder im sram, im eeprom oder im flash-Speicher ablegen willst...
ich weiß es klingt vielleicht etwas komisch, aber mich würde mal interessieren, wieviel 240*64 Bilder in einen Mega32 passen. Wie kann ich das berechnen ? kann mir jemand einen tip geben ?
Ohne Komprimierungt ergibt sich die Anzahl der Bit/Bild aus Breite*Höhe*Farbtiefe. Bei 8 bit Farbtiefe = 256 Farben wären das z.B. 122880 Bit, bzw. 15360 Byte, bzw. = 15 kByte.
Mit Komprimierung lässt sich der benötigte Speicherplatz pro Bild nicht vorhersagen, weil der vom verwendeten Algorythmus, der gewünschten Qualität und dem Inhalt des Bildes abhängt.
BlaueLed
13.09.2005, 12:22
Hallo,
entschuldigung, das ich mich nicht deutlich genug ausgedrückt habe. also ich will einfach nur SW Bilder mit der Größe von 240*64 mit Bascom auf einem 240*64 GLCD ( t6963C ) darstellen. Die bilder sollten im Flash speicher abgelegt werden.
vielleicht bemühst du deinen eigenen Taschenrechner?
Ohne Komprimierungt ergibt sich die Anzahl der Bit/Bild aus Breite*Höhe*Farbtiefe. Bei 8 bit Farbtiefe = 256 Farben wären das z.B. 122880 Bit, bzw. 15360 Byte, bzw. = 15 kByte.
Farbtiefe ist dann bei dir = 1 Bit, du kannst also 8 Pixel in ein Byte packen...
Dann brauchst du 240*64/8 Byte pro Bild.
Möglicherweise ist es günstiger die Bilder zu komprimieren mittels RLE, Huffmancode oder als Vektrografik.
Wenn du es geschafft hast, würde mich interessieren, womit du es gepackt hast und wie es in den flash gekommen ist.
3 Monate später und es scheint immer noch nicht zu klappen :(
Ich hab jetzt mal ein gLCD angeklemmt und ein Bild in den Flash zu bekommen geht auch. Aber komprimiert? Wie soll das geh'n?
Und wie funktioniert das ganze mit externen EEPROM's? Shwopice scheint sich ja nur auf den internen zu beziehen?!
Hehehe,ja es geht schon die Bilder in den Flash zu bekommen aber dafür muß man etwas um die Ecke denken.
ok,Extern ist eigentlich kein akt.
Unter Bascom ist ein Externes EEprom leicht anzusprechen.
Entsprechende Beispiele finden sich überall im Web,hier im Forum und wenn ich mich nicht täusche auch in den Beispieldateien bzw. den Apllikationsnotes bei Mcselec.
Zur Not kann ich auch mal nen Codeschnipsel ausgraben.
Wenn du nicht Bascom-Basic meinst dann gibt es auch genug Beispiele für andere Sprachen.
Mit Bascom das Bild in den Flash zu bekommen ging eigentlich relativ einfach. Das übernimmt Bascom ja selbst wenn man sagt welches Bild man haben will.
Allgemein einen externen EEPROM ansprechen stelle ich mir auch nicht so schwer vor. Aber wie ein Bild von dort auf's Display schicken?
Das geht genauso wie es Bascom selber macht.
Daten aussem EEprom holen und ins Display schreiben.
Adresse für Adresse.
Das Display ist ja im Grunde genauso aufgebaut wie jede Uraltgrafikkarte.
Tja, wie soll ich dir am besten erklären, was da mein Problem ist?
Ein paar Ausschnitte aus dem Programm, was zum allergrößten Teil vom Sample übernommen ist:
Showpic 0 , 0 , Plaatje
'This label holds the mage data
Plaatje:
'$BGF will put the bitmap into the program at this location
$bgf "lena.bgf"
'You could insert other picture data here
Lena.bgf war ein Teil eines JPG, das ich in BMP umgewandelt habe und 1 Bit Farbtiefe verliehen habe und mit Bascom umgewandelt habe das es ein BGF wird.
Dann legt Bascom die Daten der Datei im Flash mit ab und nach dem flashen oder beim Einschalten sehe ich meine Tochter aus'm LCD.
Soweit ist das ja noch recht einfach.
Wären die Daten im internen EEPROM, könnte ich diese mit Showpice anzeigen lassen.
Das habe ich aus Zeitmangeln noch nicht probiert. Werde ich auch frühstens erst am Wochenende und dran scheitern, das der interne EEPROM zu klein ist ;)
Aber ein kleineres Bild zum Testen tut's ja auch erstmal.
Mein Poblem ist jetzt, das ich kein Befehl gefunden habe um die Daten aus einem externen EEPROM zu nehmen.
Würde man das ganze in ASM programmieren, wäre es ja noch halbwegs nachvollziehbar.
ROM auslesen und die Bits auf die Datenleitungen legen (vereinfachte Version).
Aber wie mit Bascom machen?
Und was ist mit der hier angesprochenen Kompression? Wie geht das?
Das LCD hat 240X128 Punkte. Bei 1 Bit sind das rund 31000 Bits die gespeichert werden müssen. Damit ist ein kleiner Speicher schnell voll.
Ein paar Schlagwörter/Befehle würden mir schon weiter helfen.
Neine einen direkten befehl gibt es bei Bascom meines Wisens nach nicht.
Ich hole mir das Bild aus dem Externen Speicher und schreibe es Manuell ins Display.
Byte für Byte.
Das ist auch nicht länger oder wesentlich langsamer als die Eingebaute Routine die es übrigens genauso macht.
Was du rausfinden mußt ist wie man das Dipslay schreibt.
Das ist je nach Grafikcontroller unterschiedlich
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.