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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? main._c

?? avr的視頻采集
?? _C
字號(hào):
//////////////////////////////
//////////////////////////////   22967為近似180度

#include <iom64v.h>
#include <macros.h>

#define PREVSONG   BIT(2)
#define NEXTSONG   BIT(3)
#define VOLDOWN    BIT(4)
#define VOLUP      BIT(5)
#define STOP       BIT(6)

#define R_pwm0       BIT(4)
#define R_pwm1       BIT(5)
#define L_pwm0       BIT(6)
#define L_pwm1       BIT(7)


long ADCjohu=0;
int ms=0;
long xx=0;
//int adc=0;

#define REF 483
unsigned char lvbo=0;
long lvbo_num=0;

unsigned char pwm_pingjun=254;//平均速度
unsigned char Rpwm0=0;
unsigned char Rpwm1=0;
unsigned char Lpwm0=0;
unsigned char Lpwm1=0;
unsigned char all=0, a=0,b=0,c=0,d=0,e=0,f=0;
#define CIR 1
#define LINE 2
#define CLS 3
long jiaodu=0,juli=0;
int time=0;
unsigned char sec=0;

#define video_x 32
#define video_y 48
unsigned int  v_num=0;
unsigned char v_temp[video_y][video_x],chang=0,hang=0,   adc1=0;;

unsigned char x_adc;
unsigned char  y_adc;

void port_init(void)
{
 PORTA = 0x00;
 DDRA  = 0x00;
 PORTB = 0x00;
 DDRB  = 0x00;
 PORTC = 0x00; //m103 output only
 DDRC  = 0x00;
 PORTD = 0x00;
 DDRD  = 0x00;
 PORTE = 0x00;
 DDRE  = 0x00;
 PORTF = 0x00;
 DDRF  = 0x00;
 PORTG = 0x00;
 DDRG  = 0x00;
}


//call this routine to initialize all peripherals
void init_devices(void)
{
 //stop errant interrupts until set up
 CLI(); //disable all interrupts
 XDIV  = 0x00; //xtal divider
 XMCRA = 0x00; //external memory
 port_init();
//adc_init();
uart1_init();

 MCUCR = 0x00;
 EICRA = 0x0A; //extended ext ints
 EICRB = 0x00; //extended ext ints
 EIMSK = 0x03;
 //TIMSK = 0x40; //timer interrupt sources
 TIMSK = 0x00;
 ETIMSK = 0x00; //extended timer interrupt sources
 SEI(); //re-enable interrupts
 //all peripherals are now initialized
}
//UART1 initialize
// desired baud rate:19200
// actual baud rate:19231 (0.2%)
void uart1_init(void)
{
 UCSR1B = 0x00; //disable while setting baud rate
 UCSR1A = 0x00;
 UCSR1C = 0x06;
 UBRR1L = 0x40; //set baud rate lo
 UBRR1H = 0x00; //set baud rate hi
 UCSR1B = 0x98;
}

