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

📄 msp430-print.c

📁 本代码本人用MSP430单片机开发微型数据记录打印机时所写的打印接口程序。
💻 C
📖 第 1 页 / 共 2 页
字号:
      while(!(U0TCTL & TXEPT));
       TXBUF0 =0xB0;
      while(!(U0TCTL & TXEPT));
       TXBUF0 =0xD7;
      while(!(U0TCTL & TXEPT));
       TXBUF0 =0xF6;
      while(!(U0TCTL & TXEPT));
       TXBUF0 =0xE8;
      while(!(U0TCTL & TXEPT));
      PRINT_CHN_CANCEL();
      PRINT_CHAR('D','D');
      PRINT_CHAR('J','1');      
      break;  
/******************* 新时速X2000 *********************/         
case 20:
      PRINT_CHN();
       TXBUF0 =0xD0;
      while(!(U0TCTL & TXEPT));
       TXBUF0 =0xC2;
      while(!(U0TCTL & TXEPT));
       TXBUF0 =0xCA;
      while(!(U0TCTL & TXEPT));
       TXBUF0 =0xB1;
      while(!(U0TCTL & TXEPT));
       TXBUF0 =0xCB;
      while(!(U0TCTL & TXEPT));
       TXBUF0 =0xD9;
      while(!(U0TCTL & TXEPT));
      PRINT_CHN_CANCEL();
      PRINT_CHAR('X','2');
      PRINT_CHAR('0','0');
      TXBUF0 ='0';
      while(!(U0TCTL & TXEPT));              
      break;   

      default:break;
     }
     TXBUF0 =0x0a;   //换行
     while(!(U0TCTL & TXEPT));
     
      TXBUF0 =0x1c;  //中文打印
     while(!(U0TCTL & TXEPT));
     TXBUF0 =0x26;
    while(!(U0TCTL & TXEPT));
     /******要打印的中文 车号************/
     TXBUF0 =0xb3;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xb5;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xba;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xc5;
     while(!(U0TCTL & TXEPT));
     /*******************************/
      TXBUF0 =0x1c;   //取消中文打印
     while(!(U0TCTL & TXEPT));
      TXBUF0 =0x2e;
     while(!(U0TCTL & TXEPT));
     TXBUF0 =':';
     while(!(U0TCTL & TXEPT));      
      
     for(i=0;i<strlen(Cur_jiance.chehao);i++)   //打印机车车号
     {
       TXBUF0 =Cur_jiance.chehao[i];
      while(!(U0TCTL & TXEPT));
     }
     
      TXBUF0 =0x0a;   //换行
     while(!(U0TCTL & TXEPT));
     
      TXBUF0 =0x1c;  //中文打印
     while(!(U0TCTL & TXEPT));
     TXBUF0 =0x26;
    while(!(U0TCTL & TXEPT));
     /******要打印的中文************/
     TXBUF0 =0xb4;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xab;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xb8;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xd0;
     while(!(U0TCTL & TXEPT));
     TXBUF0 =0xc6;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xf7;
     while(!(U0TCTL & TXEPT));
     /*******************************/
      TXBUF0 =0x1c;   //取消中文打印
     while(!(U0TCTL & TXEPT));
      TXBUF0 =0x2e;
     while(!(U0TCTL & TXEPT));
     TXBUF0 =':';
     while(!(U0TCTL & TXEPT)); 
     
     TXBUF0 =0x1c;  //中文打印
     while(!(U0TCTL & TXEPT));
     TXBUF0 =0x26;
     while(!(U0TCTL & TXEPT));
           switch(Cur_jiance.leixing)  //打印传感器类型
     {
     case 1:
         /******要打印的中文:电压************/
     TXBUF0 =0xb5;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xe7;
     while(!(U0TCTL & TXEPT));
     TXBUF0 =0xd1;
     while(!(U0TCTL & TXEPT));
     TXBUF0 =0xb9;
     while(!(U0TCTL & TXEPT));
     /*******************************/
         break;
     case 2:
         /******要打印的中文:电流************/
     TXBUF0 =0xb5;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xe7;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xc1;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xf7;
     while(!(U0TCTL & TXEPT));
     /*******************************/
         break; 
     case 3:
         /******要打印的中文:温度************/
     TXBUF0 =0xce;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xc2;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xb6;
     while(!(U0TCTL & TXEPT));
     TXBUF0 =0xc8;
     while(!(U0TCTL & TXEPT));
     /*******************************/
         break;
     case 4:
         /******要打印的中文:速度************/
     TXBUF0 =0xcb;
     while(!(U0TCTL & TXEPT));
     TXBUF0 =0xd9;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xb6;
     while(!(U0TCTL & TXEPT));
     TXBUF0 =0xc8;
     while(!(U0TCTL & TXEPT));
     /*******************************/
         break;
          
      default:break;
     }

     
      TXBUF0 =0x0a;   //换行

      
     /******要打印的中文  型号************/
     TXBUF0 =0xd0;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xcd;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xba;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xc5;
     while(!(U0TCTL & TXEPT));
     /*******************************/
      TXBUF0 =0x1c;   //取消中文打印
     while(!(U0TCTL & TXEPT));
      TXBUF0 =0x2e;
     while(!(U0TCTL & TXEPT));
     TXBUF0 =':';
     while(!(U0TCTL & TXEPT)); 
     
     while(!(U0TCTL & TXEPT));
        for(i=0;i<strlen(Cur_jiance.xinghao);i++)   //打印传感器号
     {
       TXBUF0 =Cur_jiance.xinghao[i];
      while(!(U0TCTL & TXEPT));
     }
     TXBUF0 =0x0a;   //换行
     while(!(U0TCTL & TXEPT));
 
      TXBUF0 =0x1c;  //中文打印
     while(!(U0TCTL & TXEPT));
     TXBUF0 =0x26;
    while(!(U0TCTL & TXEPT));
     /******要打印的中文  测试************/
     TXBUF0 =0xb2;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xe2;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xca;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xd4;
     while(!(U0TCTL & TXEPT));
     /*******************************/
      TXBUF0 =0x1c;   //取消中文打印
     while(!(U0TCTL & TXEPT));
      TXBUF0 =0x2e;
     while(!(U0TCTL & TXEPT));
     TXBUF0 =':';
     while(!(U0TCTL & TXEPT));
       TXBUF0 =0x1c;  //中文打印
     while(!(U0TCTL & TXEPT));
     TXBUF0 =0x26;
    while(!(U0TCTL & TXEPT));
     /******要打印的中文  合格/不合格************/
    if(Cur_jiance.jieguo==0)
    {
      TXBUF0 =0xb2;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xbb;
    while(!(U0TCTL & TXEPT));
    }
     TXBUF0 =0xba;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xcf;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xb8;
    while(!(U0TCTL & TXEPT));
     TXBUF0 =0xf1;
     while(!(U0TCTL & TXEPT));
     /*******************************/
      TXBUF0 =0x1c;   //取消中文打印
     while(!(U0TCTL & TXEPT));
      TXBUF0 =0x2e;
     while(!(U0TCTL & TXEPT));
     
        TXBUF0 =0x0a;   //换行
     while(!(U0TCTL & TXEPT));
       
       TXBUF0 =(Cur_time.year/10)%10+0x30;
       while(!(U0TCTL & TXEPT));
        TXBUF0  = Cur_time.year%10+0x30;
       while(!(U0TCTL & TXEPT));
         TXBUF0 ='-';
      while(!(U0TCTL & TXEPT));
        TXBUF0 = (Cur_time.month/10)%10+0x30;
       while(!(U0TCTL & TXEPT));
         TXBUF0 = Cur_time.month%10+0x30;
         while(!(U0TCTL & TXEPT));
        TXBUF0 ='-';
      while(!(U0TCTL & TXEPT));
       TXBUF0 = (Cur_time.day/10)%10+0x30;
      while(!(U0TCTL & TXEPT));
        TXBUF0 = Cur_time.day%10+0x30;
        while(!(U0TCTL & TXEPT));
        TXBUF0 =' ';
      while(!(U0TCTL & TXEPT));
        TXBUF0 = (Cur_time.hour/10)%10+0x30;
     while(!(U0TCTL & TXEPT));
        TXBUF0= Cur_time.hour%10+0x30;
     while(!(U0TCTL & TXEPT));
         TXBUF0 =':';
      while(!(U0TCTL & TXEPT));
        TXBUF0 = (Cur_time.minute/10)%10+0x30;
       while(!(U0TCTL & TXEPT));
       TXBUF0 = Cur_time.minute%10+0x30;
     while(!(U0TCTL & TXEPT));
       TXBUF0 =':';
      while(!(U0TCTL & TXEPT));
       TXBUF0 = (Cur_time.second/10)%10+0x30;
       while(!(U0TCTL & TXEPT));
       TXBUF0 = Cur_time.second%10+0x30;
      TXBUF0 =0x0a;   //换行
     while(!(U0TCTL & TXEPT));
      TXBUF0 =0x1b;   //进纸
      while(!(U0TCTL & TXEPT));
       TXBUF0 =0x66;
     while(!(U0TCTL & TXEPT));
       TXBUF0 =0x1;    
      while(!(U0TCTL & TXEPT));
       TXBUF0 =0x4;
      while(!(U0TCTL & TXEPT));
      
     
};

 
      
      
    

⌨️ 快捷键说明

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