×
嵌入式 > 嵌入式开发 > 详情

发光二极管闪烁程序(位操作)

发布时间:2020-08-28 发布时间:
|
//位操作点亮发光二极管

#include
#include
sbit D2=P1^3;
void OSCILLATOR_Init(void)
{
U8 SFRPAGE_save = SFRPAGE;
SFRPAGE = CONFIG_PAGE;
OSCICN = 0x87; // Set internal osc. divider to 1

SFRPAGE = SFRPAGE_save;
}
void PORT_Init(void)
{
U8 SFRPAGE_save = SFRPAGE;
SFRPAGE = CONFIG_PAGE;
P1MDIN |= 0x08; // P1.3 is digital
P1MDOUT = 0x08;
XBR2 = 0x40; // Enable crossbar and GLOBAL enable weak pull-ups
SFRPAGE = SFRPAGE_save;
}
/*void Delay(unsigned m)
{
char i=0;
while(--m)
{
for(i=0;i<120;i++);//修改i的最大值来调整延时时间,延时时间计算:
}

}*/
//延时可以使用上面的或下面的双层for循环,单层时间太短
void delay()
{
unsigned int i;
unsigned char j;
for(i=1;i<3000;i++)
{
for(j=1;j<120;j++);
}

}
void main()
{
OSCILLATOR_Init();//时钟初始化
PORT_Init();//端口初始化
PCA0MD &= ~0x40; //禁止看门狗
D2=1;
//Delay(1200);
delay();
D2=0;
delay();
//Delay(1200);
}



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
寻找半导体产业未来10年的驱动力