📄 msp430-print.c
字号:
/*************************机车型号表*****************************************
1,东风1 4,DF5
2,东风3 5,DJ1
3,东风9 6,DJ2
///////////////////////////
7,东风4B 10,SS5
8,东风11 11,GK
9,东风12
//////////////////////
12,东风5D
13,韶山1
14,韶山8
/////////////////////////
15,先锋号
16,龙段东风4C
17,龙段东风4D
////////////////////////
18,蓝箭DJJ1
19,大白鲨DDJ1
20,新时速X2000
*****************************************************************************/
#include "string.h"
extern Time Cur_time;
extern jiance Cur_jiance;
/****************************************
打印初始化函数
*****************************************/
void print_init(void)
{
TXBUF0 =0x1b;
while(!(U1TCTL & TXEPT));
TXBUF0 =0x40;
while(!(U1TCTL & TXEPT));
TXBUF0 =0x0d;
while(!(U1TCTL & TXEPT));
}
void PRINT_DONGFENG(void) //打印“东风”
{
TXBUF0 =0xb6;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xab;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xb7;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xe7;
while(!(U0TCTL & TXEPT));
}
void PRINT_CHN(void) //发送中文打印指令
{
TXBUF0 =0x1c;
while(!(U0TCTL & TXEPT));
TXBUF0 =0x26;
while(!(U0TCTL & TXEPT));
}
void PRINT_CHN_CANCEL(void) //取消中文打印
{
TXBUF0 =0x1c;
while(!(U0TCTL & TXEPT));
TXBUF0 =0x2e;
while(!(U0TCTL & TXEPT));
}
void PRINT_CHAR(char i,char j) //打印非中文字符
{
TXBUF0 =i;
while(!(U0TCTL & TXEPT));
TXBUF0 =j;
while(!(U0TCTL & TXEPT));
}
void print(void)
{
int i;
TXBUF0 =0x1c; //中文打印
while(!(U0TCTL & TXEPT));
TXBUF0 =0x26;
while(!(U0TCTL & TXEPT));
/******要打印的中文 机车************/
TXBUF0 =0xbb;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xfa;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xb3;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xb5;
while(!(U0TCTL & TXEPT));
/*******************************/
TXBUF0 =0x1c; //取消中文打印
while(!(U0TCTL & TXEPT));
TXBUF0 =0x2e;
while(!(U0TCTL & TXEPT));
TXBUF0 =':';
while(!(U0TCTL & TXEPT));
TXBUF0 =0x0d;
while(!(U0TCTL & TXEPT));
switch(Cur_jiance.jiche) //打印机车类型
{
/******************* 东风1 *********************/
case 1:
PRINT_CHN();
PRINT_DONGFENG();
PRINT_CHN_CANCEL();
TXBUF0 ='1';
while(!(U0TCTL & TXEPT));
break;
/******************* 东风3 *********************/
case 2:
PRINT_CHN();
PRINT_DONGFENG();
PRINT_CHN_CANCEL();
TXBUF0 ='3';
while(!(U0TCTL & TXEPT));
break;
/******************* 东风9 *********************/
case 3:
PRINT_CHN();
PRINT_DONGFENG ();
PRINT_CHN_CANCEL();
TXBUF0 ='9';
while(!(U0TCTL & TXEPT));
break;
/******************* DF5 *********************/
case 4:
PRINT_CHAR('D','F');
TXBUF0 ='5';
while(!(U0TCTL & TXEPT));
break;
/******************* DJ1 *********************/
case 5:
PRINT_CHAR('D','J');
TXBUF0 ='1';
while(!(U0TCTL & TXEPT));
break;
/******************* DJ2 *********************/
case 6:
PRINT_CHAR('D','J');
TXBUF0 ='2';
while(!(U0TCTL & TXEPT));
break;
/******************* 东风4B *********************/
case 7:
PRINT_CHN();
PRINT_DONGFENG();
PRINT_CHN_CANCEL();
PRINT_CHAR('4','B');
break;
/******************* 东风11 *********************/
case 8:
PRINT_CHN();
PRINT_DONGFENG();
PRINT_CHN_CANCEL();
PRINT_CHAR('1','1');
break;
/******************* 东风12 *********************/
case 9:
PRINT_CHN();
PRINT_DONGFENG();
PRINT_CHN_CANCEL();
PRINT_CHAR('1','2');
break;
/******************* SS5 *********************/
case 10:
PRINT_CHAR('S','S');
TXBUF0 ='5';
while(!(U0TCTL & TXEPT));
break;
/******************* GK *********************/
case 11:
PRINT_CHAR('G','K');
break;
/******************* 东风5D *********************/
case 12:
PRINT_CHN();
PRINT_DONGFENG();
PRINT_CHN_CANCEL();
PRINT_CHAR('5','D');
break;
/******************* 韶山1 *********************/
case 13:
PRINT_CHN();
TXBUF0 =0xC9;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xD8;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xC9;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xBC;
while(!(U0TCTL & TXEPT));
PRINT_CHN_CANCEL();
TXBUF0 ='1';
while(!(U0TCTL & TXEPT));
break;
/*****************韶山8********************/
case 14:
PRINT_CHN();
TXBUF0 =0xC9;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xD8;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xC9;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xBC;
while(!(U0TCTL & TXEPT));
PRINT_CHN_CANCEL();
TXBUF0 ='8';
while(!(U0TCTL & TXEPT));
break;
/*****************先锋号**************************/
case 15:
PRINT_CHN();
TXBUF0 =0xCF;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xC8;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xB7;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xE6;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xBA;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xC5;
while(!(U0TCTL & TXEPT));
PRINT_CHN_CANCEL();
break;
/*******************龙段东风4C*********************/
case 16:
PRINT_CHN();
TXBUF0 =0xC1;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xFA;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xB6;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xCe;
while(!(U0TCTL & TXEPT));
PRINT_DONGFENG ();
PRINT_CHN_CANCEL();
PRINT_CHAR('4','C');
break;
/*******************龙段东风4D*********************/
case 17:
PRINT_CHN();
TXBUF0 =0xC1;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xFA;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xB6;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xCe;
while(!(U0TCTL & TXEPT));
PRINT_DONGFENG();
PRINT_CHN_CANCEL();
PRINT_CHAR('4','D');
break;
/******************* 蓝箭DJJ1 *********************/
case 18:
PRINT_CHN();
TXBUF0 =0xC0;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xB6;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xBC;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xFD;
while(!(U0TCTL & TXEPT));
PRINT_CHN_CANCEL();
PRINT_CHAR('D','J');
PRINT_CHAR('J','1');
break;
/******************* 大白鲨DDJ1 *********************/
case 19:
PRINT_CHN();
TXBUF0 =0xB4;
while(!(U0TCTL & TXEPT));
TXBUF0 =0xF3;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -