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

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

?? main.c

?? 此程序實現任意波形發生器的菜單選擇操作及向FPGA發送控制命令
?? C
?? 第 1 頁 / 共 2 頁
字號:
//產生波形
	
	CS_DAC=c_mag;//輸出D/A幅值
	for(i=0;i<bits;i++)
	{
		temp=x_sin*sin[i]+x_rec*rec[i]+x_tri*tri[i];//線型疊加波形
		temp/=x_total;//新波形歸一化
		*(D_RAM+i)=temp;//輸出波形表到FPGA雙口RAM
		 temp_jun[i]=temp;//存儲波形。
	}

	//輸送16位頻率控制字
	//頻率控制字16位,分為高8位freqH;低8位freqL
	freqH=((c_freq&0xff00)>>8);//取出頻率控制字高8位
	freqL=(c_freq&0x00ff);//取出頻率控制字低8位
	cycleH=((cycle_count&0xff00)>>8);
	cycleL=(cycle_count&0x00ff);
	
//	W_FPGA=0
	*A_FPGA=freqL;
//	W_FPGA=1
	*(A_FPGA+1)=freqH;
	*(A_FPGA+2)=cycleL;
	*(A_FPGA+3)=cycleH;
	*(A_FPGA+4)=0;
	*(A_FPGA+5)=0;
	//CS_TEMP=0;


	//存儲波形
    Sector_erase(save_mag);

    Byte_program(save_mag,c_mag);//存儲幅度


	Byte_program(save_freq,freqH);//存儲頻率高位
	Byte_program((save_freq+1),freqL);//存儲頻率低位

	Byte_program(save_count,cycleH);//存儲頻率高位
	Byte_program(save_count+1,cycleL);//存儲頻率低位


	save(temp_jun);
}


//波形存儲函數
void save(uchar *reg_temp)
{ 
   uint i;
   uint addr=save_sector;
   Sector_erase(addr);
   for(i=0;i<512;i++)
     {
	   Byte_program(addr,reg_temp[i]);
       _nop_();
	   addr++;
	 }
   
}


//讀已存波
void read_bo(void)
{
   uint i;
   uint addr;
   uchar temp;
	uchar freqH=0,freqL=1;//頻率控制字高低8位
	uchar cycleH,cycleL;
	uchar *D_RAM=&CS_7132;//雙口RAM頭地址
	uchar *A_FPGA=&CS_FPGA;//頻率控制字首地址

   addr=save_sector;
   
   for(i=0;i<512;i++)
     {
	    temp=Byte_read(addr);
		_nop_();
		temp_jun[i]=temp;
		addr++;
	 }

	 freqH=Byte_read(save_freq);
	 freqL=Byte_read(save_freq+1);

     _nop_();
	 mag=Byte_read(save_mag);
     _nop_();

	 cycleH=Byte_read(save_count);
	 cycleL=Byte_read(save_count+1);
	 _nop_();
    
    //顯示已存波
     CS_DAC=mag;             //輸出D/A幅值

     *A_FPGA=freqL;
   
	*(A_FPGA+1)=freqH;
	
	*(A_FPGA+2)=0;
    *(A_FPGA+3)=0;
   
	*(A_FPGA+4)=0;
	*(A_FPGA+5)=0;

	for(i=0;i<bits;i++)
	{
		temp=temp_jun[i];
		*(D_RAM+i)=temp;//輸出波形表到FPGA雙口RAM
	}

	//輸送16位頻率控制字
	//頻率控制字16位,分為高8位freqH;低8位freqL
	//freqH=((freq&0xff00)>>8);//取出頻率控制字高8位
	//freqL=(freq&0x00ff);//取出頻率控制字低8位
	//cycleH=((cycle_count&0xff00)>>8);
	//cycleL=(cycle_count&0x00ff);
	
//	W_FPGA=0
	*A_FPGA=freqL;
//	W_FPGA=1
	*(A_FPGA+1)=freqH;
	*(A_FPGA+2)=cycleL;
	*(A_FPGA+3)=cycleH;
	*(A_FPGA+4)=0;
	*(A_FPGA+5)=0;
         
}



//按ok鍵響應函數
void action(uchar bo_type)
{
   if(bo_type==3)
     create_combin(mag,freq,a,b,c);
   else 
      create_base(mag,freq,bo_type);
      
}

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

//讀取鍵盤數據,返回當前被按下的鍵號
uchar keyin(void)
{
 	uchar i;
 	COM=0x40;
	i=DAT;
	i=i&0x7f; //取鍵盤數據低7位
 	return(i);
}


