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

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

?? coder.c

?? m8改造4VF遙控器
?? C
字號:
//中斷方式發(fā)送PWM脈沖,負(fù)脈沖,變化范圍為1MS~2MS。INT0為教練接口輸入負(fù)脈沖,INT1為教練接口2,輸入正脈沖后自動翻轉(zhuǎn),
//外部中斷接口打開上拉。隔離脈沖為500US
//有一個教練允許開關(guān),打開后進入死循環(huán),并允許外部中斷,前提條件是有信號,用定時器0進行信號有無判斷
//定時器1采用比較匹配方式觸發(fā)中斷進行信號發(fā)送


#include <iom8v.h>
#include <macros.h>

#define Uchar unsigned char
#define Uint unsigned int


#define nop() asm("nop")
#define _nop_() asm("nop")



#define PB PORTB
#define PC PORTC
#define PD PORTD
 
#define IN0 PIND&0x04
#define IN1 PIND&0x08

#define LEDH PB|=0x01
#define LEDL PB&=~0x01

#define BUTTON1 PINB&0x02
#define BUTTON2 PINB&0x04
#define BUTTON3 PINB&0x08
#define BUTTON4 PINB&0x10
#define BUTTON5 PINB&0x20

#define OUTH PD|=0x80
#define OUTL PD&=~0x80

#define LOW_TIME 400
#define SWH_time 900
#define SWL_time 100

Uint ch_time[9]={1000,1000,1000,1000,1000,1000,1000,1000,1000};//輸出用
Uint time[9];//輸出緩存
Uchar ch_counter=0;//通道計數(shù),用來與數(shù)據(jù)采集同步
Uchar input=0;//信號輸入有無標(biāo)志
Uchar train=0;//訓(xùn)練開始表示,防止切換時發(fā)生抖舵

void port_init(void)
{
 PORTB = 0x3E;
 DDRB  = 0x01;
 PORTC = 0x00; //m103 output only
 DDRC  = 0x00;
 PORTD = 0x0C;
 DDRD  = 0x80;
}

//c輸入

//TIMER0 initialize - prescale:1024
// desired value: 1Hz
// actual value: Out of range
void timer0_init(void)
{
 TCCR0 = 0x00; //stop
 TCNT0 = 0x00 /*INVALID SETTING*/; //set count
 //TCCR0 = 0x05; //start timer
}

#pragma interrupt_handler timer0_ovf_isr:10
void timer0_ovf_isr(void)
{
 input=0;
 train=0;
}

//TIMER1 initialize - prescale:8
// WGM: 0) Normal, TOP=0xFFFF
// desired value: 1Hz
// actual value: Out of range
void timer1_init(void)
{
 TCCR1B = 0x00; //stop
 TCNT1H = 0x00 /*INVALID SETTING*/; //setup
 TCNT1L = 0x00 /*INVALID SETTING*/;
 OCR1AH = 0x00 /*INVALID SETTING*/;
 OCR1AL = 0x00 /*INVALID SETTING*/;
 OCR1BH = 0x00 /*INVALID SETTING*/;
 OCR1BL = 0x00 /*INVALID SETTING*/;
 ICR1H  = 0x00 /*INVALID SETTING*/;
 ICR1L  = 0x00 /*INVALID SETTING*/;
 TCCR1A = 0x00;
 TCCR1B = 0x02; //start Timer
}

#pragma interrupt_handler timer1_compa_isr:7
void timer1_compa_isr(void)
{
 //compare occured TCNT1=OCR1A//本函數(shù)來自4Vf改裝系統(tǒng),有部分改變
 static Uchar output_static=1;//輸出狀態(tài),0代表即將輸出一個低電平,1代表即將輸出一個高電平
                           //第一次發(fā)信號先發(fā)一個低電平
 	
Uchar counter;//普通計數(shù)器用來拷貝數(shù)據(jù)

					   
output_static=!output_static;
  
switch(output_static)
{
case 0:OUTH;
       TCNT1=0;//定時器清零
	   OCR1A=LOW_TIME;
	   if(ch_counter==9)ch_counter=0;//計數(shù)清零同步放行
break;

case 1:OUTL;
       TCNT1=0;//定時器清零
	   OCR1A=ch_time[ch_counter];  
	        if(ch_counter==8)//最后一個高電平是同步電平
	   {
	      for(counter=0;counter<=8;counter++)
	      {
	      ch_time[counter]=time[counter]+600;
		  
	      }
	   }
	   ch_counter++;
}// switch(output_static)

}//void timer1_compa_isr(void)



