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

📄 print1.i

📁 热敏打印机 AVR驱动 热敏打印机 AVR驱动
💻 I
字号:
// CodeVisionAVR C Compiler
// (C) 1998-2006 Pavel Haiduc, HP InfoTech S.R.L.

// I/O registers definitions for the AT90USB1287


#pragma used+
sfrb PINA=0;
sfrb DDRA=1;
sfrb PORTA=2;
sfrb PINB=3;
sfrb DDRB=4;
sfrb PORTB=5;
sfrb PINC=6;
sfrb DDRC=7;
sfrb PORTC=8;
sfrb PIND=9;
sfrb DDRD=0xa;
sfrb PORTD=0xb;
sfrb PINE=0xc;
sfrb DDRE=0xd;
sfrb PORTE=0xe;
sfrb PINF=0xf;
sfrb DDRF=0x10;
sfrb PORTF=0x11;
sfrb TIFR0=0x15;
sfrb TIFR1=0x16;
sfrb TIFR2=0x17;
sfrb TIFR3=0x18;
sfrb TIFR4=0x19;
sfrb TIFR5=0x1a;
sfrb PCIFR=0x1b;
sfrb EIFR=0x1c;
sfrb EIMSK=0x1d;
sfrb GPIOR0=0x1e;
sfrb EECR=0x1f;
sfrb EEDR=0x20;
sfrb EEARL=0x21;
sfrb EEARH=0x22;
sfrw EEAR=0x21;   // 16 bit access
sfrb GTCCR=0x23;
sfrb TCCR0A=0x24;
sfrb TCCR0B=0x25;
sfrb TCNT0=0x26;
sfrb OCR0A=0x27;
sfrb OCR0B=0x28;
sfrb PLLCSR=0x29;
sfrb GPIOR1=0x2a;
sfrb GPIOR2=0x2b;
sfrb SPCR=0x2c;
sfrb SPSR=0x2d;
sfrb SPDR=0x2e;
sfrb ACSR=0x30;
sfrb OCDR=0x31;
sfrb MONDR=0x31;
sfrb SMCR=0x33;
sfrb MCUSR=0x34;
sfrb MCUCR=0x35;
sfrb SPMCSR=0x37;
sfrb RAMPZ=0x3b;
sfrb SPL=0x3d;
sfrb SPH=0x3e;
sfrb SREG=0x3f;
#pragma used-


// Interrupt vectors definitions


//#include "lcd1.h"
    /*
 #define PLOGICV         PORTE.0     //FIRST ACTIVE    PRINTV
 #define PRINTV          PORTE.2     //
 #define PDATAEN         PORTC.7     //
 #define MTA01           PORTA.0     //
 #define MTA11           PORTA.1     //
 #define MTB02           PORTA.2     //
 #define MTB12           PORTA.3     //
 #define HOT1            PORTA.6     //
 #define HOT2            PORTA.7    //
 #define NOPAPER         PINE.6     //
 */
            



 //void  InitializePrint(void);
void  InitializePrint(void);
void MOVE(void);
 void OpenLogicPower(void);
 void OpenPrintPower(void);
 void OffLogicPower(void);
 void OffPrintPower(void);  
 
 void MOVE1(void);
 void MOVE2(void)  ;
 void MOVE3(void);
 void MOVE4(void)  ;

 void MotorOff(void);
 void SendDataToPrint(unsigned char *p);
 void HeatPrint(void);
 void OffHeatPrint(void);
 void TestPrint(void);
 void GetPrintData(unsigned char data,unsigned char line,unsigned char *p);
 void PrintLine(unsigned char *p);
 void SendOneDataToPrint(unsigned char data);
 void PutCharToPrint(unsigned char da,unsigned char line);

 void FindCode(void);
 void PintHead(void);
 void PintMessage(void);
 void PintSpeed(void);
 void PintTire(void);
 void PintEnd(void);
 //uchar command_data; 
// CodeVisionAVR C Compiler
// (C) 1998-2000 Pavel Haiduc, HP InfoTech S.R.L.


#pragma used+

void delay_us(unsigned int n);
void delay_ms(unsigned int n);

#pragma used-

  
 
unsigned k,k1;
 unsigned char  Line0[24]={45,'r',55,35,89,79,36,76,77,78,79,36,0xff};
    unsigned char pLineData[40]; 
    unsigned char data1[8] ;
     unsigned char  CODETABLE[50][3]=
{
{0xBE,0xA9,159},
{0xBD,0xF2,160},
{0xBB,0xA6,161},
{0xD3,0xE5,158},
{0xBC,0xBD,132},
{0xD4,0xA5,133},
{0xD4,0xC6,134},
{0xC1,0xC9,135},
{0xBA,0xDA,136},
{0xCF,0xE6,137},
{0xCD,0xEE,138},
{0xC2,0xB3,139},
{0xD0,0xC2,140},
{0xCB,0xD5,141},
{0xD5,0xE3,142},
{0xB8,0xD3,143},
{0xB6,0xF5,144},
{0xB9,0xF0,145},
{0xB8,0xCA,146},
{0xBD,0xFA,147},
{0xC3,0xC9,148},
{0xC9,0xC2,149},
{0xBC,0xAA,150},
{0xC3,0xF6,151},
{0xD4,0xC1,153},
{0xC7,0xE0,118},
{0xB2,0xD8,155},
{0xB4,0xA8,154},
{0xC4,0xFE,157},
{0xC7,0xED,156},
{0xC1,0xBD,181},
{0xB4,0xF3,109},
{0xD0,0xA1,192},
{0xC8,0xFD,182},
{0xD0,0xCD,110},
{0xC7,0xE1,193},
{0xC2,0xD6,183},
{0xC6,0xFB,188},
{0xB1,0xE3,194},
{0xC4,0xA6,184},
{0xB3,0xB5,76},
{0xCD,0xD0,195},
{0xCD,0xCF,185},
{0xC0,0xAD,189},
{0xBB,0xFA,196},
{0xC5,0xA9,186},
{0xD3,0xC3,190},
{0xD4,0xCB,197},
{0xCA,0xE4,187},
{0xB9,0xD2,191}
};
    
  unsigned char zongqi[63][8]=
  { 
{0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,0x00}, 
{0x00,0x00,0xF0,0xFF,0xFF,0x07,0x00,0x00},
{0x00,0x00,0xFC,0xFF,0xFF,0x3F,0x00,0x00},
{0x00,0x00,0xFF,0xFF,0xFF,0x7F,0x00,0x00},
{0x00,0x80,0xFF,0x2F,0xFC,0xFF,0x01,0x00},
{0x00,0xE0,0xFF,0x00,0x00,0xFF,0x07,0x00},
{0x00,0xF0,0x1F,0x00,0x00,0xF8,0x0F,0x00},
{0x00,0xF8,0x07,0x00,0x00,0xE0,0x1F,0x00},
{0x00,0xFC,0x01,0x00,0x00,0x80,0x3F,0x00},
{0x00,0xFE,0x00,0xF0,0xFF,0xFF,0x7F,0x00},
{0x00,0x3F,0x00,0xF8,0xFF,0xFF,0xFF,0x00},
{0x80,0x1F,0x00,0xFC,0xFF,0xFF,0xFF,0x01},
{0xC0,0x0F,0x00,0xFC,0xFF,0xFF,0xFF,0x03},
{0xE0,0x07,0x00,0xFE,0xFF,0xFF,0xFF,0x07},
{0xE0,0x03,0x00,0xFE,0xFF,0x07,0xE0,0x07},
{0xF0,0x03,0x00,0xFE,0xFF,0x03,0xC0,0x0F},
{0xF8,0x01,0x00,0xFF,0xFF,0x03,0x80,0x0F},
{0xF8,0x00,0x00,0xFF,0xFF,0x01,0x80,0x1F},
{0xFC,0x00,0x80,0xFF,0xFF,0x01,0x00,0x1F},
{0x7C,0x00,0x80,0xFF,0xFF,0x01,0x00,0x3E},
{0x7C,0x00,0x80,0xFF,0xFF,0x00,0x00,0x3E},
{0x3E,0x00,0xC0,0xFF,0xFF,0x00,0x00,0x7E},
{0x3E,0x00,0xC0,0xFF,0x7F,0x00,0x00,0x7C},
{0x3E,0x00,0xE0,0xFF,0x7F,0x00,0x00,0x7C},
{0x1F,0x00,0xE0,0xFF,0x7F,0x00,0x00,0x7C},
{0x1F,0x00,0xE0,0xFF,0x3F,0x00,0x00,0xF8},
{0x1F,0x00,0xF0,0xFF,0x3F,0x00,0x00,0xF8},
{0x1F,0x00,0xF0,0xFF,0x3F,0x00,0x00,0xF8},
{0x0F,0x00,0xF8,0xFF,0x1F,0x00,0x00,0xF8},
{0x0F,0x00,0xF8,0xFF,0x7F,0x0F,0x00,0xF8},
{0x1F,0x00,0xF8,0xFF,0xFF,0x1F,0x00,0xF8},
{0x0F,0x00,0xFC,0xFF,0xFF,0x3F,0x00,0xF8},
{0x0F,0x00,0xFC,0xFF,0xFF,0x3F,0x00,0xF8},
{0x1F,0x00,0xF8,0xFF,0xFF,0x1F,0x00,0xF8},
{0x0F,0x00,0x30,0xFF,0xFF,0x1F,0x00,0xF8},
{0x0F,0x00,0x00,0xF8,0xFF,0x0F,0x00,0xF8},
{0x1F,0x00,0x00,0xFC,0xFF,0x0F,0x00,0xF8},
{0x1F,0x00,0x00,0xFC,0xFF,0x0F,0x00,0xF8},
{0x1F,0x00,0x00,0xFC,0xFF,0x07,0x00,0xF8},
{0x1F,0x00,0x00,0xFE,0xFF,0x07,0x00,0x7C},
{0x3E,0x00,0x00,0xFE,0xFF,0x03,0x00,0x7C},
{0x3E,0x00,0x00,0xFF,0xFF,0x03,0x00,0x7C},
{0x3E,0x00,0x00,0xFF,0xFF,0x03,0x00,0x7E},
{0x7C,0x00,0x00,0xFF,0xFF,0x01,0x00,0x3E},
{0x7C,0x00,0x80,0xFF,0xFF,0x01,0x00,0x3E},
{0xFC,0x00,0x80,0xFF,0xFF,0x00,0x00,0x1F},
{0xF8,0x00,0x80,0xFF,0xFF,0x00,0x80,0x1F},
{0xF8,0x01,0xC0,0xFF,0xFF,0x00,0x80,0x0F},
{0xF0,0x03,0xC0,0xFF,0x7F,0x00,0x80,0x0F},
{0xE0,0x07,0xE0,0xFF,0x7F,0x00,0x78,0x07},
{0xE0,0xFF,0xFF,0xFF,0x3F,0x00,0xFC,0x02},
{0xC0,0xFF,0xFF,0xFF,0x3F,0x00,0xFE,0x01},
{0x80,0xFF,0xFF,0xFF,0x3F,0x00,0xFE,0x01},
{0x00,0xFF,0xFF,0xFF,0x1F,0x00,0xFF,0x00},
{0x00,0xFE,0xFF,0xFF,0x0F,0x00,0x7E,0x00},
{0x00,0xFC,0x01,0x00,0x00,0x80,0x3F,0x00},
{0x00,0xF8,0x07,0x00,0x00,0xE0,0x1D,0x00},
{0x00,0xF0,0x1F,0x00,0x00,0xF8,0x03,0x00},
{0x00,0xE0,0xFF,0x00,0x00,0xFF,0x03,0x00},
{0x00,0x80,0xFF,0x0F,0xF8,0xFF,0x01,0x00},
{0x00,0x00,0xFF,0xFF,0xFF,0x7F,0x00,0x00},
{0x00,0x00,0xFC,0xFF,0xFF,0x1F,0x00,0x00},
{0x00,0x00,0xF0,0xFF,0xFF,0x07,0x00,0x00}
};

void louwei(void)
 {
                unsigned char c,i,j,k;
                unsigned char pdata[40];
                unsigned char MoveStep;
                unsigned char t;

	        for(i=0;i<3;i++)MOVE();
	        //MotorOff();
	        MoveStep=0;
	        for(i=0;i<63;i++)
	        {
	                t=0;
	                data1[0]=zongqi[i][0];
                        data1[1]=zongqi[i][1];
                        data1[2]=zongqi[i][2];
                        data1[3]=zongqi[i][3];
                        data1[4]=zongqi[i][4];
                        data1[5]=zongqi[i][5];
                        data1[6]=zongqi[i][6];
                        data1[7]=zongqi[i][7];
                        SendOneDataToPrint(0);
                        SendOneDataToPrint(0);SendOneDataToPrint(0);
	                SendOneDataToPrint(data1[0]);
                        SendOneDataToPrint(data1[1]);
	                SendOneDataToPrint(data1[2]);
                        SendOneDataToPrint(data1[3]);
                        SendOneDataToPrint(data1[4]);
                        SendOneDataToPrint(data1[5]);
                        SendOneDataToPrint(data1[6]);
                        SendOneDataToPrint(data1[7]);
                       // t=t+2
		      /*  for(j=0;j<40;j++)
		        {
		            if(p[j]==0xff)break;
		            PutCharToPrint(p[j],i);
                    //delay_us(200);
		            if(p[j]<50)t=t+2;
		            else  if(p[j]<=200)t=t+3;
		        }*/
		        while(t<24)
		        {
		           SendOneDataToPrint(0);
		           t=t+1;
		        } 
		        switch(MoveStep)
		        {
		                case 0:
		                        MOVE1();
		                        HeatPrint();
		                        MOVE2();
		                        break;
		                 case 0xff:
		                        MOVE3();
		                        HeatPrint();
		                        MOVE4();
		                        break;
		        }

		        MoveStep=~MoveStep;
		        //delay_ms(20);
	        }
	        for(i=0;i<4;i++)MOVE();
	       //MotorOff();

}   
main()
{ 
   InitializePrint();
   OpenLogicPower();
   OpenPrintPower();
   //unsigned char pLineData[40];

   
for (;;)
 {
 delay_ms(10);    
 
     MOVE()   ;
     // PrintLine(unsigned char *p);    
     
  /* for(k=0;k<24;k++)
               {
                       pLineData[k]=Line0[k];
                     // else pLineData[k]=DY0[k];
                       //PutC(pLineData[k]);
                       if(pLineData[k]==0xff)break;
             //   }
             //   for(k1=0;k1<8;k1++)
             //  {
            //      pLineData[k+k1]=CODETABLE[k1][0];
                   //PutC(pLineData[k+k1]);
                //  if(CODETABLE[k1]==0xff)break;
           }
       */
     
     louwei();
      //PrintLine(CODETABLE);
 }
 }
 
 

⌨️ 快捷键说明

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