////////////////////////////////////////////////////////////////////////////////主函數
void main(void)
{
 
 	uchar i,j,k;
    
	
	//////////////////////////////////////////////////////////////////////////////
	//初始化單片機
	AUXR = 0x02;/*STC單片機關內部RAM和開ALE*/
 	for(i=0;i<5;i++)
 	{
		for(j=0;j<100;j++)
  		{
			for(k=0;k<100;k++);
		}
	}

	//////////////////////////////////////////////////////////////////////////////
	//初始化8279
 	COM=0xd1;//1101 0001b 清除所有顯示
 	do{ACC=COM;}
	while(clflag==1);   //清除起來比較慢,所以一條指令執行的時間不足以完成所有清除,故需等待
 	COM=0x01;COM=0x02;  
 	IE=0x81;TCON=0x01;
 	//////////////////////////////////////////////////////////////////////////////
    for(i=0;i<8;i++)
	{
		COM=0X80+i;
		DAT=seg[0];
	}
    //大循環
 	while(1)
 	{  
		while(int_flag==0)  /*等待中斷*/
	     {
		   ;//后臺程序
		 }
		
		int_flag=0;
		if(ok==1) {ok=0;EA=0;action(state0);EA=1;}
		//if(ok==1) {ok=0;action(state0);}

        //根據鍵值調用鍵盤響應函數
		switch(state0)
		{
			case 0:switch(state1)
                        {
                           case 0:switch(state2)
                                  {
                                    case 0:freq++;display();delay();break;
                                    case 1:freq--;display();delay();break;
                                    case 2:freq+=100;display();delay();break;
									case 3:freq-=100;display();delay();break;
									case 4:break;
                                  }break;
						  
                           case 1:switch(state2)
                                  {
                                    case 0:mag+=5;display();delay();break;
                                    case 1:mag-=5;display();delay();break;
									case 2:break;
                                  }break;
                           case 2:break;
						 }
			       break;
		   case 1:switch(state1)
                        {
                           case 0:switch(state2)
                                  {
                                    case 0:freq++;display();delay();break;
                                    case 1:freq--;display();delay();break;
									case 2:freq+=100;display();delay();break;
									case 3:freq-=100;display();delay();break;
									case 4:break;
                                  }break;
                           case 1:switch(state2)
                                  {
                                    case 0:mag+=5;display();delay();break;
                                    case 1:mag-=5;display();delay();break;
									case 2:break;
									case 3:break;
									case 4:break;
                                  }break;
						 }
				   break;
			case 2:switch(state1)
                        {
                           case 0:switch(state2)
                                  {
                                    case 0:freq++;display();delay();break;
                                    case 1:freq--;display();delay();break;
									case 2:freq+=100;display();delay();break;
									case 3:freq-=100;display();delay();break;
									case 4:break;
                                  }break;
                           case 1:switch(state2)
                                  {
                                    case 0:mag+=5;display();delay();break;
                                    case 1:mag-=5;display();delay();break;
									case 2:break;
									case 3:break;
									case 4:break;
                                  }break;
						 }
				    break;
			 case 3:switch(state1)
                        {
                           case 0:switch(state2)
                                  {
                                    case 0:freq++;display();delay();break;
                                    case 1:freq--;display();delay();break;
									case 2:freq+=100;display();delay();break;
									case 3:freq-=100;display();delay();break;
									case 4:break;
                                  }break;
                           case 1:switch(state2)
                                  {
                                    case 0:mag+=5;display();delay();break;
                                    case 1:mag-=5;display();delay();break;
									case 2:break;
									case 3:break;
									case 4:break;
                                  }break;
						 }
				    break;
            case 4:{EA=0;read_bo();EA=1;} 
	 		default:break;
		}
	 state2=4;
 	}
}


