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

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

?? isd4004.c

?? 這個是基于單片機的對于頻率計的設計。可以輸出不同的頻率
?? C
字號:
//-----------------------------------------------------------------------------
// F00x_Ports_SwitchLED.c
//-----------------------------------------------------------------------------
// Copyright 2005 Silicon Laboratories, Inc.
// http://www.silabs.com
//
// Program Description:
//
// This program demonstrates how to configure port pins as digital inputs
// and outputs.  The C8051F005 target board has one push-button switch 
// connected to a port pin and one LED.  The program constantly checks the 
// status of the switch and if it is pushed, it turns on the LED.
//
//
// How To Test:
//
// 1) Download code to a 'F005 target board
// 2) Ensure that the J1 and J3 headers are shorted
// 3) Push the button (P1.7) and see that the LED turns on 
//
//
// FID:            00X000002
// Target:         C8051F00x
// Tool chain:     Keil C51 7.50 / Keil EVAL C51
// Command Line:   None
//
// Release 1.0
//    -Initial Revision (GP)
//    -15 NOV 2005
//

//-----------------------------------------------------------------------------
// Includes
//-----------------------------------------------------------------------------

#include <c8051f000.h>                 // SFR declarations

#define SYSCLK             11059200  



sbit CS=P0^7;
sbit KEY4=P3^7;


sbit rd     = P1^7;

sbit wr		= P1^6;
sbit addr0	= P1^0;
sbit addr1	= P1^1;
sbit addr2	= P1^2;
sbit addr3	= P1^3;
sbit addr4	= P1^4;

sbit data0	= P2^0;
sbit data1	= P2^1;
sbit data2	= P2^2;
sbit data3	= P2^3;


void write (int addr, int datain);
unsigned int read();


unsigned int Count1msInc;
unsigned char K;
unsigned int addrl,addrh;

unsigned int adl[ ]={0x00,0x96,0x2c,0xc2,0x58,0xee,0x84,0x1a,0xb0,0x46,0xdc,0x72,0x08,0x9e};//,0x34};//,0xca};  // 1s=5h
unsigned int adh[ ]={0x00,0x00,0x01,0x01,0x02,0x02,0x03,0x04,0x04,0x05,0x05,0x06,0x07,0x07};//,0x08};//,0x08};



exchg();
BELL1();
BELL2();
//RECORD();
PLAY0000H();
RECORD(unsigned int addrl,unsigned int addrh,unsigned char time);
PLAY0096H(unsigned int addrl,unsigned int addrh,unsigned char time);



DELAY(unsigned int delay)
{
	unsigned int J;
	for(J=0;J<delay;J++);
}

void Timer0_Init(void )
{
	CKCON|=0x8;
	//TMOD|=0x1;
	TR0=0;
	TH0=(-SYSCLK/1000)>>8;
	TL0=-SYSCLK/1000;
	IE|=0x2;
}

void Timer0_ISR(void ) interrupt 1   //中斷
{
	TH0=(-SYSCLK/1000)>>8;
	TL0=-SYSCLK/1000;
	Count1msInc++;
}


void Delay_ms(unsigned char Val_ms)

{
	Count1msInc=0;
	TR0=1;
	while((Count1msInc<Val_ms)==1);	
	TR0=0;
}

void Delay_s(unsigned char Val_s)
{
	unsigned int temp,count_s;
	temp=Val_s*1000;
	Count1msInc=0;
	TR0=1;
	while((Count1msInc<temp)==1) 
	{
		count_s=Count1msInc/1000;
		write(1,count_s%10);
		write(2,count_s/10);
	}	
	TR0=0;
}

ON_4004()
{
	CS=0;
	DELAY(50000);

}

OFF_4004()
{
	DELAY(50000);
	CS=1;
}

void SPIWrOne(unsigned char ch)
{
	ON_4004();
	SPIF = 0;
	K=ch;
	exchg();
	SPI0DAT=K;
	while(SPIF==0);
	OFF_4004();
}

void SPIWrTwo(unsigned char ch)
{
	SPIF = 0;
	K=ch;
	exchg();
	SPI0DAT=K;
	while(SPIF==0);
}

