亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? vsi_control.c

?? 許繼的2812開發全套驅動程序,很全很實用的.rar
?? C
?? 第 1 頁 / 共 3 頁
字號:
	  }    
	  case 4:
	  {
	    if(Pixel)
	      LCDInfo=LCDInfo|0x08;
	    else
	      LCDInfo=LCDInfo&0xf7;    
	    break;  
	  }
	  case 5:
	  {
	    if(Pixel)
	      LCDInfo=LCDInfo|0x04;
	    else
	      LCDInfo=LCDInfo&0xfb;    
	    break;    
	  }
	  case 6:
	  {
	    if(Pixel)
	      LCDInfo=LCDInfo|0x02;
	    else
	      LCDInfo=LCDInfo&0xfd;    
	    break;    
	  }
	  case 7:
	  {
	    if(Pixel)
	      LCDInfo=LCDInfo|0x01;
	    else
	      LCDInfo=LCDInfo&0xfe;    
	    break;        
	  }
	}
	TempValue=40*PositionY+PositionX/8+0x3000;
	
	OutLCDCmd(0X46);
	WAIT_LCD_IDLE;
	OutLCDData(TempValue&0xff);
	WAIT_LCD_IDLE;
	OutLCDData((TempValue>>8)&0xff);
	WAIT_LCD_IDLE;
	
	OutLCDCmd(0X4c);	
	WAIT_LCD_IDLE;
	
	OutLCDCmd(0X42);          
	WAIT_LCD_IDLE;    	   
	 
	OutLCDData(LCDInfo);      
}  

//-------------顯示一段直線-----------
void DisPlayLine(unsigned int StartX,unsigned int StartY,unsigned int Length,unsigned int Direction)
{
    unsigned int i=0;
    if(Direction)//X方向 
    {
      if(Length>240||Length<=0)
         Length=0;
      for(i=0;i<Length;i++)
        PutPixelLCD(StartX+i,StartY,1);
    }    
    else         //Y方向 
    {
      if(Length>320||Length<=0)
         Length=0;
      for(i=0;i<Length;i++)
         PutPixelLCD(StartX,StartY+i,1);
    }
} 

void Clear_Lcd()
{
	ClearLCDLay1();
	ClearLCDLay2();
   DisPlayLine(0,0,240,1);
   DisPlayLine(0,0,320,0);
	DisPlayLine(0,319,240,1);
	DisPlayLine(239,0,320,0);
	DisPlayLine(0,40,240,1);
 
   DisPlayLine(0,292,240,1);
   DisPlayLine(64,0,40,0);
   DisPlayLine(136,0,40,0);

   DisPlayLine(0,1,240,1);
   DisPlayLine(1,0,320,0);
   DisPlayLine(0,318,240,1);
   DisPlayLine(238,0,320,0);
   DisPlayLine(0,40,240,1);
   DisPlayLine(0,292,240,1);
   DisPlayLine(64,0,40,0);
   DisPlayLine(136,0,40,0);
}


void Display_KeyFrame(unsigned char Key)
{
   unsigned int i=0,j=0;   	
	unsigned int StartY=112+16;
	unsigned int StartX=28;
	unsigned int TempValue=0;	
	
	TempValue=StartX;
	StartX=320-120-StartY;
	StartY=TempValue;	

    for(j=0;j<16;j++)
    {
     	TempValue=40*StartY+(StartX+8*j)/8+0x3000;
	
		OutLCDCmd(0X46);
		WAIT_LCD_IDLE;
		OutLCDData(TempValue&0xff);
		WAIT_LCD_IDLE;
		OutLCDData((TempValue>>8)&0xff);
		WAIT_LCD_IDLE;
	
		OutLCDCmd(0X4f);	
		WAIT_LCD_IDLE;
	
		OutLCDCmd(0X42);          
		WAIT_LCD_IDLE;
		
     	for(i=0;i<192;i++)
     		OutLCDData(KEYBOARD[j+i*16]);
    }        
}

