您当前的位置:五五电子网电子知识单片机-工控设备MSP430单片机MSP430单片机步进电机带显示程序 正文
MSP430单片机步进电机带显示程序

MSP430单片机步进电机带显示程序

点击数:7962 次   录入时间:03-04 11:37:22   整理:http://www.55dianzi.com   MSP430单片机

void keyprocess(void)

  
       for(aa=0;aa<4;aa++)
       {
           P2OUT=hang[aa];       //逐行扫描
            if(keyin != 0x0f)break;//检测该行有键按下则退出循环
       }
            
       for(bb=0;bb<4;bb++)     //逐列扫描
       {
         if(keyin==lie[bb])
         {
           save=key[aa][bb];break;        //检测该列有键按下则退出循环
         }
       }
       
       
switch(save)
       {
 case 0:
    if(flag_key1==1)
         {key1=0,flag_key1=0;lcd_mesg2(key1,key2,0x92);}
    if(flag_key2==1)
         {key2=0,flag_key2=0;lcd_mesg2(key1,key2,0x92);}    
            break;
         
  case 1:
    if(flag_key1==1)
         {key1=1,flag_key1=0;lcd_mesg2(key1,key2,0x92);}
    if(flag_key2==1)
         {key2=1,flag_key2=0;lcd_mesg2(key1,key2,0x92);}    
            break;       
  case 2:
    if(flag_key1==1)
         {key1=2,flag_key1=0;lcd_mesg2(key1,key2,0x92);}
    if(flag_key2==1)
         {key2=2,flag_key2=0;lcd_mesg2(key1,key2,0x92);}    
            break;
    
     case 3:
    if(flag_key1==1)
         {key1=3,flag_key1=0;lcd_mesg2(key1,key2,0x92);}
    if(flag_key2==1)
         {key2=3,flag_key2=0;lcd_mesg2(key1,key2,0x92);}    
            break;     
         
      case 4:
    if(flag_key1==1)
         {key1=4,flag_key1=0;lcd_mesg2(key1,key2,0x92);}
    if(flag_key2==1)
         {key2=4,flag_key2=0;lcd_mesg2(key1,key2,0x92);}    
            break;    
         
       case 5:
    if(flag_key1==1)
         {key1=5,flag_key1=0;lcd_mesg2(key1,key2,0x92);}
    if(flag_key2==1)
         {key2=5,flag_key2=0;lcd_mesg2(key1,key2,0x92);}    
            break;   
    
        case 6:
    if(flag_key1==1)
         {key1=6,flag_key1=0;lcd_mesg2(key1,key2,0x92);}
    if(flag_key2==1)
         {key2=6,flag_key2=0;lcd_mesg2(key1,key2,0x92);}    
            break;  
         
        case 7:
    if(flag_key1==1)
         {key1=7,flag_key1=0;lcd_mesg2(key1,key2,0x92);}
    if(flag_key2==1)
         {key2=7,flag_key2=0;lcd_mesg2(key1,key2,0x92);}    
            break;  
    
        case 8:
    if(flag_key1==1)
         {key1=8,flag_key1=0;lcd_mesg2(key1,key2,0x92);}
    if(flag_key2==1)
         {key2=8,flag_key2=0;lcd_mesg2(key1,key2,0x92);}    
            break;  
    
     case 9:
    if(flag_key1==1)
         {key1=9,flag_key1=0;lcd_mesg2(key1,key2,0x92);}
    if(flag_key2==1)
         {key2=9,flag_key2=0;lcd_mesg2(key1,key2,0x92);}    
            break;
         
   case 12:flag_key1=1;break;
   case 13:flag_key2=1;break;
   case 14:flag_go=1;break;
 
       case 10:
       case 11:
       case 15:break;
       }    
       
    return;
       }

#pragma vector = PORT2_VECTOR 
__interrupt void PORT_ISR(void)      
      
 { 
  keyprocess();
  P2IFG=0;
  P2OUT = 0;
   return;
 }

void main(void)
{
  WDTCTL=WDTPW+WDTHOLD;                   //关看门狗
  BCSCTL1 =CALBC1_1MHz;                   //设定DCO为1MHZ
  DCOCTL =CALBC1_1MHZ;     
  
  init_port();

上一页  [1] [2] [3]  下一页


本文关键字:单片机  步进电机  程序  MSP430单片机单片机-工控设备 - MSP430单片机