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

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

?? fc_v20.txt

?? 實現模糊控制算法(AD DA)和人機接口(4x4鍵盤 2x16LCD 串口1/2)
?? TXT
?? 第 1 頁 / 共 2 頁
字號:
//-------------------------------------------------------------------
//
// Major Functions:	TOP File FUZZY CONTROL
//
// --------------------------------------------------------------------
//
// Revision History :
// --------------------------------------------------------------------
//   Ver  :| Author            :| Mod. Date :| Changes Made:
//   V1.0 :| SJITON            :| 06/12/06  :| Initial Revision
//   V1.5 :| SJITON            :| 06/12/28  :| Add GPIO_C & GPIO_D
// --------------------------------------------------------------------


#include<c8051f040.h>
#include<stdio.h>
#include<FLOAT.h>
#include<absacc.h>
#include<intrins.h>
#include<math.h>

#define ADC0START temppage=SFRPAGE;SFRPAGE=0x00;AD0BUSY=1;SFRPAGE=temppage
#define aalen 24
#define		TURE	0
#define		FALSE	1
#define		delay_key_VALUE	3
typedef unsigned int uint;
typedef unsigned char uchar;
typedef unsigned long ulong;
sfr16 RCAP2=0xca;
sfr16 RCAP3=0xca;
sfr16 RCAP4=0xca;
sfr16 TMR4=0xcc;
sfr16 TMR3=0xcc;
sfr16 TMR2=0xcc;
sfr16 PCA0CP0=0xfb;
sfr16 PCA0CP1=0xfd;
sfr16 PCA0CP2=0xe9;
sfr16 PCA0CP3=0xeb;
sfr16 PCA0CP4=0xed;
sfr16 PCA0CP5=0xe1;
sfr16 ADC0VAL=0xbe;
sfr16 ADC0GT=0xc4;
sfr16 ADC0LT=0xc6;
sfr16 DAC0VAL=0xD2;

sbit key1=P6^0	;
sbit key2=P6^1;
sbit key3=P6^2;
sbit key4=P6^3;
sbit scankey1=P6^4;
sbit scankey2=P6^5;
sbit scankey3=P6^6;
sbit scankey4=P6^7;
sbit RS=P7^0;
sbit RW=P7^1;
sbit EN=P7^2;
sbit BU=P5^7;
void delay( long m);
void delay_lcd(uchar time);
void EN_Puls();
void LCD_RDY();
void Wr_Com(uchar command);
void Wr_Dat(uchar dat);
void Wr_Pos(uchar colum,uchar row);
void Wr_Str(uchar *s);
void Wr_Ara(uchar s[]);
void Init_LCD();
void delay_key(short i);     //延時程序
uchar keyscan();     //鍵盤的掃描程序
void menu_1();
void menu_2();
void menu_3();
void menu_4();
void menu_5();
void menu_6();
void menu_m();
void ReadData(void) ;
xdata uchar aa[aalen]={0x20,0x20,0x53,0x54,0x55,0x56,
					   0x57,0x58,0x20,0x20,0x61,0x62,
					   0x63,0x64,0x65,0x66,0x20,0x20,
					   0x67,0x68,0x69,0x70,0x71,0x72};
xdata uchar res[6]={0x01,0x02,0x03,0x04,0x05,0x06};
xdata uchar sk;
xdata uchar start;
xdata uchar kk;
uchar ii,tt;
bit isfirstdata;

void config ();
void T2_config();
void T2_baud(uchar);
void T1_config();
void Uart1_config();
void T1_baud(uchar)	;

void proc_send_data_wd (float) ;//return in aa[]
void proc_send_data_yl (float) ;//return in aa[]
void proc_send_data_sw (float) ;//return in aa[]

uchar keyword,p;
uchar  code  display_code[]={0x00,0x01,0x02,0x03,0x04,0x05,
                                      0x06,0x07,0x08,0x09,0x0a,0x0b,
                                      0x0c,0x0d,0x0e,0x0f};
uchar code table[]={0x00,0x01,0x02,0x03,
                            0x04,0x05,0x06,0x07,
                            0x08,0x09,0x0a,0x0b,
                            0x0c,0x0d,0x0e,0x0f};

uchar temppage;
bit isnewdata;
xdata uint k,j,i;
unsigned char keyscan(void);//函數的聲明


void config ()
{
    WDTCN = 0x07;
    WDTCN = 0xde;
    WDTCN = 0xad;
    
    SFRPAGE = 0x0F;
    XBR0 = 0x04;	//
    XBR1 = 0x00;
    XBR2 = 0x44;	// 交叉開關使能使用UART1和交叉開關使能
    XBR3 = 0x00; 
	   
    SFRPAGE = 0x0F;
    P0MDOUT = 0x00; 	//P0為開漏模式
    P1MDIN = 0xFF;
    P1MDOUT = 0x00; 	//P1為開漏模式
    P2MDOUT = 0x00; 	//P2為開漏模式

    SFRPAGE = 0x0F;
    CLKSEL = 0x00;  
    OSCXCN = 0x00;	
    OSCICN = 0x84;		//采用內部晶振,為24.5MHZ8分頻

}


void T2_config()
{
    SFRPAGE = 0x00;
    TMR2CF = 0x08; 	//自動重載,自增
    TMR2CN = 0x04;  //啟動T2
}


void Uart0_config()
{
    SFRPAGE = 0x00;
    SADDR0 = 0x00;     
    SADEN0 = 0x00;	//從機廣播地址屏蔽    
    SSTA0 = 0x05; //UART0收發都以T2為時鐘源
    SCON0 = 0x50; //模式1
    SCON0 &= 0xFC;
    IE|=0x10;	//開中斷
    T2_config();	//T2溢出率
}


void T2_baud(uchar val)
{
	SFRPAGE = 0x00;
	RCAP2 = ~val+1;     
	TMR2 = RCAP2;     
}

void T1_config()
{
    SFRPAGE = 0x00;
    CKCON = 0x01;   
    TMOD = 0x20;   		// T1為8位自動重載模式
    TCON = 0x40;    	// TR1置1,啟動定時器
}	


void Uart1_config()
{
    SFRPAGE = 0x01;    
    SCON1 = 0x10;       // 工作在8bit模式,接收使能
    SCON1 &= 0xFC; 	//清中斷標志
    EIE2 |= 0x40;       //開啟UART1中斷
    T1_config();		
}			


void T1_baud(uchar val)	//T1溢出率設置,溢出率為(T1時鐘頻率)/(val)
{
	SFRPAGE = 0x00;
	TH1 = ~val+1;
	TL1 = TH1;
}

void delay1(void)                 /*延遲1ms*/
{
	uint i;
	uint j;
	for (i=0;i<100;i++)
	{
		for(j=0;j<300;j++);
     }
}		          
/*主程序*/
void main(void)      
{
    config();
	Uart0_config();
	Uart1_config();
	T2_baud(10);		//波特率為19200bps UART0
	T1_baud(77);		//波特率為4800bps UART1
	EA=1;
    tt=0;
	kk=0;
    ii=0;
	SFRPAGE=0x00;
	TI0 = 0;
	SBUF0=0x30;
	while(!TI0);
	TI0 = 0;

        while(ii<24)
	 {
	  SFRPAGE=0x00;
	  TI0 = 0;
	  SBUF0=0x20;
	  while(!TI0);
	  TI0 = 0;

	  while(!RI0);
	  aa[ii]=SBUF0;
	  RI0=0;
	  ii++;
        }
   	sk=0;
   	SFRPAGE=0x00;
   	start=0;
	SFRPAGE=0x0f;
	Init_LCD();
	Wr_Pos(1,1);
	Wr_Str("    QQ  SJITON   ");
	Wr_Pos(1,2);
	Wr_Str("     WELCOM     ");
	delay(65535);
	menu_m();
}

/*ADC0中斷*/
void ADC0_ISR() interrupt 15
{
	SFRPAGE=0x00;
	AD0INT=0;
	isnewdata=1;
	i--;
}

/*UART1中斷	接收到0x20則往上位機依次傳數據接收到0x30則停止*/
void uart1_ISR() interrupt 20
{
unsigned char Save_SFR=SFRPAGE;
 if(RI1)
 {
		res[0]=SBUF1;//將接收數據寫入res[]數組
    if (res[0]==0x20)
	{
          start=1;
    }
   if (res[0]==0x30)
   {
         start=0;
         sk=0;
    }
   if (start==1)
   {
	     if(sk<aalen)
		 {
			SBUF1=aa[sk];//發送數據數組為aa[]
		  }
		sk++;
	   	TI1=0;
    }
	RI1=0;
 }
	if(TI1) {  }
}


//////////////////////////////
//            液晶顯示程序
/////////////////////////////
void delay_lcd(uchar time)
{
	while(time>0)
	{
		time --;
	}
}
void EN_Puls()
{
	EN=1;
	delay_lcd(10);
	EN=0;
	delay_lcd(10);
}

void LCD_RDY()
{
	RW=1;
	RS=0;	
	P5=0xff;
	EN=1;
	delay_lcd(10);
	while(BU==1);
	EN=0;
}

void Wr_Com(uchar command)
{
	P5=0xff;
	RW=0;
	RS=0;
	P5= command;
	EN_Puls();
	LCD_RDY();
}

void Wr_Dat(uchar dat)
{
	P5=0xff;
	RW=0;
	RS=1;
	P5=dat;
	EN_Puls();
	LCD_RDY();		
}

void Wr_Pos(uchar colum,uchar row)
{
	
	uchar p;
	SFRPAGE = 0x0F;
	if(row==1)
	{
		p=0x80+colum-1;
		Wr_Com(p);
	}
	else
	{
		p=0xc0+colum-1;
		Wr_Com(p);
	}
}

void Wr_Str(uchar *s)
{
	for(;*s!='\0';s++)
		Wr_Dat(*s);
}

void Wr_Ara(uchar s[])
{
	uchar i;
	for(i=0;i<16;i++)
	//Wr_Dat(s[i]+0x30);
              Wr_Dat(s[i]);
}

void Init_LCD()
{
	Wr_Com(0x38);
	Wr_Com(0x06);
	Wr_Com(0x0c);
	Wr_Com(0x01);
}

/*            			鍵盤掃描程序
此程序是鍵盤的掃描程序,這里的鍵盤是十六進制鍵盤,第1行從做到右為數字1,2,3,4,第2行為5,6,7,8
第3行為9,0,A,B,第4行為C,D,E,F。豎著的線從左到右分別接P1.0~p1.3,作為鍵盤的驅動線
橫者的線從上到下分別接P1.4~P1.7,是鍵盤的信號線
掃描的方法是先給P1.0 "1",然后依次檢測P1.4~P1.7,如果為高,則返回鍵碼值,然后向后掃描p1.1~p1.3.
*/
void delay_key(short i)      //延時程序
{
	int j=0;
	int k=0;
	k=i*delay_key_VALUE;
	while(j<k) j++;
}
unsigned char keyscan()          //鍵盤的掃描程序
{
	key1=TURE;
	SFRPAGE = 0x0F;
	if(scankey1==TURE)
		delay_key(delay_key_VALUE);
	if(scankey1==TURE)
	{
		delay_key(delay_key_VALUE);
		if(scankey1==TURE)
		{
			while(scankey1==TURE);
			return 12;
		}
	}
	if(scankey2==TURE)
		delay_key(delay_key_VALUE);
	if(scankey2==TURE)
	{
		delay_key(delay_key_VALUE);
		if(scankey2==TURE)
		{
			while(scankey2==TURE);
			return 8;
		}
	}
	if(scankey3==TURE)
		delay_key(delay_key_VALUE);
	if(scankey3==TURE)
	{
		delay_key(delay_key_VALUE);
		if(scankey3==TURE)
		{
			while(scankey3==TURE);
			return 4;
		}
	}
	if(scankey4==TURE)
		delay_key(delay_key_VALUE);
	if(scankey4==TURE)
	{
		delay_key(delay_key_VALUE);
		if(scankey4==TURE)
		{
			while(scankey4==TURE);
			return 0;
		}
	}	

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区伦理片| 制服丝袜亚洲色图| 久久综合色之久久综合| 国产成人aaa| 亚洲国产综合色| 精品国产凹凸成av人导航| 99在线视频精品| 美女视频黄频大全不卡视频在线播放| 国产肉丝袜一区二区| 波多野结衣亚洲| hitomi一区二区三区精品| av午夜一区麻豆| 在线观看亚洲一区| 成人一道本在线| 老司机精品视频导航| 亚洲国产美国国产综合一区二区| 成人免费视频一区二区| 国产99久久久国产精品免费看 | 久久精品男人的天堂| 色哟哟精品一区| 成人三级伦理片| 日本韩国欧美三级| 国产精品一区二区在线播放 | 美国精品在线观看| 经典三级在线一区| 亚洲国产美女搞黄色| 爽好久久久欧美精品| 国产精品视频九色porn| 欧美一区二区视频在线观看2020| 亚洲国产综合人成综合网站| 亚洲美女屁股眼交3| 欧美激情在线观看视频免费| 日韩精品中文字幕一区二区三区| 狠狠色狠狠色合久久伊人| 亚洲v精品v日韩v欧美v专区| 亚洲黄色片在线观看| **欧美大码日韩| 中文字幕在线不卡| 亚洲福利一二三区| 国产成人免费网站| 成人精品视频一区二区三区尤物| 日产国产欧美视频一区精品 | 欧美日韩精品欧美日韩精品一| 亚洲国产精品欧美一二99| 免费在线一区观看| 蜜桃久久av一区| 91丝袜美腿高跟国产极品老师| 久久国产精品99久久久久久老狼| 国产精品免费av| 日韩av电影免费观看高清完整版在线观看| 国产亲近乱来精品视频| 亚洲国产成人精品视频| 国产成人啪免费观看软件| 91麻豆精品国产91久久久 | 免费观看成人av| 日本久久电影网| 久久久精品黄色| 国产亚洲精品7777| 亚洲成年人影院| 97久久超碰国产精品| 欧美色图在线观看| 日韩免费一区二区| 亚洲成人激情综合网| 99天天综合性| 国产精品理伦片| 亚洲第一会所有码转帖| 白白色 亚洲乱淫| 国产午夜精品理论片a级大结局| 2022国产精品视频| 日本女优在线视频一区二区| 在线观看欧美黄色| 亚洲免费资源在线播放| 不卡的av电影| 欧美一区二区三区公司| 日韩精品免费视频人成| 欧美色偷偷大香| 欧美在线观看18| 欧美国产精品一区二区三区| 国产真实乱子伦精品视频| 欧美精品18+| 国产欧美一区二区三区鸳鸯浴 | 日韩精品欧美精品| 欧美系列在线观看| 亚洲午夜电影网| 欧美肥胖老妇做爰| 奇米色一区二区三区四区| 日韩一区二区在线免费观看| 久久久精品2019中文字幕之3| 中文字幕成人av| 大白屁股一区二区视频| 国产精品无码永久免费888| 成人美女在线视频| 一区二区三区免费| 成人午夜av电影| 亚洲丝袜另类动漫二区| 韩国精品主播一区二区在线观看| 91丝袜高跟美女视频| 亚洲免费观看高清完整| 欧美日韩亚洲综合一区| 毛片基地黄久久久久久天堂| 久久美女高清视频| 99国产精品久久久久久久久久| 日韩午夜激情电影| 国产成人99久久亚洲综合精品| 色偷偷88欧美精品久久久| 亚洲美女屁股眼交3| 91精品国产综合久久香蕉麻豆| 成人欧美一区二区三区小说| 欧美伊人久久久久久午夜久久久久| 2023国产精品视频| 91蝌蚪porny| 亚洲国产成人av网| 久久久久久久久久久久久女国产乱| 爽爽淫人综合网网站| 国产欧美中文在线| 欧美日本不卡视频| 成人美女在线视频| 日本不卡不码高清免费观看| 国产精品毛片a∨一区二区三区| 蜜芽一区二区三区| 国产精品视频第一区| 3atv在线一区二区三区| 99精品视频在线免费观看| 免费一级欧美片在线观看| 中文字幕一区免费在线观看| 91精品国产丝袜白色高跟鞋| 99在线精品视频| 国内精品久久久久影院一蜜桃| 欧美久久一二区| 高清beeg欧美| 老司机精品视频一区二区三区| 日韩一区二区三区在线观看| 99re在线精品| 久久激情综合网| 调教+趴+乳夹+国产+精品| 欧美另类变人与禽xxxxx| 成人av网在线| 国产成+人+日韩+欧美+亚洲 | 国产麻豆视频精品| 石原莉奈一区二区三区在线观看| 欧美性极品少妇| 风间由美性色一区二区三区| 青草国产精品久久久久久| 一区二区在线免费| 亚洲蜜臀av乱码久久精品| 中文字幕成人网| 中文成人av在线| 国产午夜精品一区二区三区嫩草| 成人av电影在线观看| 国产v综合v亚洲欧| 国产福利91精品| 国产盗摄精品一区二区三区在线| 国产天堂亚洲国产碰碰| 精品国产1区2区3区| 91精品国产aⅴ一区二区| 在线电影国产精品| 91麻豆精品国产自产在线观看一区| 久久国内精品自在自线400部| 久久久久久久综合| 国产欧美一二三区| 中文字幕精品一区| 亚洲天堂精品在线观看| 亚洲女人小视频在线观看| 亚洲乱码国产乱码精品精可以看 | 精品1区2区在线观看| 日韩一区二区三区电影在线观看| 国产综合色产在线精品| 国产九色精品成人porny| 国产精品18久久久久久久网站| 亚洲欧美自拍偷拍| 亚洲综合色丁香婷婷六月图片| 懂色av一区二区三区免费看| 精品无人区卡一卡二卡三乱码免费卡| 国产精品国模大尺度视频| 亚洲欧美一区二区久久| 亚洲国产日韩精品| 日产精品久久久久久久性色| 久久99精品国产麻豆不卡| 狠狠色狠狠色综合系列| 成人黄色综合网站| 日本精品裸体写真集在线观看| 国产精品夜夜嗨| 色噜噜狠狠色综合欧洲selulu| 免费成人你懂的| 不卡一区在线观看| 欧美日韩午夜影院| 久久久精品免费网站| 亚洲精品视频一区| 久久精品国产久精国产爱| 成人永久aaa| 欧美日韩精品福利| 欧美韩国日本不卡| 亚洲狠狠爱一区二区三区| 国产一区二区福利视频| 91久久奴性调教| 久久亚洲精品小早川怜子| 一区二区三区日韩| 国产精品综合一区二区三区| 在线视频一区二区三区| 久久久影院官网|