亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
91超碰这里只有精品国产| 国产精品高清亚洲| 亚洲欧洲精品一区二区精品久久久| 一区二区激情视频| 国产一区二区在线视频| 91麻豆福利精品推荐| www国产成人| 日韩电影免费一区| 91成人网在线| 国产精品人成在线观看免费 | 欧美日韩美女一区二区| 久久综合久色欧美综合狠狠| 亚洲成a人v欧美综合天堂下载| 国产成人免费视频网站高清观看视频| 欧美日韩高清一区二区| 一区二区三区四区中文字幕| 国产69精品久久久久毛片| 2022国产精品视频| 欧美aaaaaa午夜精品| 在线免费不卡视频| 亚洲视频在线一区观看| 成人一区二区三区中文字幕| 精品不卡在线视频| 久久精品国产**网站演员| 欧美人体做爰大胆视频| 亚洲国产精品人人做人人爽| 色综合久久66| 亚洲精选免费视频| 色噜噜狠狠一区二区三区果冻| 国产精品美女久久久久aⅴ| 国产资源在线一区| 精品日韩99亚洲| 久久99精品久久久| 久久综合色之久久综合| 国产在线精品一区二区不卡了| 日韩美一区二区三区| 青青草原综合久久大伊人精品 | 99久久婷婷国产| 国产精品三级电影| 91女人视频在线观看| 17c精品麻豆一区二区免费| 99久久er热在这里只有精品15 | 亚洲午夜羞羞片| 欧美日本在线观看| 日本v片在线高清不卡在线观看| 欧美精品tushy高清| 人人精品人人爱| 精品国产免费人成电影在线观看四季 | 在线欧美小视频| 国产精品美女久久久久久| 成人福利视频在线看| 国产精品乱子久久久久| 在线观看三级视频欧美| 污片在线观看一区二区| 久久综合色鬼综合色| 99久久99久久精品免费观看| 一区二区三区免费网站| 欧美一区二区性放荡片| 国产精品白丝jk黑袜喷水| 自拍偷在线精品自拍偷无码专区| 日韩精品每日更新| 欧美极品美女视频| 国产精品一区在线观看你懂的| 国产午夜亚洲精品理论片色戒| 99精品国产视频| 亚洲成人tv网| 久久久另类综合| 色久综合一二码| 麻豆精品国产传媒mv男同| 国产精品免费av| 日韩免费电影一区| 日本精品一级二级| 激情综合色播激情啊| 亚洲色图制服丝袜| 久久中文字幕电影| 欧美亚洲尤物久久| 国产69精品久久99不卡| 丝袜诱惑亚洲看片| 亚洲视频图片小说| 久久久精品日韩欧美| 欧美日韩不卡一区二区| 成人av资源站| 狠狠色综合色综合网络| 国产日韩欧美精品在线| 欧美日韩精品免费观看视频| 成人视屏免费看| 精品一区二区三区日韩| 亚洲高清免费视频| 亚洲欧洲在线观看av| 26uuu国产日韩综合| 欧美电影一区二区| 99国产一区二区三精品乱码| 国产福利一区二区三区在线视频| 亚洲va欧美va人人爽| 亚洲欧洲综合另类| 久久精品欧美一区二区三区不卡| 欧美三级电影在线看| 97精品久久久午夜一区二区三区| 久久99国产精品久久99果冻传媒| 中文字幕一区二区三区视频| 日韩精品一区二区三区中文不卡| 欧美色偷偷大香| 欧美亚洲动漫精品| 91豆麻精品91久久久久久| 精品视频在线免费看| 成人a级免费电影| 国产乱子轮精品视频| 丝袜脚交一区二区| 视频在线观看91| 亚洲免费毛片网站| 色综合夜色一区| 日韩欧美高清dvd碟片| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 欧美一区二区三区免费| av高清久久久| av不卡一区二区三区| 不卡的电影网站| av在线不卡电影| 成人av在线播放网址| 丁香六月综合激情| 成人午夜在线免费| 99久久综合精品| 一本久久精品一区二区| 91丨九色丨黑人外教| 色综合久久久久综合体| 色伊人久久综合中文字幕| 色综合久久久久综合体桃花网| 在线视频一区二区免费| 欧美日韩日日骚| 91麻豆精品国产无毒不卡在线观看| 欧美高清视频不卡网| 欧美v日韩v国产v| 欧美精品一区二区三| 国产日产欧产精品推荐色| 国产精品女主播在线观看| 成人欧美一区二区三区白人| 亚洲美女精品一区| 午夜精品一区二区三区三上悠亚 | 国产精品情趣视频| 亚洲人成伊人成综合网小说| 亚洲mv大片欧洲mv大片精品| 精品一区在线看| av在线不卡电影| 91精品黄色片免费大全| 久久综合狠狠综合久久综合88| 自拍av一区二区三区| 日韩高清在线观看| 国产精品原创巨作av| 日本久久一区二区三区| www国产成人免费观看视频 深夜成人网| 亚洲国产成人午夜在线一区| 亚洲国产成人av网| 国产一区二区三区| 欧洲中文字幕精品| 国产欧美一区二区三区网站| 一区二区在线观看视频| 狠狠色丁香婷综合久久| 色婷婷久久久亚洲一区二区三区| 日韩三级伦理片妻子的秘密按摩| 国产精品入口麻豆原神| 奇米色777欧美一区二区| 成人av午夜影院| 日韩视频国产视频| 亚洲美女精品一区| 高清shemale亚洲人妖| 欧美三日本三级三级在线播放| 久久久久国产免费免费| 午夜精品影院在线观看| 99久久夜色精品国产网站| 精品国产乱码久久久久久久久| 亚洲老司机在线| 国产成人午夜高潮毛片| 日韩女优毛片在线| 亚洲午夜在线视频| 91啦中文在线观看| 欧美高清在线视频| 久久99精品网久久| 91精品国产丝袜白色高跟鞋| 亚洲人亚洲人成电影网站色| 国产一区二区在线看| 91精品国产全国免费观看| 亚洲免费高清视频在线| 成人h版在线观看| 久久老女人爱爱| 奇米色777欧美一区二区| 欧美精品在线观看播放| 亚洲在线观看免费| 色婷婷av一区二区三区软件 | 亚洲精品在线观| 日韩精品91亚洲二区在线观看 | 欧美大片一区二区| 午夜国产精品一区| 欧美日韩免费高清一区色橹橹| 亚洲欧美一区二区三区久本道91| 99免费精品在线观看| 亚洲国产高清aⅴ视频| 国产成+人+日韩+欧美+亚洲| 久久精品在这里| 成人一级视频在线观看| 国产欧美一区二区三区鸳鸯浴|