Forum: Mikrocontroller und Digitale Elektronik Bildschirmsteuerung (FBAS) mit Bascom


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Marius Schuster (Gast)


Lesenswert?

Guten Tag,

ich habe schon das halbe Internet durchforstet um Programme in bascom
basic zu finden, mit denen sich TV-Bildschirme als Anzeige nutzen
lassen.
Ich habe eine Schaltung gefunden (über drei ports gehen 3 Widerstände
zum TV) und Quelltext in Assembler.
Allerdings kann ich LEIDER kein Assembler und war nicht in der lage,
den Umzusetzen in basic.
Wenn mir jemand helfen kann, eine gute Sub-Routine (für Bascom)zu
finden um den Bildschirm als Anzeige zu nutzen, wäre das sehr sehr
hilfreich für mich.
Möglicherweise ist eine andere Schaltung notwendig, um den Bildschirm
gescheit anzusteuern..
Ich hab' zwar die Hoffnung schon aufgegeben, aber vierlleicht kann mir
ja doch noch einer helfen.
Vielen Dank im Voraus.

Marius Schuster

von Benedikt (Gast)


Lesenswert?

Bascom ist dazu einfach zu langsam, und eine Subroutine reicht nicht, da
sowas die gesamte Rechenleistung erfordert...

von ...HanneS... (Gast)


Lesenswert?

Hi...

Schau dir mal Schaltungen und ROM-Listings der alten 8-Bit Homecomputer
(Plus/4, C64, Atari XL, KC85 usw.) an.

Schau dir auch mal das Timing des TV an...

Meinst du, dass du dies ohne spezielle Hardware (Videochip) mittels
BASCOM und AVR realisieren kannst?

Bit- & Bytebruch...
...HanneS...

von stromi (Gast)


Lesenswert?

aber du könntest das doch kombinieren. ausgabe über die serielle
schnittstelle und dann auf videobausteine die es auch zb bei elv gibt
elv-osd modul.
tschaui
gucks du hier:
http://www.kh-gps.de/osd.htm
http://home.t-online.de/home/w.otterbach/osdmodul.htm
elv:

OSD-Modul, Komplettbausatz
Artikel-Nr.: 68-464-47     29,95 €
 Basisgerät, Komplettbausatz
Artikel-Nr.: 68-464-33

von Juergen (Gast)


Lesenswert?

Leider auch nur Assembler aber interessant
http://wiki.mikrocontroller.net/TV-out.htm und enthaltene Links

von Rahul (Gast)


Lesenswert?

"Pong" für den PIC...
Ist halt ne Grafik wie Telespiele zu Gründerzeiten, aber es geht.
Der Apple II hat meiner Meinung nach sein Videobild auch recht simpel
erzeugt.
Und meiner lief mit 1MHz... allerdings waren die Grafik-Routinen in
Assembler programmiert.
In der Firma, wo ich Praktikum gemacht habe, wurde ein OSD mittels PIC
realisiert (in ASM, Taktfrequenz war irgendein Vielfaches der
Videofrequenz / Syncimpulse zwecks Synchronisation, mittels PLL).
Basic ist vermutlich zu langsam. Effizient in C müsste was werden...
Gruß Rahul

von leo9 (Gast)


Lesenswert?

SW-Bild (also BAS-Signal) geht sich mit Avrs aus, kommt halt auf die
sonstige Rechenarbeit und (horizontale) Bildschirmauflösung an. Eine
Videozeile ist 64uS lang, bei 320 Bildpunkten (horizontal) müsste der
uP alle 200ns den Ausgang ansteuern. Mit 16MHz und sehr effektiver
Programmierung ist das machbar, allerdings nur in Assembler (da ist
sogar c chancenlos).

grüße leo9

von Bernd Schmidt (Gast)


Lesenswert?

@Rahul
Der Apple hat eine Handvoll TTL-Zähler für die Videosignal Erzeugung
benutzt. Die Daten wurdenzwischen den Zugriffen der 6502 aus dem Ram
geholt. Die Assemberroutinen hatte nur den Ram mit Daten zu füllen.

mfg Bernd

von Marius Schuster (Gast)


Lesenswert?

Also erstmal vielen Dank für die Antworten, damit hätte ich nicht
gerechnet.
Es schient mir tatsächlich große Probleme zu geben mit der Zeit,
weshalb Assembler wohl unerlässlich ist. Schade.
Vielleicht lassen sich C-Programme schreiben, dessen bildunterfunktion
in Assembler sind (Inline-Assembler) aber der rest vom Programm in C
ist.
Ich möchte versuchen, ohne zusätzlichen Chip auszukommen, da es sich
hierbei eh nur um ein Experiment im Rahmen meiner Ausbildung handelt.
Aber vielleicht lässt sich das weiter ausbauen.
Also danke nochmal.
Herzliche Grüße
Marius Schuster

von Andi (Gast)


Lesenswert?

In Bascom kann man auch Assenmbler Teile einfügen.

$asm
......
§end asm

von leo9 (Gast)


Lesenswert?

@andi

Du mußt aber in der Zeit des Syncimpulses und der vertikalen
Austastlücke alle Berechnungen durchführen und die Zeilendaten so
aufbereiten dass sie mit einzelnen Befehlen ausgegeben werden können
(damit wieder nur assemblercode).
Wenn dann die erste Zeile $asm und die letzte $end asm sind reduziert
sich Bascom zum Compiler und dann kann man gleich mit dem Studio
arbeiten.

grüsse leo9

von thkais (Gast)


Lesenswert?

Es gab irgendwo einen Link zu einem Projekt für eine Bingo-Anzeigetafel
auf dem Fernseher. Wenn ich mich recht entsinne, war das ein 2313 oder
sogar ein 2343, ohne viel Hardware drumherum. Ich finde den Link bloß
nicht mehr, vielleicht hat ihn ja noch jemand...

von Max (Gast)


Lesenswert?

In BASCOM?

Denn eine Lösung in Assembler hatte Marius ja schon im ersten Beitrag
gefunden.

von thkais (Gast)


Lesenswert?

Neee, nicht in Bascom - auch in Assembler. Aber an diesem Projekt könnte
man sich orientieren.
Assembler ist garnicht so schlimm. So weit ist es von Bascom zu
Assembler garnicht.

von Max (Gast)


Lesenswert?

Ich weiß dass Assembler nicht so schlimm ist, ich prog. AVR nur in
Assembler, für C oder BASCOM bin ich zu doof.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.