#include<reg52.h> //52系列單片機頭文件
sbit led1=P1^0; //聲明單片機P1的第一位
void main () // 主函數 (從這里開始執行)
{
led1=0; //點亮的一個二極管 (所有的I/O口都是默認的高電平)
}
#include<reg52.h>
void main()
{
P1=0xfe;
}
#include<reg52.h>
void main ()
{
P1=0xfe;
while(1); //大循環
}
for語句的延時
#include<reg52.h>
#define uint unsigned int //宏定義
sbit led1=P1^0;
uint i,j;
void main()
{
while(1)
{
led1=0;
for(i=1000;i>0;i--) //延時語句
for(j=110;j>0;j--);
led1=1;
for(i=1000;i>0;i--)
for(j=110;j>0;j--);
}
}
子涵數延時語句
#include<reg52.h>
#define uint unsigned int
sbit led1=P1^0;
void delay1s(); //聲明子函數
void main()
{
while(1)
{
led1=0;
delay1s(); //調用延時子函數
led1=1;
delay1s();
}
}
void delay 1s() //子函數體
{
uint i,j;
for(i=500;i>0;i--) //延時500ms
for(j=110;j>0;j--);
}
帶參函數
#include<reg52.h>
#defin uint unsigned int
sbit led1=P1^0;
void delayms (uint);
void main()
{
while(1)
{
led1=0;
delayms(500);
led1=1;
delayms(500);
}
}
void delayms(uint xms)
{
uint i,j;
for(i=xms;i>0;i--)
for(j=110;j>0;j--);
}
利用庫函數實現流水燈
左移程序
#include<reg52.h>
#define uint unsigned int
uchar a;
void main()
{
a=0xaa;
while(1)
{
a=a<<1;
}
}
右移程序
#include<reg52.h>
#define uint unsigned int
uchar a;
void main ()
{
a=0xaa;
while(1)
{
a=a>>1;
}
}
#include <reg52.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
void delayms(uint);
uchar aa;
void main();
{
aa=0xfe; //賦初值11111110
while(1)
{
p1=aa;
delayms(500);
aa=_croi_(aa,1); //將aa循環左移一位再賦予給aa
}
}
void delayms(uint xms)
{
uinti,j;
for(i=xms;i>0;i--)
for(j=110;j>0;j--);
}