欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

用EM78P153S給同事寫流水燈

作者:佚名   來源:本站原創   點擊數:  更新時間:2011年03月26日   【字體:
劉翔無聊弱智作品

基于EM78P153S的流水燈

無聊為龐師傅寫于2011年3月21日

#include"EM78x153xx.h"
#define DISI()  _asm{disi}
#define ENI()  _asm{eni}
#define SLEP()  _asm{slep}
#define NOP()  _asm{nop}
#define WDTC() _asm{wdtc}
typedef unsigned char uchar;
typedef unsigned int uint;
typedef unsigned short ushort;
#define ledl PORT5
#define ledh PORT6
void delay(void)
{uchar i,j;
for(j=0;j<200;j++)
for(i=0;i<200;i++)NOP();
}
const ushort rundata[16]={0xfffe,0xfffc,0xfff8,0xfff0,
      0xffe0,0xffc0,0xff80,0xff00,
      0xfe00,0xfc00,0xf800,0xf000,
      0xe000,0xc000,0x8000,0x0000};
void main(void)
{uchar i,j,k;
uint run;
WDTC();//清看門狗
DISI();//禁止中斷
STATUS=0X00;//清除狀態標志位
P5CR=0x00;//置P5為輸出口
P6CR=0x00;//置P6為輸出口
PDCR=0x00;//禁止P5,P6下拉
ODCR=0x00;//禁止P6開漏
PHCR=0x00;//禁止P6上拉
for(;;)
for(i=0,k=0;i<16;i++,k--)
  {run=rundata[i];
  for(j=0;j<k;j++)
    {ledl=run;
    ledh=(run>>8);
    delay();
    }
  }
}
void _intcall interrupt(void) @ int 
{
  // Write your code (inline assembly or C) here
  
  //restore ACC,R3,R4
  _asm
   {
      reti            //tell Compiler to recover common registers here
      SWAP 0X1F    ;restore A
      SWAPA 0X1F
   }
}
void _intcall interrupt_l(void) @ 0x08:low_int 0
{
   _asm 
   {
      //save A --> 0x1F 
      MOV 0X1F,A   ;backup A to 0x1F
   }   
}
關閉窗口

相關文章