小点阵汉显液晶模块及其应用
void lcd_picture(uchar attr,uchar x0,uchar y0,uchar *picture_data)
{
putbyte(0x1b);?
putbyte(0x42);?
putbyte(attr);?
putbyte(x0);
putbyte(y0);?
putbytes(picture_data,(((*picture_data)+7)/8)*(*(picture_data+1))+2);
}
//发送字符串到串口
putstring(uchar *puts)
{
for(;*puts!=0;puts++)//遇到停止符0结束
putbyte(*puts);
}
//串口中断处理
serial () interrupt 4
{
if (TI)
{
TI = 0;
if(outbufsign)
{
SBUF=*outlast; //未发送完继续
outlast++;//最后传出去的字节位置加一
if (outlast==outbuf+OLEN) outlast=
outbuf; //地址到顶部回到底部
if (putlast==outlast) outbufsign=0;
//数据发送完置发送缓冲区空标志
}
else
{
outbufsign0=0;
}
}
if(RI)
{
RI = 0;
if(!inbufful)
{
*inlast= SBUF; //放入数据
inlast++; //最后放入的位置加一
inbufsign=1;
if(inlast==inbuf+ILEN)inlast=inbuf;
//地址到顶部回到底部
《小点阵汉显液晶模块及其应用(第5页)》