void main(void)
            {
	int i;
	unsigned int key=0;
	(*(char *)(lpstr+1))=0x7c;

// Step 1. Initialize System Control:
// PLL, WatchDog, enable Peripheral Clocks
// This example function is found in the DSP281x_SysCtrl.c file.
   InitSysCtrl();

// Step 2. Initalize GPIO: 
// This example function is found in the DSP281x_Gpio.c file and
// illustrates how to set the GPIO to it's default state.
   InitGpio();  // Skipped for this example  

// Step 3. Clear all interrupts and initialize PIE vector table:
// Disable CPU interrupts 
   DINT;


	

// Initialize PIE control registers to their default state.
// The default state is all PIE interrupts disabled and flags
// are cleared.  
// This function is found in the DSP281x_PieCtrl.c file.
   InitPieCtrl();

/*** Copy all FLASH sections that need to run from RAM ***/

// Section ramfuncs contains user defined code that runs from CSM secured RAM
/*   memcpy(	&ramfuncs_runstart,
			&ramfuncs_loadstart,
			&ramfuncs_loadend - &ramfuncs_loadstart);
*/
/*** Initialize the FLASH ***/
//   InitFlash();						// Initialize the FLASH (FILE: SysCtrl.c)
   
// Disable CPU interrupts and clear all CPU interrupt flags:
   IER = 0x0000;
   IFR = 0x0000;

// Initialize the PIE vector table with pointers to the shell Interrupt 
// Service Routines (ISR).  
// This will populate the entire table, even if the interrupt
// is not used in this example.  This is useful for debug purposes.
// The shell ISR routines are found in DSP281x_DefaultIsr.c.
// This function is found in DSP281x_PieVect.c.
   InitPieVectTable();	
	
// Step 4. Initialize all the Device Peripherals:
// This function is found in DSP281x_InitPeripherals.c
   InitPeripherals();

// Step 5. User specific functions, Reassign vectors (optional), Enable Interrupts:
	
    // Reassign ISRs. 
        // Reassign the PIE vector for T2UFPINT, CAPINT1 , NMI 
        // and T4PINT to point to a different 
        // ISR then the shell routine found in DSP28_DefaultIsr.c.
        // This is done if the user does not want to use the shell ISR routine
        // but instead wants to use their own ISR.  This step is optional:
	
	EALLOW;	// This is needed to write to EALLOW protected registers
	PieVectTable.T2UFINT = &eva_t2ufint_isr;
	PieVectTable.CAPINT1 = &eva_capint1_isr;
	PieVectTable.CAPINT2 = &eva_capint2_isr;
	PieVectTable.RXAINT = &sciarxint_isr;
	PieVectTable.RXBINT = &scibrxint_isr;	
	PieVectTable.XNMI = &xnmi_isr;	
	
	EDIS;       // This is needed to disable write to EALLOW protected registers
            
	// Enable PIE group 3 interrupt 3,5 for T2UFINT,CAPINT1
    PieCtrlRegs.PIEIER3.all = (M_INT3 | M_INT5);
        
	// Enable PIE group 9 interrupt 1,3 for SCIRXINTA, SCIRXINTB
    PieCtrlRegs.PIEIER9.all = (M_INT1 | M_INT3);
	
    // Enable CPU INT3 for T2UFINT, CAPINT1,INT9 for SCIRXINTA,SCIRXINTB:
	IER |= (M_INT3 | M_INT9);

	// Initialize user variable
	initvariable();	
	
	//
	
			//test
	   ch = (unsigned char)(*lpstr);
	   (*(char*)lpstr) = 0xf0;
	   WAIT_LCD_IDLE;
	   (*(char*)lpstr) = 0x08;
	   WAIT_LCD_IDLE;
	   (*(char*)lpstr) = 0xfc;
   	   WAIT_LCD_IDLE;
   	   
       (*(char *)(lpstr+1))=0x7c;
	   WAIT_LCD_IDLE;
	   
   	   (*(char *)(lpstr+1))=0x71;
   	    WAIT_LCD_IDLE;
   	    (*(char *)(lpstr+8))=0x00;
   	   (*(char *)(lpstr+8))=0xFF;
   	    WAIT_LCD_IDLE;
   	    (*(char *)(lpstr+8))=0x55;
   	    
   	    
   	  (*(char *)(lpstr+1))=0x6e;
	   WAIT_LCD_IDLE;
	   (*(char *)(lpstr+9))=0xFF;
	   WAIT_LCD_IDLE;
	   (*(char *)(lpstr+9))=0x00;
	   
	   WAIT_LCD_IDLE;
	   (*(char *)(lpstr+1))=0x6c;
	   
	   
	   

	InitLCD1335();
	Clear_Lcd();
	Display_KeyFrame(0);
	
	(*(char *)(lpstr+1))=0x6c;
while(1){	

	(*(char *)(lpstr+1))=0x2c;
	(*(char *)(lpstr+1))=0xa8;
	
	key = (*(char *)(lpstr+6));
	(*(char *)(lpstr+1))=0x2c;
	(*(char *)(lpstr+1))=0x6c;
	
	if( (key &= 0xff) ) {
	LCD_NOP;
//	key = (*(char *)(lpstr+6));
	LCD_NOP;
	
//	break;
	
	}
}	
     DisPlayLine(10,10,50,1);	

	 DisPlayLine(20,20,50,0);
	 
	 DisPlayLine(30,30,150,1);
	 
    // Enable global Interrupts and higher priority real-time debug events:
 	EINT;   // Enable Global interrupt INTM
	ERTM;	// Enable Global realtime interrupt DBGM
	
	


// Step 6. IDLE loop. Just sit and loop forever:	
	while(1)
		{
			
			/*
			if(1)//SciaRegs.SCICTL2.bit.TXRDY == 1)
				{
					SciaRegs.SCITXBUF = 0xeb;
					SciaRegs.SCITXBUF = 0x90;
					SciaRegs.SCITXBUF = 0x0a;
					SciaRegs.SCITXBUF = 0x0b;
					SciaRegs.SCITXBUF = 0x0c;
				
				}
			if(ScibRegs.SCICTL2.bit.TXRDY == 1)
				{
					ScibRegs.SCITXBUF = 0x90;
				
				}*/
	if(CtrVars.reset_lock==1)
		{
			if(CtrVars.Udc_aver>CtrVars.Udc_uplimit)
				{
					CtrVars.Udc_high_fault=1;
					CtrVars.fault=1;
				}
			else if(CtrVars.Udc_aver<CtrVars.Udc_lowlimit)
				{
					CtrVars.Udc_low_fault=1;
					CtrVars.fault=1;
				}
			else if(CtrVars.Vs_sinwt_main>1250)  // over voltage
				{					
					CtrVars.Vs_fault=1;
					CtrVars.fault=1;
				}
			else if(abs(CtrVars.Il>1900)) // overload or over-current
				{
					CtrVars.Il_fault=1;
					CtrVars.fault=1;
				}
			else
				{
					CtrVars.pwm_enable=1;
				}
		}
			if((CtrVars.pwm_enable==1)&&(CtrVars.fault==0))
				{					
							if(CtrVars.run_stop==0)
								{									
									CtrVars.pianci=0;
									for(i=0;i<f_point;i++)CtrVars.rep[i]=0;
									CtrVars.Vyk=0;	CtrVars.Vyks1=0;/* reset some important variables */									
									CtrVars.pid_Vyks1=0;	CtrVars.pid_Vyks2=0;									
									CtrVars.start=1;	CtrVars.run_stop=1;
									EvaRegs.CMPR1=pwm_half_per/2;	EvaRegs.CMPR2=pwm_half_per/2;
									EvaRegs.COMCONA.bit.FCOMPOE=1; /* enable PWM output */									
//									StatusLed(1);  // light it									
									CtrVars.pianci_rec=0;
									
								}
							else
								{
									CtrVars.run_stop=0;									
									EvaRegs.COMCONA.bit.FCOMPOE=0; /* disable PWM output */
//									StatusLed(0);	// black out
//									
								}					
				}
			else
				{
					EvaRegs.COMCONA.bit.FCOMPOE=0; /* disable PWM output */					
					if(CtrVars.run_stop==1)
						{
							CtrVars.fault=1;
							CtrVars.run_stop=0;
						}  /* don't allow self-restart after detecting fault */					
				}			
			
			KickDog(); /* reset watchdog */				
		}; /* endless loop, wait for interrupt */

} 	


// Step 7. Insert all local Interrupt Service Routines (ISRs) and functions here:	
    // If local ISRs are used, reassign vector addresses in vector table as
    // shown in Step 5

interrupt void eva_t2ufint_isr(void)
{
    unsigned int  CHA7 , CHA6 , CHA5 , CHA4;
    int offset , temp , Vs_err , Vs_ref , pre_value , pid_output , N , sinN , cosN;
    long temp_32 , temp32;

	// Note: To be safe, use a mask value to write to the entire
	// EVAIFRA register.  Writing to one bit will cause a read-modify-write
	// operation that may have the result of writing 1's to clear 
	// bits other then those intended. 
    EvaRegs.EVAIFRB.bit.T2UFINT = 1;

//led
/*
    count++;
    if(count >= 10000)
    {
	   ch = (unsigned char)(*lpstr);
	   (*(char*)lpstr) = ~ch;
	   	   (*(char *)(lpstr+4))=ch;

	   ch = (unsigned char)(*(lpstr+2));
	   count=0;

	
	}
	
*/

//--- calculate the phase angle-------------------------
	offset=CtrVars.sum_counter/f_point;
	CtrVars.sum_counter=CtrVars.sum_counter+512;
			
	if(offset>=512)
		{
			offset=0;
		}
	CtrVars.sinwt=*(sintab_pointer+offset)>>16;
		
	CtrVars.coswt=*(sintab_pointer+offset+128)>>16;
	
	N=offset+8;
		
	sinN=*(sintab_pointer+N)>>16;	
	cosN=*(sintab_pointer+offset+116)>>16;
//---- read the sample values-----------------------------
//Vs
	CHA7 = AdcRegs.ADCRESULT0;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区中文视频| 国产成人精品www牛牛影视| 久草精品在线观看| 99久久精品一区| 欧美精品一区二区三区高清aⅴ| 国产精品福利一区二区三区| 麻豆91在线播放免费| 欧美影院一区二区| 国产精品欧美一区二区三区| 麻豆专区一区二区三区四区五区| 91福利国产成人精品照片| 久久蜜桃一区二区| 精品一区二区三区免费播放| 欧洲av在线精品| 亚洲视频免费在线| 99久久久久久| 中文字幕一区二区三| 懂色av中文字幕一区二区三区 | 香港成人在线视频| 色天使久久综合网天天| 亚洲欧美日韩国产一区二区三区| 国产suv精品一区二区6| 国产亚洲欧洲997久久综合| 久久爱www久久做| 欧美一区二区免费观在线| 亚洲成人福利片| 欧美私模裸体表演在线观看| 亚洲综合小说图片| 欧美三级在线视频| 亚洲国产欧美另类丝袜| 欧美日韩一区三区四区| 午夜精品久久一牛影视| 欧美伦理影视网| 午夜精品在线看| 91精品国产欧美一区二区| 欧美aⅴ一区二区三区视频| 91精品国产色综合久久不卡电影 | 久久精品国产999大香线蕉| 欧美丰满一区二区免费视频| 婷婷成人综合网| 91麻豆精品国产自产在线观看一区| 婷婷成人激情在线网| 欧美成人高清电影在线| 麻豆极品一区二区三区| 久久在线观看免费| 懂色一区二区三区免费观看| 国产精品高潮久久久久无| 色呦呦一区二区三区| 亚洲成人综合网站| 日韩欧美国产电影| 国产精品18久久久久| 中文字幕一区免费在线观看| 在线一区二区观看| 免费高清在线视频一区·| 精品电影一区二区| www.66久久| 丝袜美腿亚洲一区| 久久久精品2019中文字幕之3| 成人污视频在线观看| 亚洲一区二区三区视频在线| 日韩欧美第一区| 播五月开心婷婷综合| 亚洲综合视频网| 欧美成人aa大片| 97久久精品人人爽人人爽蜜臀 | 欧美丰满嫩嫩电影| 国产大片一区二区| 亚洲无人区一区| 久久精品欧美一区二区三区不卡| www.欧美.com| 婷婷中文字幕综合| 国产精品不卡在线| 日韩免费在线观看| 91美女片黄在线| 极品瑜伽女神91| 亚洲一区免费视频| 国产精品入口麻豆原神| 欧美高清视频在线高清观看mv色露露十八 | 在线观看日韩电影| 国产剧情一区在线| 日韩制服丝袜先锋影音| 国产精品久久99| 久久网站最新地址| 精品视频一区二区三区免费| 激情六月婷婷综合| 五月天久久比比资源色| 亚洲免费看黄网站| 国产精品情趣视频| 久久影视一区二区| 4438x成人网最大色成网站| eeuss鲁片一区二区三区在线观看| 日韩av在线发布| 亚洲免费av观看| 一区二区三区在线播| 26uuu色噜噜精品一区二区| 在线视频一区二区免费| 成人激情文学综合网| 精品一区二区三区视频在线观看| 亚洲国产成人va在线观看天堂| 国产精品丝袜91| 久久久久亚洲蜜桃| 久久久久久久久久久电影| 日韩三级.com| 91麻豆精品国产自产在线观看一区 | 日韩欧美激情在线| 在线播放中文一区| 欧美日产国产精品| 欧美日韩在线综合| 欧美日韩在线电影| 欧美色视频在线| 欧美最猛黑人xxxxx猛交| 日本高清不卡在线观看| 欧洲在线/亚洲| 99国产精品一区| 色综合视频一区二区三区高清| 丁香天五香天堂综合| 丁香婷婷综合色啪| www.欧美.com| 91福利国产成人精品照片| 欧美日韩在线播| 欧美日韩mp4| 欧美电影免费观看高清完整版在线 | 亚洲一区二区三区影院| 亚洲精品视频免费看| 亚洲免费在线视频| 一区二区三区四区中文字幕| 一区二区日韩电影| 首页国产丝袜综合| 久久国产精品99久久人人澡| 国产综合色在线| 成人av免费网站| 91黄色激情网站| 欧美一区二区不卡视频| 久久久久久久久99精品| 国产精品美女视频| 一区二区三区不卡视频| 天天综合天天做天天综合| 久久国产精品第一页| 国产成人精品免费视频网站| 99re这里只有精品6| 欧美日韩一区在线| 久久久久久综合| 亚洲免费伊人电影| 日韩电影免费在线看| 国产呦精品一区二区三区网站| 国产91精品久久久久久久网曝门| 91色乱码一区二区三区| 777xxx欧美| 欧美国产综合一区二区| 亚洲一卡二卡三卡四卡| 久久超碰97中文字幕| 91美女片黄在线| 欧美成人精品1314www| 亚洲靠逼com| 极品少妇xxxx精品少妇| 日本乱人伦aⅴ精品| 久久伊人中文字幕| 亚洲成人第一页| 丁香一区二区三区| 91精品国产91久久久久久一区二区 | 一区二区三区在线视频播放| 日本不卡免费在线视频| 99re在线精品| 国产午夜久久久久| 日韩电影在线免费看| 91麻豆免费看| 久久夜色精品国产欧美乱极品| 一区二区三区在线高清| 粉嫩嫩av羞羞动漫久久久| 欧美日韩国产精品成人| 亚洲视频一二三区| 国产在线麻豆精品观看| 欧美久久久久久久久| 自拍偷拍国产亚洲| 国产乱码精品一区二区三区忘忧草 | 亚洲视频图片小说| 国产成人亚洲综合a∨猫咪| 在线91免费看| 亚洲综合偷拍欧美一区色| 成人一道本在线| 精品福利二区三区| 青青草91视频| 8x8x8国产精品| 天天做天天摸天天爽国产一区| 91网站最新地址| 国产精品福利在线播放| 成人午夜视频在线| 久久久国产午夜精品| 久久99九九99精品| 欧美大尺度电影在线| 奇米亚洲午夜久久精品| 欧美精选在线播放| 日韩av在线播放中文字幕| 欧美日韩国产小视频在线观看| 亚洲色欲色欲www在线观看| 成人精品免费视频| 亚洲天堂福利av| 91免费视频网| 亚洲综合久久av| 欧美日韩国产影片|