⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 control.h

📁 msp430驱动340*240程序 包括显示图片 文字 以及一些改变字体颜色功能等
💻 H
字号:
#include <at89x52.H>
#include <keyboard.h>
#include "mcutofpga.h"
 #include"delay.h"
 #include<lcd1602.h>
#define uchar unsigned char
#define uint unsigned int
#define exit 15
#define back 14
uchar code number[]={"0123456789"};
uint frequence=1000;							 //初始化频率和相位
uint phrase=0;									 
 uchar code string1[]={"1:wave 2:FM 3:PM "};
 uchar code string2[]={"4:AM ..plz selcet"}; 					    
 uchar code complete[]={"seting is OK     "};
uchar key ;
void start()   //液晶显示初始选择界面
{  WriteCommandLCM(0x01,1);
	 
	  DisplayListChar(0,0,string1); 
	  DisplayListChar(0,1,string2);
	 
}			
void flash ( uchar *line) 		   //按下选项时,选项闪烁的子函数
{			   uchar j;

		                 	for(j=0;j<2;j++)
		         {   	 
	             
	             DisplayListChar(0,0,line); 
	             DisplayListChar(0,1,string2);
		                  delay(700); 
		         DisplayListChar(0,0,string1); 
	             DisplayListChar(0,1,string2);
						  delay(700); 
		            	
								   }

}
void setwave()				//选择波形
{ 
 uchar code str[]={"plz select wave."};
  uchar code str1[]={"1sin 2tri 3squa"};  
  WriteCommandLCM(0x01,1);
       	  delay(50) ;
	  DisplayListChar(0,0,str);
	  DisplayListChar(0,0,str1);		
		   delay(500) ;
    while(1)
     {
	   key=scan();
	     if(key>0 && key<4)
		   {
		     if(key==1)
			   {
			   }
			 if(key==2)
			   {
			   }
			 if(key==3)
			   {
			   }

			  break;
			}
	   	}	 
   WriteCommandLCM(0x01,1);
       	  delay(50) ;
	  DisplayListChar(0,0,complete);
	      delay(1000);
	  start();
  }
  void  setfrequence()		   //设置频率
     {	   uchar i=0; 
	 uchar frequencedisplay[]={"              HZ"};
	 unsigned char str[]=   {"plz input freq. "}; 
	 WriteCommandLCM(0x01,1);
	 delay(50) ;
	  DisplayListChar(0,0,str); 
	  DisplayListChar(0,1,frequencedisplay); 
	 	   delay(500) ;

	 while(1)
	   {key=scan();
	   if(key>=0 &&key<10)
	      {	frequence*=10;
		    frequence+=key;
		    frequencedisplay[i]=number[key];
	     	DisplayListChar(0,1,frequencedisplay);	 //1602显示频率数值  
            ++i;
			 if(i==1 && key==0)--i;
		   }
		   if(key==back){start();return ; }
		   if(i==8 || key==exit)
		   {
		  break; }
	    
	    
	   }
       sentData(frequence,phrase);			 //向FPGA发送数据
	    WriteCommandLCM(0x01,1);
       	  delay(50) ;
	  DisplayListChar(0,0,complete);		 //显示数据已发送
	  DisplayListChar(0,1,frequencedisplay);
	      delay(1000);
	      start();
	} 
  void setphrase()						//设置相位
  {		 uchar i=0; 
					       
	 uchar code str[]={"plz set phrase. "}; 
	 uchar phrasedisplay[]={"                "};
	 
		  WriteCommandLCM(0x01,1);
	  DisplayListChar(0,0,str);  
	 while(1)
	   {key=scan();
	   if(key>=0 &&key<10)
       {	
	        phrase*=10;
		    phrase+=key;
		    phrasedisplay[i]=number[key];
	     	DisplayListChar(0,1,phrasedisplay);	 //1602显示频率数值  
            ++i;
			if(i==1 && key==0)--i;
		   }
		   if(key==back){start();return ; }
		   if(i==8 || key==exit) 
		   {
		   i=0;
		   break; 
		   }
		   
	    
	    }

		sentData(frequence,phrase);	   //向FPGA发送数据   
		 WriteCommandLCM(0x01,1);
       	   delay(50) ;
	  DisplayListChar(0,0,complete);   //显示数据已发送
	      delay(1000);
	       start();
	
  }
 
 /* void 	setap()
   {  	  uchar i=0;
       uchar str[]={"plz set ampitu"}; 
       uchar apdisplay[]={"        "};
     WriteCommandLCM(0x01,1);
     
	  DisplayListChar(0,0,str); 
   
  
   	 while(1)
	   {
	    key=scan();
     if(key>=0 &&key<10)
	      {
		  ap*=10;
		  ap+=key;
		     apdisplay[i]=number[key];
			 	DisplayListChar(0,1,frequencedisplay);	 //1602显示频率数值
              ++i;
			  
		   }
		   if(key==back) setap();
		   if(i==8 || key==exit)
		   break;
         }
		
   }	*/
	   


void control()						//键盘控制子函数
{	uchar key;
                        
    
	 uchar code selectFM[]=  {"1:wave      3:PM "};
	 uchar code selectwave[]={"       2:FM 3:PM "}; 
	 uchar code selectPM[]=  {"1:wave 2:FM      "}; 
	 InitialMcu();
	   start();
	while(1)
	{key=scan();
     if(key)
	{
    switch (key )
	  { case 1:
	     {	flash(selectwave);
		  setwave();break;
		  
		 }break;
	   case 3:
	     { 	 flash(selectPM);
		   setphrase();break;
		  
		 }break;
	   case 2:
	     {
		         flash(selectFM) ;
				setfrequence();
						 break;
		 }break;
		 case 4:
	     {
		/*setap()*/ ;break;
		 }break;
	  default : break  ;
	   }

 	 }
     }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -