?? 打印機1.c
字號:
#include<reg51.h>
#include<string.h>
#include<INTRINS.H>
sbit STB=P1^0; //PSTB 接P1^0
sbit BUSY=P1^2; //PBUSY 接P1^2
/************** 并口打印子程序**************/
void pprint(unsigned char ch)
{
while(BUSY)
{};
P0=ch;
STB=0; //STB 置0
_nop_();
_nop_();
STB=1; //STB 置1
}
/****************打印直線 *******************/
void ESC2(int len)//熱敏打印命令
{
int i;
if(len-256>0)
{
pprint(0x1b);pprint(0x27);pprint(len-256);pprint(1);
for(i=len-256-1;i>=0;i--)
{
pprint(i);pprint(1);
}
for(i=0;i<256;i++)
{
pprint(i);pprint(0);
}
pprint(0x0d);
}
else
{
pprint(0x1b);pprint(0x27); pprint(len);pprint(0);
for(i=len-1;i>=0;i--)
{
pprint(i);pprint(0);
}
pprint(0x0d);
}
}
/****************自定義字符*****************/
void ESC1()
{
pprint(0X1b);pprint(36); //選擇字符集1
pprint('A');pprint('B');pprint('C'); //打印ABC
pprint(0X0A); //換行
pprint(0X1B);pprint(0X26);pprint(0X42);pprint(0X02);pprint(0X7C);pprint(0X40);pprint(0XC0);pprint(0X40);pprint(0); //自定義字符
pprint(0X1B);pprint(0X25);pprint(0X42);pprint('A') ;pprint(0x00); //替換用戶定義字符
// pprint(0X1b);pprint(36); //選擇字符集1
pprint(0x41);pprint('B');pprint('C'); //打印ABC
pprint(0X1B);pprint(0X3A); //恢復字符集中的字符
pprint('A');pprint('B');pprint('C');
}
/**************主函數***********************/
main()
{while(1)
{
int i;
char ch[]="蘇果超市歡迎您!";
pprint(0x1b);pprint(0x38); //選擇不同點陣漢子打印
//pprint(0x1c);pprint(0x4a); //設置縱向打印
//pprint(0x1c);pprint(0x49);pprint(0x01b); //設置字符旋轉90度
pprint(0x1b);pprint(0x57);pprint(0x02); //橫向縱向放大2倍
//pprint(0x1b);pprint(0x63);pprint(0x01); //允許反向打印
//pprint(0x1b);pprint(0x69);pprint(0x01); //允許反白打印
//pprint(0x1b);pprint(0x2d);pprint(0x01); //允許下劃線打印
pprint(0x1b);pprint(0x72);pprint(0x2b);pprint(0x3f); //打印深度變淺
//pprint(0x1b);pprint(0x27);pprint(0x05);pprint(0x05);pprint(0x38);pprint(0x7c);pprint(0x30);pprint(0x58);pprint(0x14);pprint(0x34);pprint(0x88);pprint(0x6c);pprint(0x41);pprint(0xab);
//pprint(0x1b);pprint(0x26);pprint(0x32);pprint(0x54);pprint(0x38);pprint(0x7c);pprint(0x30);pprint(0x58);pprint(0x14); //自定義字符
//pprint(0x1b);pprint(0x45);pprint(0x40);pprint(0x34);pprint(0x88);pprint(0x6c);pprint(0x41);pprint(0xab);pprint(0x00); //打印條形碼
pprint(0x00); //調用漢字出庫指令
for(i=0;i<strlen(ch);i++)
pprint(ch[i]);
//ESC1();
//ESC2(0xfd);
pprint(0x0d); //回車
};
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -