视频字符叠加模块
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
视频字符叠加模块(器)-单片机SPI测试程序作者:佚名来源:强联单片机科技有限公司发布时间:2006-8-11 12:32:50 发布人:george
减小字体增大字体
简要说明:
1,本测试程序使用AT89S51,晶振12MHZ
2,字符串的使用,数字/英文/及空格需用全角输入,换行为"0x13,0x13"
3,包含文件视频字符叠加器(模块)SPI接口c51公共函数
*********************************************************/
#define UN unsigned char
//定义SPI引脚,读者可根据实际使用修改
sbit spics=P2^0;
sbit spidi =P2^1;
sbit spido =P2^2;
sbit spiclk=P2^3;
unsigned char bdata bm;
sbit bm0=bm^0;
sbit bm1=bm^1;
sbit bm2=bm^2;
sbit bm3=bm^3;
sbit bm4=bm^4;
sbit bm5=bm^5;
sbit bm6=bm^6;
sbit bm7=bm^7;
unsigned char read_1byte(void);
void write_1byte(unsigned char x);
void Tx4b(UN a,b,c,d);
void csf_spi(void);
void MoRen_Color(UN ys);//设置默认字符颜色,ys高位0-7,低位0-7
void Cls_Main(UN ys);//按指定颜色清屏0-7
void Ding_Wei(UN H,L);//定位,设置要显示的起始位置H:行号1-12,L:列号1-24
void Size(UN size,h);//字符大小,设置指定行的字符大小,size:大小0-3,h:行号1-12 void Tx_arry(UN idata zfc[]);//字符数组的显示
void Tx_nei_ma(UN idata nmH,nmL);//按字符内码显示1字符,nmH:内码高字节,nmL:内码低字节
void Hang_ju(UN idata x);//行距设定0-15
void HDP(UN idata x);////设定水平方向开始显示的位置x:0-63
void VDP_P(UN idata x);//PAL方式下设定垂直方向开始显示的位置0-63
void VDP_N(UN idata x);//在PAL制式下按NTSC格式显示,设定扫描的起始垂直位置,范围从0—63
void Neiwai_SaoMiao(UN idata x);//内外频及扫描方式选择
/*说明:
0:PAL内频隔行
1:PAL内频逐行
2:PAL外频隔行
3:PAL外频逐行
4:NTSC内频隔行
5:NTSC内频逐行
6:NTSC外频隔行
7:NTSC外频逐行
*/
void delay_ms(unsigned int nMs);//豪秒级的延时<65535ms,,延时函数读者可根据实际使用编写
//-------按指定颜色清屏0-7----------------
void Cls_Main(UN ys)
{Tx4b(1,ys,0,0);}
//---------------------------------------------
void Neiwai_SaoMiao(UN idata x)//内外屏及扫描方式选择
{Tx4b(2,x,0,0);}
//----------------------------------------
void HDP(UN idata x)////设定水平方向开始显示的位置x:0-63
{Tx4b(3,x,0,0);}
//----------------------------------------
void VDP_P(UN idata x)//PAL方式下设定垂直方向开始显示的位置0-63
{Tx4b(4,x,0,0);}
//----------------------------------------
void VDP_N(UN idata x)//在PAL制式下按NTSC显示,设定扫描的起始垂直位置,范围从0—6 3
{Tx4b(5,x,0,0);}
//-------字符大小,设置指定行的字符大小,size:大小,h:行号
void Size(UN size,h)
{Tx4b(6,size,h,0);}
//-------定位,设置要显示的起始位置--------------------
void Ding_Wei(UN H,L)
{Tx4b(7,H,L,0);}
//----------------------------------------
void Tx_nei_ma(UN idata nmH,nmL)//按字符内码显示1字符
{Tx4b(8,nmH,nmL,0);}
//-------设置默认字符颜色--------------------
void MoRen_Color(UN ys)