电子文章 | 电子资料下载 | 家电维修 | 维修资料下载 | 加入收藏 | 全站地图
您现在所在位置:电子爱好者维修技术维修教程知识电子制作OSD芯片MB90092的原理及应用

OSD芯片MB90092的原理及应用

09-08 11:52:56 | http://www.5idzw.com | 电子制作 | 人气:249
标签:电子小制作,http://www.5idzw.com OSD芯片MB90092的原理及应用,http://www.5idzw.com
MB90092视频字符叠加芯片在工作时,主要通过CS?片选)、SCLK(串行时钟)、SIN(串行数据)三个引脚来接收外部控制指令和显示数据。MB90092的每条指令都由两个字节组成,其中第一个字节的高5位是命令码,其余位和第二字节是数据。图3所示是MB90092的外部接口时序图。

当CS引脚为低电平时,MB90092在每个时钟的上升沿从最低位开始由SIN引脚一位一位读取数据。读完一个字节后,CS和SCLK引脚置为高电平, 然后CS引脚变为低电平并开始读取下一个字节。为了保持字节同步,在开始传输串行数据之前,CS引脚应先置为高电平,然后再置为低电平。另外,除刚上电时外,在串行数据传输之前,SCLK引脚都应强制设为高电平。

该单片机通过串行数据口向MB90092发送指令,每个指令由两个字节组成。第一个字节的前5位为命令码,其余位和第二个字节为数据。通过这些指令可实现对字符显示的各种控制。MB90092共有13种指令和两种保留指令,其具体功能如表1所列。

表1 MB90092指令集

指令号 第一字节 第二字节 功能 指令代码/数据 数据 76543 2 1 0 7 6 5 4 3 2 1 0 0 10000 VSL RAS RA7 0 RA6 RA5 CA4 CA3 CA2 CA1 CA0 VRAM地址设备 1-1 10001 MA MB AT 0 CG CR CB MC BG(GR) BR(BS) BB(MD) 主屏字符控制1 2-1 10010 M9 M8 M7 0 M6 M5 M4 M3 M2 M1 M0 主屏字符控制2 1-2 10001 SMA SMB 0 0 SCG SCR SCB SMC SGR SDC SMC 子屏线控1 2-2 10010 SM9 SM8 SM7 0 SM6 SM5 SM4 SM3 SM2 SM1 SM0 子屏线控2 1-3 10001 OF1 OF0 0 0 0 0 0 PC PG PR PB 主屏线线1 2-3 10010 G2 G1 G0 0 SOC VD DG KC KG KR KB 主屏线控2 3 10011 FIL 0 0 0 0 0 0 0 0 0 0 VRAM写控制 4 10100 IE IN EB 0 EO CM ZM NP P2 P0 DC 屏幕控制1 5 10101 KID APC GYZ 0 BH2 BN1 BN0 W3 W2 W1 W0 屏幕控制2 6 10110 G2 G1 G0 0 SOC VD DG N3 N2 N1 N0 主屏线控3 7 10111 EG LP FO 0 0 Y5 Y4 Y3 Y2 Y1 Y0 主屏垂直位置
控制 8 11000 SC 0 FC 0 0 X5 X4 X3 X2 X1 X0 主屏水平位置
控制 9 11001 0 0 GRM 0 0 0 0 0 0 0 0 汉字显示控制 10 11010 0 0 RB 0 BK CC BC UC UG UR UB 颜色控制 11 11011 SG2 SG1 SG0 0 0 SCC SBC SGC SBG SBR SBB 子屏控制 12 11100 SGA 0 SY7 0 SY6 SY5 SY4 SY3 SY2 SY1 SY0 子屏垂直位置
控制 13 11101 0 SX8 SX7 0 SX6 SX5 SX4 SX3 SX2 SX1 SX0 子屏水平位置
控制 14 11110 - - - 0 - - - - - - - 保留 15 11111 - - - 0 - - - - - - - 保留

4 与单片机的接口电路

MB90092 与单片机的连接仅需3条线,即 CS、SCLK、SIN?因此只需占用微处理器的3个I/O口。图4是MB90092与ATMEL公司的AT89S52单片机的连接电路。

在图4中,MB90092的片选信号由AT89S52的P1.1提供,串行时钟由P1.2提供,指令和数据则从AT89C52的P1.3端口读取。下面给出的是用C语言编写的发送一字节的源程序代码:

#include <reg52.h>

#include <absacc.h>

sbit CLK_A =P1^2;

sbit DAT_A =P1^3;

sbit CS_A1 =P1^1;

void function SendByteA1(byte dataA1)

{

byte i,n;

i=1;

CLK_A=HIGH;

CS_A1=LOW;

for(n=1;n<=8;n++)

{

DAT_A=dataA1&i;

i<<=1;

_Nop();

CLK_A =LOW;

_Nop();?

_Nop();?

CLK_A=HIGH;

}

CS_A1=HIGH;

}

5 结束语

在使用MB90092芯片时,应当注意以下几点:

(1)在开始进行串行数据传送时,为保持字节同步,应先将CS脚置高,然后再置低。

(2)在叠加新字符前,应先释放内存,也就是先执行一条清屏指令,否则可能会出现乱码及一些预料不到的显示。

(3)上电后,在发送串行数据前,应强制使SCLK脚变高。

(4)在设计印制板时,视频走线应尽量短而粗,模拟地和数字地应分开,且只在电源处单点相连,以防止产生干扰。

上一页  [1] [2] 

,OSD芯片MB90092的原理及应用
关于《OSD芯片MB90092的原理及应用》的更多文章