#pragma interrupt_handler uart1_rx_isr:31
//cir+00100
void uart1_rx_isr(void)
{
 //uart has received a character in UDR
 if (all==CIR)
 	{
	   a=b;
	   b=c;
	   c=d;
	   d=e;
	   e=f;
	   f=UDR1;
	   if ((f<'0')||(f>'9'))return;
	   if (a=='+')//0x2b
	   	  {jiaodu=(b-48)*10000+(c-48)*1000+(d-48)*100+(e-48)*10+(f-48);
		   all=0;return;}
	   else if (a=='-')//0x2d
	   	  {jiaodu=-((b-48)*10000+(c-48)*1000+(d-48)*100+(e-48)*10+(f-48));
		   all=0;return;}
	   if (a!=0) {all=0;return;}
	     //PORTF=jiaodu;//while(1);
	}
 else if (all==LINE)
 	{
	   a=b;
	   b=c;
	   c=d;
	   d=e;
	   e=f;
	   f=UDR1;
	   if ((f<'0')||(f>'9'))return;
	   if (a=='+')
	   	  {juli=(b-48)*10000+(c-48)*1000+(d-48)*100+(e-48)*10+(f-48);
		   all=0;return;}
	   else if (a=='-')
	   	  {juli=-((b-48)*10000+(c-48)*1000+(d-48)*100+(e-48)*10+(f-48));
		   all=0;return;}
	   if (a!=0) {all=0;return;}
	   //PORTF=a;
	}
 else   if (all==0)//(johu!=3)&&(johu!=5)  //5:7-bit    3:8-bit
      {
	   a=b;
	   b=c;
	   c=d;
	   d=UDR1;
	   if ((a=='c')&&(b=='i')&&(c=='r'))
	     {
		   all=CIR;
		   a=0;b=0;c=0;d=0;e=0;f=0;
		   return; }//RXlen=4;{johu=3;RXlen=3;return;}
	   else if ((a=='l')&&(b=='i')&&(c=='n')&&(d=='e'))
	     {
		   all=LINE;
		   a=0;b=0;c=0;d=0;e=0;f=0;
		   return; }//RXlen=4;{johu=5;RXlen=3;return;}
	   else if ((b=='c')&&(c=='l')&&(d=='s')) 
	     {
		  xx=0;
		  jiaodu=0;
		  juli=0;
		 }
		   ////////////////////////////////////////////////////////////////////
	 }
}



/*void number(unsigned char X,unsigned char Y,unsigned char LEN,int NUM,unsigned char BLACK)
{
 char code[]={'0','1','2','3','4','5','6','7','8','9',};
 if (NUM<0)
 	{LCD_write_String1(X,Y,"-");NUM=-NUM;}
 else
 	{LCD_write_String1(X,Y,"+");}
X=X+6;
 while(LEN--)
 	 {
	  LCD_write_String1(X+LEN*6,Y,& code[NUM%10]);
	  NUM=NUM/10;
	 } 
}*/
void number_uart1(long NUM,char huanhang)
{long n=0;
 			if (NUM<0){n=-NUM; while(!(UCSR1A&(1<<UDRE1))); UDR1='-';}
			else  {n=NUM;while(!(UCSR1A&(1<<UDRE1))); UDR1='+';}	
		     while(!(UCSR1A&(1<<UDRE1)));
		     UDR1=(n/10000)%10+48;
		     while(!(UCSR1A&(1<<UDRE1)));
		     UDR1=(n/1000)%10+48;
			 while(!(UCSR1A&(1<<UDRE1)));
		     UDR1=(n/100)%10+48;
			 while(!(UCSR1A&(1<<UDRE1)));
		     UDR1=(n/10)%10+48;
			 while(!(UCSR1A&(1<<UDRE1)));
		     UDR1=n%10+48;
			if (huanhang)
			 {
			  while(!(UCSR1A&(1<<UDRE1)));
		      UDR1=0x0d;
			  while(!(UCSR1A&(1<<UDRE1)));
		      UDR1=0x0a;
			 }
			 else
			 {
			  while(!(UCSR1A&(1<<UDRE1)));
		      UDR1=0x20;
			  while(!(UCSR1A&(1<<UDRE1)));
		      UDR1=0x20;
			 } 
}

unsigned char shuliang=0;
unsigned char xuanze=0;
#pragma interrupt_handler int0_isr:2
void int0_isr(void)
{
 //external interupt on INT0
 
x_adc=0;y_adc=0;
chang=1;
 shuliang=ms;
 ms=0;

}

#pragma interrupt_handler int1_isr:3
void int1_isr(void)
{//CLI();
 //external interupt on INT1
/*while(x_adc<video_x)
{ v_temp[y_adc*video_x  +  x_adc] =0;x_adc++;}*/
if(xuanze++>5){xuanze=0;x_adc=0;y_adc++;}

x_adc=video_x+1;
//v_num=(v_num/video_x+1)*video_x;
ms++;
 //hang=1;
 //SEI();
}

//TIMER0 initialize - prescale:8
// WGM: Normal
// desired value: 2uSec
// actual value:  2.000uSec (0.0%)
void timer0_init(void)
{
 TCCR0 = 0x00; //stop
 ASSR  = 0x00; //set async mode
 TCNT0 = 0xFB; //set count
 OCR0  = 0x05;
 TCCR0 = 0x02; //start timer
}

#pragma interrupt_handler timer0_ovf_isr:17
void timer0_ovf_isr(void)
{
 TCNT0 = 0xFB; //reload counter value
if (  (xuanze!=0) &&  (xuanze<2)  )//濾波均值
  v_temp[y_adc][x_adc]=v_temp[y_adc][x_adc]/4+ADC/4;
else /**/
  v_temp[y_adc][x_adc]=ADC>>1;
}
#define PWM_ON    DDRB|=   R_pwm0 | R_pwm1 | L_pwm0 | L_pwm1;
#define PWM_OFF   DDRB&= ~(R_pwm0 | R_pwm1 | L_pwm0 | L_pwm1);

main()
{int n;
unsigned char n_jiaodu=0,n_juli=0;
unsigned char n_sec=0;

unsigned int v_num_now=0;//x_now,y_now;
unsigned char xv,yv;

init_devices();
PORTD|=0x03;//外部中斷
DDRD&=~03; 
//while(1);
DDRE|=0x38;//while(1);
/////////LCD
	/* DDRB = 0xBF;    //SI輸入,SO,SCK,SS輸出
	 SPCR = 0x50;  //setup SPI
	 SPSR = 0x01;  //setup SPI*/
/*while(!(UCSR0A&(1<<UDRE0)));
UDR0='a';while(!(UCSR0A&(1<<UDRE0)));
UDR0='a';while(!(UCSR0A&(1<<UDRE0)));
UDR0='a';while(!(UCSR0A&(1<<UDRE0)));
UDR0='a';*/
delay_ms(3000);
number_uart1(1010,1);
			number_uart1(xx,0);
			number_uart1(ADCjohu,1);
delay_ms(3000);	
xx=0;
//LCD_Init();
//LCD_clear();
DDRE &= ~0x7c;//if (!(PORTE & STOP))  if (!(PORTE & VOLDOWN))  if (!(PORTE & VOLUP))  if (!(PORTE & NEXTSONG))  if (!(PORTE & PREVSONG))
PORTE |=0x7c;
DDRE=0x00;PORTE=0xff;
  while(1)
  { 	   	
			   
	//for(xv=0;xv<video_x;xv++)		   	  
  	ADMUX = 0x01;                           // A/D converter input pin number = 0
    ADCSRA = 0xc2;//|ADATE;                           // single A/D conversion, fCK/32, conversion now started 
    //for(y_adc=0;y_adc<video_y;y_adc++)
//while(PINE!=0xff)
 if (xuanze==0)
{
	for(x_adc=0;x_adc<video_x;x_adc++)
    {
        do
        {
		 //PORTE=~PORTE;
        } while(!(ADCSRA&(1<<ADIF)));// ADSC        // Wait for A/D conversion to finish
        /*count = 6;                          
        do                                   // Customize this loop to 66 cycles !!
        {
        } while(--count);*/                   // wait some cycles
        ADCSRA |= 0x40;                      // start new A/D conversion 
        //write_to_flash(ADC-0x1D5);          // read data, convert to 8 bit and store in flash
		if (  (xuanze!=0) &&  (xuanze<2)  )//濾波均值
		  v_temp[y_adc][x_adc]=v_temp[y_adc][x_adc]/4+ADC/4;
		else /**/
		  v_temp[y_adc][x_adc]=ADC>>1;
		  
    }
}
    ADCSRA = 0x00;                           // disable AD converter
	
  		/*if (adc1>0)
		   {//if (n_sec++>1000)
		   	   {
			   	v_temp[v_num++]=ADC;
			   	adc1=0;
			   	if (v_num>1023)v_num=0;
				n_sec=0;
			   }
			adc1=0;
		   }*/
		if  (!(PINE & NEXTSONG))//( v_num_now!=v_num )
		   {
		   	for(yv=0;yv<video_y;yv++)
			   {
			   	for(xv=0;xv<video_x;xv++)
				  { //SEI();
				   while(!(UCSR1A&(1<<UDRE1)));
		     	     UDR1=v_temp[yv][xv];//CLI();
				  }
				while(!(UCSR1A&(1<<UDRE1)));
		        UDR1=50;
			    while(!(UCSR1A&(1<<UDRE1)));
		        UDR1=2;  
			   }
			while(!(UCSR1A&(1<<UDRE1)));
		    UDR1=100;
			while(!(UCSR1A&(1<<UDRE1)));
		    UDR1=4;
		  }
		  if  (!(PINE & PREVSONG))
		  //if (chang==1)
		  {number_uart1(shuliang,0);
		   number_uart1(shuliang,0);
		   number_uart1(shuliang,1);
		   chang=0;
		   ms=0;
		  }
		  
		   
		/*if (!(PINE & NEXTSONG))
	    	{
			//CLI();
			number_uart1(xx,0);
			number_uart1(ADCjohu,1);
			delay_ms(20);
			//SEI();
			}
   	    ms=0;*/
       
  }

}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩性生活| 日韩午夜小视频| 99久精品国产| 波多野结衣中文一区| 国产一区在线观看视频| 久久福利视频一区二区| 美女网站在线免费欧美精品| 久热成人在线视频| 日本强好片久久久久久aaa| 日本怡春院一区二区| 男女男精品视频网| 久草精品在线观看| 国产一区二区免费视频| 国产成人精品午夜视频免费| 成人app网站| 欧美亚洲一区二区在线| 欧美高清视频一二三区 | 成人高清免费在线播放| 成人免费三级在线| 99精品久久只有精品| 91麻豆高清视频| 欧美日韩免费一区二区三区视频| 欧美特级限制片免费在线观看| 6080国产精品一区二区| 日韩欧美国产一区二区在线播放 | 亚洲国产精品传媒在线观看| 国产精品久久久久久亚洲毛片| 亚洲欧洲色图综合| 亚洲一区二区三区四区在线免费观看| 亚洲成在人线免费| 国产美女主播视频一区| 91免费国产在线观看| 制服丝袜中文字幕一区| 26uuu色噜噜精品一区二区| 亚洲天堂福利av| 日韩精品五月天| 大胆欧美人体老妇| 欧美在线free| 久久久久久久久久久久电影| 国产精品美女久久久久久久网站| 一区二区三区精品在线| 久久精品国产精品亚洲精品 | 欧美大肚乱孕交hd孕妇| 日本一区二区动态图| 亚洲在线观看免费视频| 精品一区二区在线观看| 色欲综合视频天天天| 日韩一级片在线播放| 中文字幕在线不卡视频| 三级一区在线视频先锋 | 欧美精品九九99久久| 国产三级久久久| 亚洲成人av电影| 风间由美一区二区三区在线观看 | 欧美久久一区二区| 欧美大片在线观看一区二区| 亚洲欧美电影一区二区| 狠狠色丁香婷综合久久| 色www精品视频在线观看| 久久一区二区三区国产精品| 亚洲国产精品麻豆| 成人免费观看av| 欧美不卡一二三| 一区二区激情视频| 国产精品一区二区视频| 欧美日韩亚洲另类| 亚洲美女屁股眼交3| 国产麻豆精品视频| 日韩欧美国产三级| 亚洲高清免费视频| 91小视频免费观看| 国产亚洲一区二区在线观看| 视频在线观看91| 日本黄色一区二区| 国产精品嫩草99a| 国产精品一二二区| 欧美大片日本大片免费观看| 午夜婷婷国产麻豆精品| 在线看一区二区| 亚洲男同性恋视频| 99久久精品免费观看| 久久精品亚洲乱码伦伦中文| 久久超碰97人人做人人爱| 4438x亚洲最大成人网| 一区二区三区 在线观看视频| 白白色亚洲国产精品| 国产清纯白嫩初高生在线观看91| 捆绑调教一区二区三区| 欧美精品粉嫩高潮一区二区| 亚洲国产精品自拍| 欧美亚洲高清一区二区三区不卡| 综合激情网...| 99久久99久久精品国产片果冻 | 亚洲精品高清视频在线观看| 成人国产精品免费观看视频| 中文字幕精品一区二区三区精品| 久草在线在线精品观看| 精品久久一区二区| 激情欧美一区二区| www精品美女久久久tv| 久久激情五月婷婷| 日韩欧美一区二区免费| 美女视频黄a大片欧美| 精品日韩一区二区三区免费视频| 男人的天堂久久精品| 日韩美一区二区三区| 久久精品99国产精品日本| 日韩欧美一区中文| 国产呦萝稀缺另类资源| 久久久久久久国产精品影院| 国产suv精品一区二区6| 国产精品国产三级国产a| 91一区二区三区在线播放| 一区二区免费在线播放| 欧美日韩色综合| 麻豆精品国产传媒mv男同| 欧美成人女星排行榜| 激情六月婷婷久久| 国产精品全国免费观看高清| av成人免费在线观看| 亚洲精品午夜久久久| 欧美日韩国产影片| 免费的成人av| 亚洲精品一线二线三线无人区| 国产精品自在欧美一区| 国产精品久久久久久福利一牛影视| 成人黄色网址在线观看| 一区二区三区小说| 91精品国产综合久久久久| 久久99国产精品免费网站| 国产精品美女久久久久aⅴ国产馆| 91在线免费播放| 视频在线在亚洲| 欧美国产综合色视频| 在线视频一区二区三| 免费成人结看片| 欧美国产综合色视频| 欧美日韩成人综合| 国产一区在线观看麻豆| 亚洲黄色小视频| 欧美变态tickle挠乳网站| 丰满放荡岳乱妇91ww| 亚洲一区二区三区精品在线| 欧美成人艳星乳罩| 99国产欧美另类久久久精品| 免费看精品久久片| 亚洲视频在线观看一区| 日韩一区二区三区免费观看| jlzzjlzz亚洲女人18| 日本美女一区二区三区| 国产精品传媒在线| 日韩视频在线永久播放| 91小视频在线| 狠狠狠色丁香婷婷综合激情 | 亚洲午夜羞羞片| 国产亚洲一二三区| 欧美日韩和欧美的一区二区| 国产成人精品影院| 免费视频一区二区| 一区二区三区在线视频观看 | 亚洲精品免费在线| 久久美女高清视频| 欧美日本国产一区| a4yy欧美一区二区三区| 理论片日本一区| 午夜精品久久久久| 国产精品免费av| 日韩精品在线看片z| 欧美色图天堂网| av一区二区久久| 国内精品伊人久久久久影院对白| 亚洲高清在线视频| 国产精品国产成人国产三级| 欧美v亚洲v综合ⅴ国产v| 欧美日韩你懂得| 色偷偷久久人人79超碰人人澡| 国产美女精品人人做人人爽| 日日骚欧美日韩| 亚洲香肠在线观看| 成人免费在线视频观看| 久久久国产精品不卡| 日韩欧美中文字幕精品| 欧美日韩中文字幕精品| 91玉足脚交白嫩脚丫在线播放| 国产激情视频一区二区在线观看| 蜜桃视频一区二区三区在线观看| 亚洲精品videosex极品| 国产精品美女久久久久aⅴ| 久久久久久久久久久久电影 | 亚洲香蕉伊在人在线观| 日韩理论片一区二区| 国产精品毛片久久久久久久| 国产亚洲精品中文字幕| 精品美女被调教视频大全网站| 91精品国产高清一区二区三区蜜臀| 欧美性淫爽ww久久久久无| 色av成人天堂桃色av| 在线免费观看日本欧美| 在线观看免费视频综合| 91成人在线精品|