//ADC initialize
// Conversion time: 104uS
void adc_init(void)
{
 ADCSR = 0x00; //disable adc
 ADMUX = 0x00; //select adc input 0
 ACSR  = 0x80;
 ADCSR = 0x86;
}

//Watchdog initialize
// prescale: 32K 
void watchdog_init(void)
{
 WDR(); //this prevents a timout on enabling
 WDTCR = 0x18;
 WDTCR = 0x09; //WATCHDOG ENABLED - dont forget to issue WDRs
 
}



//call this routine to initialize all peripherals
void init_devices(void)
{
 //stop errant interrupts until set up
 CLI(); //disable all interrupts
 
 port_init();
 timer0_init();
 timer1_init();
 adc_init();
 OSCCAL=0xb3;
 watchdog_init();
 MCUCR = 0x05;
 //GICR//中斷開關(guān)應(yīng)在MAIN中用開關(guān)和信號有無控制
 GICR  = 0x00;
 TIMSK = 0x11; //timer interrupt sources
 SEI(); //re-enable interrupts
 //all peripherals are now initialized
}



#pragma interrupt_handler int0_isr:2
void int0_isr(void)
{
 //external interupt on INT0 負(fù)輸入
 TCNT0 = 0x00 ;//有信號
 input=1;
 if(train)//先不忙發(fā)送
 switch(IN0)
 {
 case 0:
 OUTL;
 break;
 case 0x04:
 OUTH;
 }
}

#pragma interrupt_handler int1_isr:3
void int1_isr(void)
{
 //external interupt on INT1 正輸入自動反向
 TCNT0 = 0x00 ;//有信號
 input=1;
 if(train)//先不忙發(fā)送
  switch(IN1)
 {
 case 0:
 OUTH;
 break;
 case 0x08:
 OUTL;
 }
 
}



void Putchar (Uchar c)
{
while(!(UCSRA&(1<<UDRE)));
UDR=c;
}


Uint ReadADC (Uchar channel)
{
Uint int1,int2;
ADMUX&=~0x1F;
ADMUX|=channel;
ADCSRA|=0x40;
while(~ADCSRA&0x10){}
ADCSRA|=0x10;
int2=ADCL;
int1=ADCH;
int1<<=8;
return (int1+int2);
}


