⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 打印机.c

📁 单片机测试=====================================时打印机测试
💻 C
字号:
#include <reg52.h>
#include <stdio.h>
#include <absacc.h>

#define PRINTER XBYTE[0X6200]
#define uchar unsigned char

typedef unsigned char uint8;
typedef unsigned int uint16;
/*********************************
延时子程序
*********************************/
void delay(uint16 time)
{
	while(time--);
}

/*********************************
打印机忙状态检测,这里我们直接用
延时等待打印机
*********************************/
void check_printer()
{ 
	delay(1000);
}


/*********************************
打印机写命令字
*********************************/
void write_printer(uint8 dat)
{  
	check_printer();
	PRINTER=dat;
}

/*********************************
打印机初始化
*********************************/
void initial_printer(void)
{
	//打印机初始化
	write_printer(0x1b);
	write_printer(0x40);
	//反向打印
	write_printer(0x1b);
	write_printer(0x63);
	write_printer(0x01);
}
/*********************************
打印一个汉字
*********************************/
void PrintChinese(uint8 *dat)
{
	write_printer(0x1c);
  	write_printer(0x26);
	write_printer(*dat);
	write_printer(*(dat+1));
	write_printer(0x1c);
	write_printer(0x2E);
}

/*********************************
打印一个字符
*********************************/
void PrintChar(uint8 dat)
{
	write_printer(dat);
}

/*********************************
打印一个字符串
*********************************/
void PrintStr(uint8 *str)
{
	while(1)
	{  
		if( (*str)=='\0' ) break;
		PrintChar(*str++);
	}
}

int main()
{ 
	initial_printer();
	PrintChinese("西");
	PrintChinese("安");
	PrintChinese("交");
	PrintChinese("通");
	PrintChinese("大");
	PrintChinese("学");
	PrintChinese("城");
	PrintChinese("市");
	PrintChinese("学");
	PrintChinese("院");
	write_printer(0x0d);
	delay(10000);
	PrintStr("SIUPO MICRO-PRINTER TEST");
	write_printer(0x0d);
	while(1);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -