MAX7456의 메모리 및 EV 킷 파일 형식을 사용한 맞춤형 문자와 그래픽 생성
상태바
MAX7456의 메모리 및 EV 킷 파일 형식을 사용한 맞춤형 문자와 그래픽 생성
  • CCTV뉴스
  • 승인 2009.02.23 00:00
  • 댓글 0
이 기사를 공유합니다

MAX7456 메모리 구성 사용자 정의 문자 세트는 입력 비디오 스트림과 결합하여 CVBS 및 OSD 비디오 출력을 생성한다. 최대 256가지의 12 x 18 픽셀 문자를 저장할 수 있지만 동적으로 재프로그래밍 가능하다. 525 라인 모드에서는 13행(row) x 30자(character)가 표시되며, 625 라인 모드에서는 16행 x 30자가 표시된다. MAX7456 OSD에는 디스플레이 메모리와 비휘발성 문자 메모리(NVM)의 두 종류 메모리가 포함되어 있다.

개 요

MAX7456 단일 채널 온 스크린 디스플레이(이하:OSD) 발생기는 사용자가 실시간 비디오에 사용자 생성 그래픽을 오버레이 할 수 있게 해준다. MAX7456은 외부 비디오 드라이버, 싱크 분리기 및 비디오 스위치가 필요 없어 시스템 비용을 줄여준다. 이 소자는 525 및 625 라인 표준에 적합한 256개의 모노크롬 문자 프로그래밍이 가능하므로 모든 국가와 국제 시장에서 사용할 수 있다. 또한 임의의 폰트와 크기에 맞게 회사의 로고, 맞춤형 그래픽, 시간, 날짜 등의 정보를 간편하게 표시한다. 이 애플리케이션 노트에서는 MAX7456을 사용하여 맞춤형 문자와 그래픽을 생성하는 방법에 대해 설명한다. MAX7456 EV 킷을 위한 파일 형식도 제공된다.

디스플레이 메모리
디스플레이 메모리(SRAM)는 NVM 문자 메모리에 저장된 문자를 "가리키는" 480자 어드레스를 저장한다. 디스플레이 메모리의 내용은 SPI™ 호환 직렬 인터페이스를 사용하여 사용자 프로그래밍 가능하다. 디스플레이 메모리 어드레스는 모니터상의 고정 위치에 대응된다. 아래의 그림 1을 참조한다. 각 문자는 2바이트가 필요하다. 첫 번째 바이트에는 문자 메모리의 문자 번호가 포함되며(아래 내용 참조), 두 번째 바이트에는 그림 2와 같이 문자 속성 상태 바이트가 포함되어 있다. 문자는 왼쪽에서 오른쪽으로 위에서 아래로 번호가 매겨진다.

문자 메모리

비휘발성 문자 메모리는 디스플레이할 문자 또는 그래픽 이미지를 저장한다. 문자 메모리의 내용은 SPI 호환 직렬 인터페이스를 사용하여 사용자 프로그래밍 가능하다. 각 문자는 가로 12×세로 18 픽셀로 구성된다. 각 픽셀은 다음과 같은 2비트로 표시된다.
00 = 검정, 불투명,  01 = 투명,  10 = 흰색, 불투명,  11 = 투명 결과적으로 문자당 12×18 = 216픽셀이 존재한다. 1개의 8비트 바이트는 4픽셀을 설명한다. 따라서 각각의 문자는 216/4 = 54바이트 데이터를 필요로 한다(그림 3 참조). 간편한 어드레스 지정을 위해 메모리는 64바이트 블록으로 구성된다. 각각의 처음 54바이트는 1개의 문자를 설명하고 나머지 10바이트는 사용되지 않는다.  따라서 문자 메모리 길이는 64×256 = 16384바이트이다. 결과적으로 각 디스플레이 메모리 어드레스 위치에 포함된 번호는 실제로 선택된 문자에 대응되는 64바이트 블록의 어드레스이다.EV 킷의 그래픽 사용자 인터페이스(GUI)를 위한 소프트웨어
MAX7456 EV 킷에는 사용자가 소자를 제어하고 맞춤형 그래픽을 다운로드할 때 사용할 수 있는 GUI 소프트웨어가 제공된다.
소프트웨어와 관련된 파일은 MAX7456의 메모리와 유사하게 구성된다. 문자 메모리를 위한 데이터는 하나의 파일로 제공되며, 디스플레이 메모리를 위한 데이터는 다른 파일로 저장된다. 파일별 확장자는 다음과 같다.
- mdm Display Memory
- mcm Character Memory이들 ascii 텍스트 파일은 윈도우즈 메모장과 같은 일반 텍스트 에디터에서 볼 수 있다. 그러므로 각 라인은 ASCII 문자 리턴/라인 피드 시퀀스로 종료된다.디스플레이 메모리 파일의 구성
mdm 디스플레이 메모리 파일의 세그먼트는 아래의 그림 4와 같다.
그림 4에서 라인 1은 소자 유형 MAX7456을 제공한다. 라인 2는 비디오 표준 PAL 또는 NTSC를 제공한다. 라인 3은 관련된 문자 파일의 파일명 Duck.mcm을 표시한다. 라인 4 및 다음 라인은 스크린상의 각 위치에 문자를 제공하는 라인 쌍이다. 그림 1을 참조한다.
그러므로 여기서 x는 그림 1에서 문자 위치이며, 문자를 설명하는 라인은 다음에 의해 주어진다.n = 4 + 2 × x 문자 번호
n = 5 + 2 × x 문자 속성문자 속성은 그림 5에 나와 있다.
이 예에서,
디스플레이의 문자 0은 문자 메모리로부터 문자 1을 사용한다.
문자 0은 점멸, 반전 또는 투명하지 않다.
디스플레이의 문자 1은 문자 메모리로부터 문자 2를 사용한다.
문자 1은 점멸, 반전 또는 투명하지 않다.
디스플레이의 문자 2는 문자 메모리로부터 문자 2를 사용한다.
문자 2는 점멸, 반전 또는 투명하지 않다.
등.mdm 파일 길이는 비디오 표준에 의해 결정된다. PAL을 선택하면 파일은 480라인 쌍이 되며, NTSC에서 파일은 390라인 쌍을 갖는다.문자 메모리 파일의 구성
*.mcm 파일의 세그먼트는 그림 6에 나와 있다.
라인 1은 소자 유형을 제공하며, 라인 2와 다음 라인은 그림 3과 같이 픽셀을 정의한다. 이 예에서 문자 0의 각 픽셀은 "01" 즉, 투명으로 설정된다.문자 메모리를 위한 팁
문자 0의 각 비트를 반드시 "01"로 설정해야 하는 것은 아니다. 그러나 소자가 파워 업될 때 디스플레이 메모리는 디폴트 리셋에 의해 문자 0을 가리킨다. 따라서 파워 업 시 입력 비디오는 오버레이 오류 없이 통과된다. 소자의 초기화가 오류 없이 완료되면, 일반 문자를 정상적으로 오버레이할 수 있다.왜 픽셀은 회색 또는 투명으로 표시되는가
픽셀이 문자 메모리에서 투명으로 (메모리에서 "01" 또는 "11") 정의되면, 해당 픽셀은
여러 가지 조건에 따라 투명 또는 회색으로 표시될 수 있다.픽셀에 영향을 미치는 3가지 조건
속성 비트에 의해 디스플레이 메모리에 설정된 각 문자에 대해 정의되는 문자 레벨
비디오 모드 레지스터(비트 7, 레지스터 01)의 백그라운드 비트에서 정의되는 글로벌 레벨
외부 싱크 검출기 상태비트도 입력 비디오 싱크 검출의 상태에 따라 투명이 될 수 있다. 진리표(Truth Table)가 표 1에 제공된다. 이 표는 픽셀이 픽셀 레벨에서 투명으로 정의된다고 가정한 것이다. 투명이 아닌 경우 픽셀은 다른 모든 설정과 관계없이 검정 또는 흰색으로 표시된다. 물론 OSD 디스플레이가 켜짐(on)으로 설정되어 있을 때로 가정한 것이다.(1 = Yes, 0 = No) Global Background Mode Character Level Attribute Pixel Appearance
0 X X Gray
1 0 0  
1 0 1  
1 1 X Gray픽셀이 회색으로 표시되면, 밝기는 어드레스 위치 90H~9FH에서 레지스터 RB0~RB15를 사용하여 한 행씩 설정할 수 있다.문자 메모리 파일에서 픽셀 컬러 변환
EV 킷 파일의 구조를 이해하면 픽셀을 검정, 흰색 또는 투명 컬러로 쉽게 변환할 수 있다.
문자 메모리 파일은 액셀과 같은 프로그램에 의해 쉽게 변환된다. 아래의 그림 7에 이러한 예가 나와 있다. EV 킷 소프트웨어에 로드될 때 캡션은 다음과 같이 나타난다.
캡션 문자는 흰색 바탕에 검정색으로 써진다. 이 컬러 구조는 다음과 같은 간편한 방법으로 변환할 수 있다.
.mcm 파일을 액셀로 불러온다. 텍스트 파일인 .mcm 파일은 간단히 파일을 열면 임포트할 수 있다. 라인을 텍스트로 취급해야 한다는 사실을 기억하도록 한다. 그렇지 않으면 선행 제로가 삭제된다. 그러므로 임포트 시 칼럼 데이터 형식을 텍스트로 설정한다.
형식을 보존하려면 값의 칼럼을 새로운 스프레드시트에 복사하는 것이 가장 좋다.
이 라인들을 액셀 MID 함수를 사용하여 4×2 문자로 세분한다.
다음으로 2개의 문자 값을 변환한다.
라인을 재구성한다.
이제 원본 파일의 칼럼을 조립된 칼럼으로 대체하고 저장한다.
새로운 .mdm 파일을 EV 킷 소프트웨어로 로드하여 제대로 구현되었는지 확인한다.
이 예에서 모든 검정색 문자는 흰색으로, 모든 흰색 문자는 투명으로 변환된다. 결과는 다음과 같다."00"에서 "10"이 되고 - 검정색에서 흰색으로 변환
"10"에서 "01"이 되고 - 흰색에서 투명으로 변환
"01"은 변환되지 않음 - 투명은 변환되지 않음이러한 컬러 변환은 액셀에서 간단히 이루어진다. 형식을 보존하려면 결과를 원본 파일에 리턴 한다.
액셀 식은 간단하며 아래에 나와 있다. 칼럼 A는 원본 데이터이다.칼럼 B = MID (Ax, 1, 2) 문자 1에서 시작하는 2개 문자 선택
칼럼 C = MID (Ax, 3, 2) 문자 3에서 시작하는 2개 문자 선택
칼럼 D = MID (Ax, 5, 2) 문자 5에서 시작하는 2개 문자 선택
칼럼 E = MID (Ax, 7, 2) 문자 7에서 시작하는 2개 문자 선택
칼럼 F = IF(Bx="00","10",IF(Bx="10","01",Bx))
칼럼 G = IF(Cx="00","10",IF(Cx="10","01",Cx))
칼럼 H = IF(Dx="00","10",IF(Dx="10","01",Dx))
칼럼 I = IF(Ex="00","10",IF(Ex="10","01",Ex))
"00"을 "10"으로 또는 "10"을 "01"로 대체
칼럼 J = CONCATENATE(F2,G2,H2,I2) 새 워드 구성형식을 보존하기 위해 칼럼 J를 원본 파일에 복사하고 저장한다(그림 8).EV 킷 소프트웨어에 로드하면 새 파일은 그림 9와 같이 나타난다.

댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
0 / 400
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.