void SPIWrThree(unsigned char addrl,unsigned char addrh,unsigned char COM)
{
	ON_4004();
	SPIWrTwo(addrl);
	SPIWrTwo(addrh);
	SPIWrTwo(COM);
	OFF_4004();

}

void SYSCLK_Init(void)
{
   OSCICN |= 0x03;                     
   OSCXCN=0xff;  
}

void PORT_Init()
{
   PRT1CF  |= 0xff;                     
   PRT2CF  |= 0xff;                     

   PRT0CF  |= 0xff;                     
	XBR0=0x02;
	XBR1=0x00;
	XBR2=0x40;
}

void SPI0_Init()
{
	SPI0CFG=0x07;
	SPI0CFG|=0x0C0;
	SPI0CN=0x03;
	SPI0CKR=SYSCLK/2/100000-1;
}

exchg()
{
	unsigned char temp;
	//*
	temp=K%2; 		temp=temp<<1;
	temp+=(K>>1) %2;	temp=temp<<1;
	temp+=(K>>2) %2;	temp=temp<<1;
	temp+=(K>>3) %2;	temp=temp<<1;
	temp+=(K>>4) %2;	temp=temp<<1;
	temp+=(K>>5) %2;	temp=temp<<1;
	temp+=(K>>6) %2;	temp=temp<<1;
	temp+=(K>>7) %2;	

	K=temp;
}

BELL1()
{
	write(8,1);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	write(8,0);
}

BELL2()
{
	write(8,1);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	write(8,0);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	write(8,1);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	DELAY(65000);
	write(8,0);
}


RECORD(unsigned int addrl,unsigned int addrh,unsigned char time)
{
    
	BELL1();
	SPIF=0;
	
	SPIWrOne(0x20);
	DELAY(10000);
	EA=1;
	SPIWrOne(0x20);
	DELAY(10000);
	//BELL2();

	SPIWrThree(addrl,addrh,0x0a0);
    

	SPIWrOne(0xb0);
	//Delay_s(10);
	Delay_s(time);
    
	SPIWrOne(0x30);
	BELL1();
	

}

PLAY0096H(unsigned int addrl,unsigned int addrh,unsigned char time)
{
    

	SPIWrOne(0x20);
	DELAY(60000);
	SPIWrOne(0x20);
	DELAY(60000);
	BELL2();
	SPIWrThree(addrl,addrh,0x0E0);

	SPIWrOne(0xf0);
	//Delay_s(10);
	Delay_s(time);
	
	SPIWrOne(0x30);
	SPIWrOne(0x10);
	DELAY(1000);
	BELL1();
	
	
}

/*RECORD1(int addrl,int addrh)
{
    int pl,ph;
	pl=addrl;
	ph=addrh;
	BELL1();
	SPIF=0;
	//write(1,2);
	SPIWrOne(0x20);
	DELAY(10000);
	EA=1;
	SPIWrOne(0x20);
	DELAY(10000);
	//BELL2();
	//write(2,3);
	//SPIWrThree(addrl,addrh,0x0a0);
    SPIWrThree(pl,ph,0x0a0);

	SPIWrOne(0xb0);
	//Delay_s(30);
	Delay_s(4);
     //Delay_s(100);
	SPIWrOne(0x30);
	BELL1();
	//write(0,13);
	//flag=2;
}*/

/*PLAY0000H()
{
	SPIWrOne(0x20);
	DELAY(60000);
	SPIWrOne(0x20);
	DELAY(60000);
	BELL2();
	SPIWrThree(0x08,0xea,0x0E0);

	SPIWrOne(0xf0);
	Delay_s(30);
	//Delay_s(10);
	//Delay_s(100);
	SPIWrOne(0x30);
	SPIWrOne(0x10);
	DELAY(1000);
	BELL1(); 
	//write(3,1);
	
}*/