//INT0的中斷服務函數
//INT0由8279在鍵盤按下時發出
//注意關鍵字interrupt
void int_int0(void) interrupt 0 using 0
{
  	uchar i;

    //設置標志,告訴主循環中斷發生了
  	int_flag=1;
  	//讀取鍵值
    key_value=keyin();
	for(i=0;i<=3;i++)
	  if(key_value==tb0[i]) state0=i;
    for(i=0;i<=2;i++)
	  if(key_value==tb1[i]) state1=i;
	for(i=0;i<=3;i++)
	   if(key_value==tb2[i]) state2=i;
	for(i=0;i<=9;i++)
	   if(key_value==xishu[i]) 
	       { value=i;
	         if(state0==3) {count++;
			                if(count==1) {a=value;COM=0X80;DAT=seg[a];}
					        if(count==2) {b=value;COM=0X81;DAT=seg[b];}
					        if(count==3) {c=value;count=0;COM=0X82;DAT=seg[c];}
					        }
		
				 switch(state0)
                  {
				          case 0:if(state1==2) {count_cycle++;
			                                    if(count_cycle==1) {baiwei=value;COM=0X80;DAT=seg[baiwei];cycle_count=baiwei*100;}
					                            if(count_cycle==2) {shiwei=value;COM=0X81;DAT=seg[shiwei];cycle_count+=shiwei*10;}
					                            if(count_cycle==3) {gewei=value;count_cycle=0;COM=0X82;DAT=seg[gewei];cycle_count+=gewei;}}
 								  break;
                          case 1:if(state1==2) {count_cycle++;
			                                    if(count_cycle==1) {baiwei=value;COM=0X80;DAT=seg[baiwei];cycle_count=baiwei*100;}
					                            if(count_cycle==2) {shiwei=value;COM=0X81;DAT=seg[shiwei];cycle_count+=shiwei*10;}
					                            if(count_cycle==3) {gewei=value;count_cycle=0;COM=0X82;DAT=seg[gewei];cycle_count+=gewei;}}
 								  break;
						  case 2:if(state1==2) {count_cycle++;
			                                    if(count_cycle==1) {baiwei=value;COM=0X80;DAT=seg[baiwei];cycle_count=baiwei*100;}
					                            if(count_cycle==2) {shiwei=value;COM=0X81;DAT=seg[shiwei];cycle_count+=shiwei*10;}
					                            if(count_cycle==3) {gewei=value;count_cycle=0;COM=0X82;DAT=seg[gewei];cycle_count+=gewei;}}
 								  break;
						  case 3:if(state1==2) {count_cycle++;
			                                    if(count_cycle==1) {baiwei=value;COM=0X80;DAT=seg[baiwei];cycle_count=baiwei*100;}
					                            if(count_cycle==2) {shiwei=value;COM=0X81;DAT=seg[shiwei];cycle_count+=shiwei*10;}
					                            if(count_cycle==3) {gewei=value;count_cycle=0;COM=0X82;DAT=seg[gewei];cycle_count+=gewei;}}
 								  break;
				   }
            }
    if(key_value==0x18) ok=1;

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美成va人片在线观看| 首页国产欧美日韩丝袜| 国产成人免费视频网站高清观看视频| 久国产精品韩国三级视频| 国产毛片精品视频| 91蜜桃视频在线| 久久久99久久精品欧美| 日韩成人dvd| 国产成人av资源| 日韩精品一区二区三区在线播放 | 91久久精品一区二区| 7777精品久久久大香线蕉| 亚洲激情男女视频| 成人激情免费视频| 欧美成人在线直播| 黄一区二区三区| 久久夜色精品一区| 国产成人在线免费| 国产精品人成在线观看免费| 国产不卡视频一区| 国产精品久久久久久户外露出 | 久久精品99国产精品日本| 亚洲一区影音先锋| 欧美午夜电影网| 亚洲国产精品一区二区尤物区| 91蝌蚪国产九色| 亚洲成av人片观看| 欧美日韩免费高清一区色橹橹| 国产精品一区二区三区99| 亚洲黄色小视频| 亚洲女性喷水在线观看一区| 欧美tickle裸体挠脚心vk| 欧美色中文字幕| 7878成人国产在线观看| 国产三级三级三级精品8ⅰ区| 久久不见久久见免费视频7| 亚洲欧美成人一区二区三区| 欧美激情在线一区二区三区| 91免费视频观看| 高清日韩电视剧大全免费| 精品在线一区二区| 国产乱人伦偷精品视频免下载| 亚洲丶国产丶欧美一区二区三区| 国产精品第四页| 一区二区三区在线观看国产| 亚洲乱码日产精品bd| 一区二区高清视频在线观看| 韩日精品视频一区| 日韩成人午夜精品| 裸体健美xxxx欧美裸体表演| 奇米影视一区二区三区| 国内精品伊人久久久久av影院| 国内外成人在线| 欧美综合久久久| 精品国产自在久精品国产| 国产欧美在线观看一区| 亚洲欧美另类小说| 国产精品自产自拍| 在线亚洲一区二区| 国产欧美精品在线观看| 91在线视频在线| 91精品国产综合久久久久久漫画| 国产无人区一区二区三区| 一区二区三区免费网站| 国产成人在线免费观看| 88在线观看91蜜桃国自产| 欧美xxxxxxxxx| 亚洲最新视频在线观看| 国产精品18久久久久久久久 | 欧美日韩免费在线视频| 久久久精品国产免大香伊| 亚洲成人先锋电影| 日韩av成人高清| 91香蕉国产在线观看软件| 亚洲人成网站色在线观看| 欧美一区二区视频在线观看 | 欧美群妇大交群的观看方式| 日本伊人色综合网| 国产精品天天摸av网| 欧美日韩高清不卡| 波多野结衣中文字幕一区| 91精品国产色综合久久久蜜香臀| 91麻豆6部合集magnet| 亚洲色欲色欲www| 欧美性感一区二区三区| 午夜精品aaa| 日韩写真欧美这视频| 国产一区二区调教| 国产精品色婷婷久久58| 欧美三级电影网| 九九视频精品免费| 国产精品免费久久| 欧美视频一区二| 日本强好片久久久久久aaa| 欧美成人精品福利| 91在线视频播放地址| 亚洲国产视频在线| 日本一区二区电影| 欧美一区三区四区| 丁香婷婷综合激情五月色| 亚洲一级二级在线| 久久精品日产第一区二区三区高清版| www.av精品| 丰满放荡岳乱妇91ww| 亚洲欧美欧美一区二区三区| 精品乱人伦小说| 欧美综合久久久| 91啦中文在线观看| 色综合中文字幕国产 | 日韩一卡二卡三卡四卡| 不卡一区二区中文字幕| 美女网站色91| 精品一区二区三区免费| 亚洲精品乱码久久久久久久久 | 99re6这里只有精品视频在线观看| 国产一区二区91| 国模套图日韩精品一区二区| 国产精品中文字幕日韩精品 | 欧美日韩国产不卡| 欧美肥大bbwbbw高潮| 欧美va在线播放| 国产视频在线观看一区二区三区| 国产女同互慰高潮91漫画| 一区二区欧美国产| 中文字幕av资源一区| 国产成人精品免费一区二区| 美女视频黄免费的久久| 国产成人在线色| 9191国产精品| 亚洲视频1区2区| 奇米精品一区二区三区在线观看一 | 亚洲另类在线制服丝袜| 亚洲电影第三页| youjizz国产精品| 欧美精品丝袜久久久中文字幕| 国产喂奶挤奶一区二区三区| 亚洲国产日韩一级| 日本免费新一区视频| 懂色av一区二区在线播放| 欧美日本在线播放| 亚洲精品免费播放| 91在线看国产| 亚洲女同女同女同女同女同69| 国产激情视频一区二区三区欧美| 日韩一区二区影院| 日本伊人色综合网| 欧美成人bangbros| 蜜臀av性久久久久蜜臀aⅴ流畅| 99久久er热在这里只有精品15 | 国产精品萝li| 99综合电影在线视频| 国产精品电影一区二区三区| 成人免费视频免费观看| 中文字幕永久在线不卡| 国产91清纯白嫩初高中在线观看| 久久在线免费观看| 国产成人在线视频网址| 国产精品蜜臀在线观看| 在线亚洲一区二区| 婷婷开心激情综合| 国产午夜精品一区二区三区嫩草 | 国产成人精品www牛牛影视| 国产精品三级久久久久三级| 欧美视频一区二| 国产米奇在线777精品观看| 亚洲免费成人av| 欧美日韩中字一区| 久久丁香综合五月国产三级网站 | 国产亚洲一区二区在线观看| 欧美三级中文字幕在线观看| 韩国中文字幕2020精品| 亚洲精品乱码久久久久久黑人| 亚洲精品在线观看视频| 欧美精品在线一区二区| 色综合天天综合网国产成人综合天| 日韩国产欧美一区二区三区| 国产精品第13页| 亚洲精品欧美专区| 一区二区三区四区在线| 亚洲一二三区不卡| 亚洲大片免费看| 秋霞电影网一区二区| 奇米一区二区三区| 日本不卡视频一二三区| 91网页版在线| 中文字幕在线观看一区二区| 久草中文综合在线| 国产精品综合二区| www.爱久久.com| 欧美日韩在线观看一区二区 | 中文字幕第一区第二区| 中文字幕一区二区不卡| 一区av在线播放| 蜜桃av一区二区| 成人免费视频播放| 制服丝袜日韩国产| 亚洲国产精华液网站w| 日韩精品欧美精品| 成人国产在线观看| 精品福利视频一区二区三区|