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

📄 按两下启动led(tj口).c

📁 此程序为Freescale程序
💻 C
字号:
/***************************************************************************
 功能:一个按键(PTIJ_PTIJ6)按两下 启动标准LED(PTT)调试
 作者:唐小进
 时间:08.2.5
 现象:第一次按下,四个指示灯亮,第二次按下,运行标准LED
 注意: 1.设置按键要有 DDRJ_DDRJ6=0;设为输入
                       PERJ_PERJ6=1;上拉使能
                       PPSJ_PPSJ6=0;电阻上拉
             
        2.按第一下和第二下之间一般延时1秒            
***************************************************************************/
#include <hidef.h>      /* common defines and macros */
#include <mc9s12dg128.h>     /* derivative information */

#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"

void delay(int m){
int i,j;
for(i=0;i<500;i++)
for(j=0;j<m;j++){
}
}

int Tab3[8]={0x81,0xC3,0xE7,0xff,0xE7,0xC3,0x81,0x00};
int Tab4[8]={0x18,0x3c,0x7e,0xff,0x7e,0x3c,0x18,0x00};
 
void main(void)
{ int i,j,a,b,c;

  DDRT=0xff; /* PTTas output */
 /* RDRT=0XFF;*//*减小驱动,满驱动为4.5V,减小后为3.5V*/  
  DDRJ_DDRJ6=0;  /*设为输出*/       
  PERJ_PERJ6=1;   /*上拉使能*/
  PPSJ_PPSJ6=0;   /*上拉*/
  asm nop  ;/*空指令*/
  asm nop  ;  
  asm nop  ;        
  asm nop  ;
  asm nop  ;  
  asm nop  ;
  asm nop  ; 
  asm nop  ;
  asm nop  ; 
  asm nop  ;   
  asm nop  ;
  asm nop  ;
     
while(1){
  if(PTIJ_PTIJ6==0){
   PTT=0X66;
   DDRJ_DDRJ6=0;  /*设为输出*/
   PERJ_PERJ6=1;  /*上拉使能*/
   PPSJ_PPSJ6=0;  /*上拉*/
   delay(1600); 
   
   while(1){
    if(PTIJ_PTIJ6==0){
     PTT=0X00;
     while(1){
      for(i=0;i<=2;i++)     /*middle run two sides*/
      for(j=0;j<=7;j++){
       PTT=Tab4[j];
       delay(600);
      }
   
      for(a=0;a<=2;a++){  
       PTT=0XFF;
       delay(600);
       PTT=0X00;
       delay(600);
      }
    
      for(b=0;b<=3;b++)
      for(c=0;c<=7;c++){     /*two sides run middle*/
       PTT=Tab3[c];
       delay(600);
      }
  }    
 }
   }
    }
     }
}

⌨️ 快捷键说明

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