max7456 (On Screen Display) (Code + Platine)
Montag, 21. Mai 2012
 
 

PIC Mikrocontroller Forum  |  PIC Mikrocontroller  |  Beispielcodes und Projekte  |  max7456 (On Screen Display) (Code + Platine) « vorheriges nächstes »
Seiten: [1] Nach unten Drucken
Autor Thema: max7456 (On Screen Display) (Code + Platine)  (Gelesen 5598 mal)
 
theborg
Full Member
***
Offline Offline

Beiträge: 216



Profil anzeigen WWW
« am: April 28, 2008, 00:12:33 »

Hi bin gerade dabei ne Remote Station für einige Geräte zu Bauen, mit Ausgabe über OSD diese möchte ich hier mal veröffentlichen also die Schaltung gibs unter

http://www.grautier.com/grautier/index.php?/archives/60-C2OSD-V1.0.html#extended

Zudem habe ich schon etwas von der ansteuerung fertig das ausgeben klappt mit den unten stehenden Befehlen.

Code:
max7456_conf ; Max7456 Config
movlw 0x00 ; VM0 Video Mode Register 0 (Write)
movwf SPI_DATA_WRITE
call SPI_Send
movlw B'01001000' ; 0 , 1=PAL, 00=Auto Sync, 1=Enable OSD, 0=Enable OSD immer, 0=SW RST, 0=Enable Video Buffer
movwf SPI_DATA_WRITE
call SPI_Send
movlw 0x01 ; VM1 Video Mode Register 1
movwf SPI_DATA_WRITE
call SPI_Send
movlw B'00000100' ; 0 = NA, 000=Background MODE Brightness 100%, 11=Blinking Time 160ms, 00=Blinking Duty Cycle BT:BT
movwf SPI_DATA_WRITE
call SPI_Send
movlw 0x02 ; HOS Horizontal Offset Register
movwf SPI_DATA_WRITE
call SPI_Send
movlw B'00111111' ;00 = NA, 000000 = Horitzontal Offset
movwf SPI_DATA_WRITE
call SPI_Send
movlw 0x03 ; HOS Vertical Offset Register
movwf SPI_DATA_WRITE
call SPI_Send
movlw B'00111111' ;00 = NA, 000000 = Vertical Offset
movwf SPI_DATA_WRITE
call SPI_Send
return

max7456_cls ; max7456 ausgabe Löschen
movlw 0x00 ; VM0 Video Mode Register 0 (Write)
movwf SPI_DATA_WRITE
call SPI_Send
movlw B'01001010' ; 0 , 1=PAL, 00=Auto Sync, 1=Enable OSD, 0=Enable OSD immer, 1=SW RST, 0=Enable Video Buffer
movwf SPI_DATA_WRITE
call SPI_Send
call max7456_conf
return

max7456_add_high ; High adressbereich
movlw 0x05 ; Ersten 256 zeichen Low = 0x00, Letzten 256 Zeichen High=0xff
movwf SPI_DATA_WRITE
call SPI_Send
movlw 0xFF
movwf SPI_DATA_WRITE
call SPI_Send
return

max7456_add_low ; Low Adressbereich
movlw 0x05 ; Ersten 256 zeichen Low = 000, Letzten 256 Zeichen High=225
movwf SPI_DATA_WRITE
call SPI_Send
movlw 0x00
movwf SPI_DATA_WRITE
call SPI_Send
return

max7456_send_char                               ; m_pos = Position mchar = Zeichen
movlw 0x06 ; Zeichen Position links nach rechts erste reihe 0-29, 30-......
movwf SPI_DATA_WRITE
call SPI_Send
movf m_pos, W
movwf SPI_DATA_WRITE
call SPI_Send
movlw 0x07 ; Zeichen Sonderzeichen sihe Define in max7456.inc
movwf SPI_DATA_WRITE
call SPI_Send
movf m_char, W
movwf SPI_DATA_WRITE
call SPI_Send
return

Ein kleines Bild hab ich auch noch.



* RIMG0008.JPG (358.8 KB, 1280x960 - angeschaut 648 Mal.)
« Letzte Änderung: April 28, 2008, 00:29:19 von theborg » Gespeichert

Stampede
Globaler Moderator
Hero Member
*****
Offline Offline

Beiträge: 969



Profil anzeigen WWW
« Antworten #1 am: April 28, 2008, 00:31:28 »

Hey,

das ist ja mal cool. Sowas wollte ich auch schon immer mal versuchen.
Schleift man das einfach ins Fernsehkabel ein  oder wie funktioniert das genau? (hab mir das Datenblatt noch nicht angeschaut)

Gruß

Stefan
Gespeichert

theborg
Full Member
***
Offline Offline

Beiträge: 216



Profil anzeigen WWW
« Antworten #2 am: April 28, 2008, 00:46:36 »

Ja im Prinzip ist des recht einfach das Signal wird in den Chip eingespeist und der max7456 moduliert dann die zeichen auf natürlich leuft er auch ohne ein anderes Signal als signalquellen gehen NTSC/PAL und FBAS/CVBS wenn man RGB verarbeiten möchte kann man noch nen ad725 zur Wandlung benutzen.

Gespeichert

theborg
Full Member
***
Offline Offline

Beiträge: 216



Profil anzeigen WWW
« Antworten #3 am: Juni 19, 2008, 15:07:36 »

Hi ich hab nen kleine Problem ich möchte nen eignenden charset in den MAX schreiben diese geht auch allerdings hab ich das nur mit der Methode versucht wie ich auch die config für den chip setze (erster Post) gibs da ne möglichkeit das das irgendwie anders geht also ne art Tabelle wo dann einfach alle daten der reihe nach gesendet werden ?

Da der Max7456 des dauerhaft speichert mache ich des eh in einem extra Programm für den pic nur so ist des etwas umständlich voraledem bei 1024bit die gesendet werden müssen Adressbits + die einzelnen bits für die Pixel.
Gespeichert

Seiten: [1] Nach oben Drucken 
« vorheriges nächstes »
Gehe zu:  

Powered by MySQL Powered by PHP Made for Mozilla (Firefox) Made for Internet Explorer
Seite erstellt in 0.039 Sekunden mit 18 Zugriffen.
 
Top! Top!