炜煌E30 E31微型热敏打印机 STM32 串口驱动

设置为汉字模式

十六进制 命令:1C    26

USART_SendData(USART2,0x1C);
while(USART_GetFlagStatus(USART2,USART_FLAG_TC)==RESET);
USART_SendData(USART2,0x26);
while(USART_GetFlagStatus(USART2,USART_FLAG_TC)==RESET);            
USART_OUT(USART2,"秦皇岛燕大滨沅科技发展有限公司\r\n"); 

将会看到打印输出的是正常汉字


取消汉字模式:

十六进制命令:  1C 2E

USART_SendData(USART2,0x1C);
while(USART_GetFlagStatus(USART2,USART_FLAG_TC)==RESET);
USART_SendData(USART2,0x2E);
while(USART_GetFlagStatus(USART2,USART_FLAG_TC)==RESET);            
USART_OUT(USART2,"淘宝店铺:会飞的蜗牛\r\n"); 


此时将会看到,打印输出的一串乱码。

其它的命令跟次类似。依照这样的写法即可,最好把

USART_SendData(USART2,0x1C);
while(USART_GetFlagStatus(USART2,USART_FLAG_TC)==RESET);


这两句封装成一个函数。这样就更方便了。第二句是防止数据没有正常发送就接着又发了。

 

posted @ 2017-06-03 09:10  gccbuaa  阅读(1258)  评论(0编辑  收藏  举报