void main(void)
{
	unsigned int temp1,temp2,xor1,wei1,wei2,temp_wei;
	unsigned int pl,ph;
	unsigned int templ,temph;
	unsigned int k;
	unsigned int flag=0;
    unsigned int i,i1,j,n;

	WDTCN=0xde;
	WDTCN=0xad;
	SYSCLK_Init();
	PORT_Init();
	SPI0_Init();
	Timer0_Init();
	EA=1;
	write(8,0);
	write(0,15);	
	write(1,0);
	write(2,0);
	write(3,0);
	write(4,0);
	write(5,0);
	write(6,0);
	flag=0;
    temp2=read();

	while(1)
	{
	    temp1=read();
		if (temp1!=temp2) 
		{
    		xor1=temp1^temp2;
			DELAY(10);
    		temp2=read();
    		if (temp1==temp2) 
			{   
	    		wei1=xor1%2;
				temp_wei=temp2;
	    		if(wei1!=0)
				{
		   			wei2=temp_wei%2;
		   			if(wei2==0) 
                               { if(flag==0)
							      {
								   for(j=1;j<=i;j++)        // 錄音全播放
								    {	
									 write(0,14);
									 write(3,j);
									 write(4,0);
									  
									 if(j>=10) {write(3,j%10); write(4,j/10);}
								     //if (j==17) {j=1;write(3,1); write(4,0);}
									 if (j==16) {j=1;write(3,1); write(4,0);}	 
									 pl=adl[j-1];
									 ph=adh[j-1]; 
									       
									 Delay_s(3);
									 PLAY0096H(pl,ph,10);
									 if(j==i) PLAY0096H(0x0a,0x09,4); //放音結束通知
									 }
									}
								  if(flag==1)// 選擇段播放錄音
								      {
									  Delay_s(3);
                                      PLAY0096H(pl,ph,10);    
								      flag=0;
                                      }
									 write(0,15);
									 
								}
				}
				xor1>>=1;
	    		wei1=xor1%2;
	    		if(wei1!=0)
				{
           			temp_wei>>=1;
		   			wei2=temp_wei%2;
		   			if(wei2==0)  
                                 { 
                                     write(0,13);
									 if(flag==0) // 正常錄音
									 {
									 
									 i++;
									 i1++;
                                     write(3,i);
									 write(4,0);

									 if(i1==16) {i1=0;PLAY0096H(0xea,0x08,4);} //空間存儲滿通知
									  else {
									       PLAY0096H(0xca,0x08,5); // 錄音開始通知
									       pl=adl[i-1];
									       ph=adh[i-1];
								     
									       Delay_s(1);
									       RECORD(pl,ph,10);
									  	   }
									 
                         
								    if(i>=10) {write(3,i%10); write(4,i/10);}
								    if (i==16) {i=0;write(3,i%10); write(4,0);}	  
									
									
									 write(0,15);
									  
									 }
									if(flag==1) //選擇段錄音
                                       {
									   write(0,13);									   
									   
									   templ=pl;
									   temph=ph;   
									   
									     
	                         	       Delay_s(3);
                                       RECORD(templ,temph,10);
                                     for(k=n-1;k<i;k++)  //排序
                                      { 
									    adl[k]=adl[k+1];
									    adh[k]=adh[k+1];
                                       
									    adl[i]=templ;
									    adh[i]=temph;
									   }                                 									   
									   write(0,15);
									   flag=0; 
    									}
										
                                    
								    }
				 }
                xor1>>=1;
	    		wei1=xor1%2;
	    		if(wei1!=0)
				{
           			temp_wei>>=2;
		   			wei2=temp_wei%2;
		   			if(wei2==0)  {	   
                                      if(flag==1)
									  {    
									   	write(0,11);
                                     for(k=n-1;k<i;k++)  //排序//段刪除
                                      { 
									    adl[k]=adl[k+1];
									    adh[k]=adh[k+1];
                         
										//adl[i]=0x34;
										//adh[i]=0x08;
										i=i-1;
										if(i<=1)i=1;
									   }
									   //write(0,15);                                 									   									   
									   flag=0; 
    								  }	
								 //Delay_s(3);
							    //RECORD(0x0a,0x09,4);
								//PLAY0096H(0x0a,0x09,4);
								//PLAY0096H(0x34,0x08,30);
										                             
								 } 
                 }
                xor1>>=1;
	    		wei1=xor1%2;
	    		if(wei1!=0)
				{
           			temp_wei>>=3;
		   			wei2=temp_wei%2;
		   			if(wei2==0) { 
					             n++;    // 段選				  
                                 write(5,n);
                                 write(6,0);
								 if(n>=10) {write(5,n%10); write(6,n/10);}
								 if (n==16) {n=1;write(5,1); write(6,0);}    
								 pl=adl[n-1];		            	                            
								 ph=adh[n-1];
								 	 
								 flag=1;	                                                   
                                 write(0,7);
								 
					              } 	     
				}
			}
		} 

	}//end while
}// end main		
void write (int addr,int datain)
{
    char pp;
    PRT2CF  |= 0xff; 
    pp=addr;
	pp|= 0xA0;
	P1 =pp;
 
	P2=datain;
	wr=1;	
	wr=0;

}

unsigned int read()
{
   unsigned int data_rd;
   PRT2CF  &= 0xf0; 
   P2=0xff;
   rd=0;
   data_rd=P2;
   data_rd &=0x0f;

   rd=1;
   PRT2CF  |= 0xff; 

   return data_rd;

}


/*addrl
     0x00,0x96,0x2c,0xc2,0x58,0xee,0x84,0x1a
     0xb0,0x46,0xdc,0x72,0x08,0x9e,0x34,0xca,0x60

addrh
     0x00,0x00,0x01,0x01,0x02,0x02,0x03,0x04
	 0x04,0x05,0x05,0x06,0x07,0x07,0x08,0x08,0x09*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品sm捆绑视频| 国产高清在线精品| 欧美主播一区二区三区| 亚洲一级电影视频| 欧美综合天天夜夜久久| 亚洲国产另类av| 欧美一卡在线观看| 国产一区二区三区免费播放| 国产欧美1区2区3区| 91片黄在线观看| 亚洲超碰精品一区二区| 在线播放国产精品二区一二区四区| 午夜精品久久久久久| 欧美成人a∨高清免费观看| 国产乱人伦偷精品视频免下载| 国产女主播在线一区二区| 在线视频你懂得一区| 日韩国产精品大片| 久久亚洲一级片| 91美女福利视频| 视频在线在亚洲| 久久综合九色综合久久久精品综合 | 一区二区三区视频在线看| 欧美亚一区二区| 久久国产综合精品| 国产精品国产三级国产a| 91国在线观看| 国产一区在线精品| 亚洲综合区在线| 久久免费电影网| 色婷婷综合久久久久中文一区二区 | 久久这里只精品最新地址| 岛国精品在线观看| 亚洲va欧美va人人爽午夜| 久久久精品国产免大香伊| 91久久奴性调教| 国产自产v一区二区三区c| 亚洲麻豆国产自偷在线| 久久综合九色综合97_久久久| 色综合久久久久综合体| 国产在线一区二区| 亚洲亚洲人成综合网络| 久久嫩草精品久久久精品| 欧美日本国产视频| 91麻豆精品秘密| 国产一区二区在线观看视频| 亚洲一卡二卡三卡四卡无卡久久| 国产日韩欧美a| 欧美一区二区三区免费| 色综合久久久久久久久久久| 狠狠色丁香久久婷婷综合丁香| 亚洲一区二区三区四区在线| 久久久久久久久久久久电影 | 不卡的av电影| 看电影不卡的网站| 亚洲成人av电影在线| 中文字幕在线一区| 久久久久国产免费免费| 欧美高清视频在线高清观看mv色露露十八 | 日韩一区二区在线观看视频播放| 色婷婷国产精品| 成人一区二区三区在线观看| 青娱乐精品在线视频| 一区二区三区加勒比av| 中文字幕中文在线不卡住| 久久综合九色综合欧美98| 日韩欧美一区二区在线视频| 欧美在线小视频| 色婷婷综合久久久久中文| 丁香网亚洲国际| 国产91在线看| 国产成人av电影在线| 精品一区二区影视| 日本不卡不码高清免费观看| 天堂av在线一区| 日韩电影免费在线看| 亚洲一区在线观看免费| 综合av第一页| 国产嫩草影院久久久久| 日本一区二区成人| 欧美国产视频在线| 国产精品视频一二三区 | 久久精品亚洲精品国产欧美| 欧美剧在线免费观看网站 | 91精品国产综合久久精品| 欧美性猛片xxxx免费看久爱| 欧美怡红院视频| 欧美性做爰猛烈叫床潮| 欧美嫩在线观看| 欧美一区二区二区| 久久久久久久久久久99999| 欧美r级在线观看| 久久久不卡网国产精品二区| 亚洲国产精品精华液ab| 亚洲欧洲综合另类| 亚洲国产成人va在线观看天堂| 天天影视网天天综合色在线播放| 视频一区中文字幕国产| 老司机一区二区| 国产精品影音先锋| 成人av免费网站| 欧美性videosxxxxx| 欧美挠脚心视频网站| 2020国产精品自拍| 综合久久综合久久| 日韩av一区二区三区四区| 韩国三级电影一区二区| 91小视频在线观看| 在线不卡欧美精品一区二区三区| 精品久久99ma| 综合久久给合久久狠狠狠97色| 午夜不卡av免费| 国产揄拍国内精品对白| 色视频一区二区| 欧美r级在线观看| 亚洲卡通动漫在线| 精品一区二区三区不卡| 97精品久久久久中文字幕| 欧美日韩大陆在线| 久久久久亚洲蜜桃| 亚洲欧美一区二区三区久本道91 | 狠狠色综合播放一区二区| 成人三级伦理片| 欧美一区二区女人| ...av二区三区久久精品| 美女一区二区在线观看| 色综合网站在线| 久久久三级国产网站| 亚洲一二三区不卡| 丁香激情综合国产| 精品三级在线看| 一区二区三区影院| 国产高清亚洲一区| 欧美一区三区四区| 亚洲精品免费在线观看| 国产麻豆视频一区| 欧美刺激脚交jootjob| 欧美日韩免费观看一区二区三区| 欧美三级韩国三级日本一级| 国产亚洲婷婷免费| 日韩精品欧美精品| 在线观看免费亚洲| 国产精品久久久久9999吃药| 麻豆久久久久久久| 欧美日韩中文字幕一区二区| 国产精品久久久一区麻豆最新章节| 青青草原综合久久大伊人精品优势| 91丝袜美腿高跟国产极品老师 | 日韩欧美三级在线| 亚洲线精品一区二区三区八戒| 懂色av中文字幕一区二区三区| 精品国产免费视频| 日本欧美一区二区在线观看| 日本道免费精品一区二区三区| 亚洲欧美中日韩| voyeur盗摄精品| 国产精品免费视频观看| 国产精品1024| 国产欧美日韩亚州综合| 国产一区二区在线视频| 精品久久人人做人人爽| 日本vs亚洲vs韩国一区三区二区 | 国产成人一区二区精品非洲| 日韩欧美不卡在线观看视频| 偷拍一区二区三区| 欧美日韩在线一区二区| 亚洲国产精品久久人人爱| 欧美午夜在线观看| 亚洲一区二区三区视频在线播放 | 91原创在线视频| 日韩一区有码在线| 色婷婷国产精品| 亚洲成a人v欧美综合天堂下载| 欧美日韩三级一区| 丝袜a∨在线一区二区三区不卡| 欧美日韩高清影院| 蜜桃av一区二区| 精品播放一区二区| 国产成人免费高清| 中文字幕一区二区三区不卡在线| 国产成人精品免费网站| 亚洲图片另类小说| 在线观看亚洲精品| 五月天亚洲婷婷| 精品三级在线观看| 成av人片一区二区| 亚洲精品欧美专区| 欧美日韩中文字幕一区二区| av电影一区二区| 亚洲欧美日韩一区| 欧美男生操女生| 国产成人精品影视| 夜夜嗨av一区二区三区网页| 欧美二区三区91| 精品亚洲欧美一区| 亚洲色图在线看| 91精品久久久久久久久99蜜臂| 国产一区二区成人久久免费影院| 中文字幕一区三区| 欧美伦理视频网站|