求教 编写调试51串口打印调试测试

来源:百度知道 编辑:UC知道 时间:2024/05/26 10:21:58
要求是串口的输出函数,内容由用户定义。用C语言写 谢谢

参照下面的代码
/*本程序为新荣达微型打印机的控制程序,通过计算机串行通讯控制输入要打印的信息,打印信息用长度为36的数组保存,在根据数组中的数据打印相应的结果,第一位为起始位,第二位为命令位,第三~五位为地址位,第六位为器件类型,第七~二十二位为位置描述,第二十三位为事件类型,后面的是时间,最后一位是校验位。*/

#include
#define UCHAR unsigned char
#define UINT unsigned int
#define TIME1 1000
#define TIME2 200
#define LEN 35

.......

extern UCHAR sd[36]={0x9a,0x01,0x30,0x30,0x31,0x01,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,"050707000000"};

void Delay(UCHAR m)
{
while(--m);
}

void DelayInt(UINT n)
{
while(--n);
}

void Out(char sa)
{
STB=1;
while(BUSY);
Delay(5);
P0 = sa;
STB = 0;
Delay(4);
STB = 1;

}

void Outs(char ss[])
{
char i=0;
while(ss[i]!=0x00)
{
Out(ss[i]);
i++;
}
}

void Outn(char ss[],UCHAR x,UCHAR y)
{
char i;