main()
{

Uint batt;//電量
Uint temp[4];//濾波用
Uint youmen ;//油門緩存
Uchar counter ;//采集計數(shù)
Uchar safe=1,safedelay=0;//油門保護
Uchar warning_frequency;//警告頻率
Uchar warning_counter=0;
Uchar ledonof=0;
Uchar battcheck=1;//檢測電量許可
Uchar checken=200;//等待電壓穩(wěn)定

init_devices();


while(1)
{


for(counter=0;counter<=3;counter++)
{
temp[counter]=ReadADC (counter);
if((temp[counter]>time[counter]+1)||(temp[counter]<time[counter]-1))time[counter]=temp[counter];

}

batt=ReadADC (4);

if(BUTTON1)time[4]=SWL_time;else time[4]=SWH_time;
if(BUTTON2)time[5]=SWL_time;else time[5]=SWH_time;
if(BUTTON3)time[6]=SWL_time;else time[6]=SWH_time;
if(BUTTON4)time[7]=SWL_time;else time[7]=SWH_time;

time[8]=12000-time[0]-time[1]-time[2]-time[3]-time[4]-time[5]-time[6]-time[7];

WDR();

if(safe)
{
youmen=time[2];
time[2]=0;
if(safedelay>3)
 {
  if(youmen<50)safe=0;
 }
else safedelay++;
}


if(!(BUTTON5))
{
TCCR0 = 0x05; //start timer//開始判斷有無信號
GICR  = 0xC0;//外中斷開
  if (input)
  {
  TCCR1B = 0x00;//原來的信號發(fā)送關(guān)閉
  train=1;//開始訓(xùn)練
  ch_counter=0;//等待放行
  }
  else
  {
  TCCR1B = 0x02;
  train=0;//退出時關(guān)閉訓(xùn)練
   ////原來的信號發(fā)送打開
  }
}//if(!(BUTTON5))
else
{
GICR  = 0x00;//外中斷關(guān)
TCCR0 = 0x00;
TCNT0 = 0x00;
train=0;
input=0;
TCCR1B = 0x02;
}

////////////////////////////

if(checken==0)
{
if(battcheck)
{
if(batt<450) //進入報警狀態(tài)
{
  if(batt>393) //進入頻閃狀態(tài)
{
warning_frequency=batt-390;
warning_counter++;
if(warning_counter>=warning_frequency)
{
warning_counter=0;
ledonof=!ledonof;
if(ledonof)LEDH;
else LEDL;
}
}
 else {LEDH;battcheck=0; }//進入長亮狀態(tài),不允許電壓回升

}

else LEDL;  //關(guān)閉
}
}//if(checken==0)
else checken--;


////////////////////////////

while(ch_counter);

}//while(1)

}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线观看日韩国产| 久久精品国产一区二区三区免费看| 久久久噜噜噜久噜久久综合| 国产日韩精品久久久| 亚洲欧美精品午睡沙发| 日韩专区欧美专区| 成人精品免费网站| 欧美日韩一区二区欧美激情 | 奇米精品一区二区三区在线观看| 日本不卡视频在线观看| 成人免费电影视频| 日韩三级.com| 亚洲精品欧美综合四区| 国产美女一区二区三区| 91黄色小视频| 亚洲人123区| 国产成人精品三级麻豆| 欧美一级xxx| 亚洲观看高清完整版在线观看| 丰满亚洲少妇av| 欧美mv日韩mv国产| 日韩av一区二区在线影视| 色美美综合视频| 综合久久国产九一剧情麻豆| 国产成人午夜高潮毛片| 久久综合网色—综合色88| 天堂一区二区在线| 成人手机在线视频| 久久久久99精品国产片| 日韩av电影免费观看高清完整版| 91碰在线视频| 亚洲日本免费电影| 欧美午夜片在线看| 麻豆国产欧美一区二区三区| 91精品国产色综合久久不卡电影| 视频在线观看一区二区三区| 欧美日韩dvd在线观看| 美女爽到高潮91| 久久这里只精品最新地址| 老司机精品视频一区二区三区| 91久久奴性调教| 日欧美一区二区| 久久精品人人做人人综合| 成人免费观看av| 性久久久久久久| 精品99一区二区三区| 97精品久久久久中文字幕| 亚洲午夜久久久久久久久久久| 日韩一区二区免费视频| 国产寡妇亲子伦一区二区| 国产精品美女久久久久aⅴ国产馆| 91国产精品成人| 久久国产精品第一页| 一区二区在线免费| 久久久久久免费| 在线综合视频播放| 一道本成人在线| 国产一区在线观看视频| 日本v片在线高清不卡在线观看| 国产精品午夜在线| 26uuu国产一区二区三区| 欧美日韩精品一区二区三区蜜桃| 成人激情小说网站| 国产精品白丝jk黑袜喷水| 免费在线一区观看| 亚洲高清免费视频| 一区二区三区毛片| 国产精品久久久久一区| 欧美国产一区在线| 久久久亚洲精品一区二区三区| 欧美精品aⅴ在线视频| 欧美午夜免费电影| 欧美日韩国产首页| 欧美电影在线免费观看| 欧美男生操女生| 欧美丰满一区二区免费视频| 在线一区二区三区四区五区| 色噜噜狠狠成人网p站| 91色视频在线| 亚洲精品视频在线| 久久众筹精品私拍模特| 久久一留热品黄| 国产亚洲一本大道中文在线| 午夜激情久久久| 色婷婷久久久久swag精品| 国产亚洲精品免费| 日韩av电影天堂| 欧美精品一级二级| 亚洲成人av一区| 欧美色倩网站大全免费| 亚洲靠逼com| 色国产精品一区在线观看| 最新高清无码专区| 成人精品鲁一区一区二区| 成人国产免费视频| 日本韩国一区二区| 久久久久国产精品厨房| 91丨九色porny丨蝌蚪| 亚洲天堂福利av| 色婷婷激情综合| 亚洲自拍另类综合| 欧美三区在线观看| 日韩精品一二三四| 7777女厕盗摄久久久| 久久精品99久久久| 久久精品视频网| 成人av影视在线观看| 亚洲人123区| 欧美一区二区三区免费| 粉嫩av一区二区三区在线播放| 国产精品视频一二三| 欧美午夜精品久久久久久超碰| 亚洲精品水蜜桃| 日韩免费电影网站| 成人免费高清在线观看| 日韩高清不卡一区二区三区| 欧美日韩在线观看一区二区 | 99久久99久久精品免费看蜜桃| 亚洲欧洲在线观看av| 欧美一区二区免费| 国产91精品一区二区麻豆亚洲| 一区二区在线免费观看| 亚洲精品在线观看网站| 一本久久综合亚洲鲁鲁五月天 | 色欧美乱欧美15图片| 日本欧美一区二区三区乱码| 亚洲图片你懂的| 日韩三级视频中文字幕| 在线欧美日韩国产| 成人午夜碰碰视频| 激情丁香综合五月| 亚洲一区二区视频| 欧美色涩在线第一页| 成人app网站| 国产99一区视频免费| 亚洲a一区二区| 亚洲免费av高清| 亚洲图片激情小说| 中文字幕第一区综合| 日韩美女在线视频| 欧美日韩国产另类不卡| 欧美三级电影网| 91免费精品国自产拍在线不卡| 国产精品一区二区久久精品爱涩 | 欧美一区二区免费| 欧美色精品在线视频| 欧美精品乱人伦久久久久久| 色婷婷激情久久| 欧美色图片你懂的| 国产九九视频一区二区三区| 精品一区二区三区视频| 国产乱码精品一区二区三区av| 国产一区二区三区免费看| 国产ts人妖一区二区| 色天天综合久久久久综合片| 欧美性猛交xxxxxx富婆| 日韩女优电影在线观看| 国产日韩欧美高清在线| 亚洲va欧美va人人爽| 奇米色一区二区| 国产成人在线看| 在线观看www91| 久久久亚洲精品石原莉奈| 亚洲视频一区在线| 狠狠色伊人亚洲综合成人| a亚洲天堂av| 26uuu国产在线精品一区二区| 国产欧美日韩精品一区| 日韩精品1区2区3区| 国产福利一区二区| 欧美一卡2卡三卡4卡5免费| 国产精品久久久久影院色老大| 男人的j进女人的j一区| 成人精品视频网站| 久久综合成人精品亚洲另类欧美 | 欧美日本在线看| 欧美国产精品劲爆| 国产在线一区二区| 欧美在线一二三| 欧美激情一区二区三区蜜桃视频| 偷拍一区二区三区四区| 日本韩国精品在线| 国产精品久久久久一区二区三区| 久久爱www久久做| 欧美一区二区三区日韩| 天堂久久久久va久久久久| 91丨九色porny丨蝌蚪| 亚洲欧美乱综合| 99re亚洲国产精品| 亚洲一区二区四区蜜桃| 在线观看av一区二区| 午夜视频在线观看一区二区 | 极品少妇一区二区三区精品视频| 欧美亚洲自拍偷拍| 亚洲成av人片在线| 欧美性受xxxx黑人xyx性爽| 亚洲高清免费观看| 欧美视频一区二区| 激情小说亚洲一区| 精品精品欲导航|