/************************************************************************************
作者: 好心情
日期: 2007-08-24
描述: 点亮两个led,通过两个led点亮时间的不同,认识不同的数据类型之间的差异
************************************************************************************/
//#include 预处理文件中主要定义各种特殊功能寄存器,如果自己定义,就不需要在引用头文件了
//自定义特殊功能寄存器
sfr p1=0x90;//定义p1口,sfr为c51扩充数据类型,可以访问51内部所有特殊功能寄存器
bsfr p1_0=0x90;//定义p1.0口,同样为扩充数据类型,可访问可寻址位
bsfr p1_1=p1^1;//定义p1.1
void main()
{
unsigned int a;//声明变量a,无符号整型0-65535
unsigned char b;//无符号字符型0--255
do
{
for(a=0;a<65535;a++) //控制led1
p1_0=0;//for循环,执行P1_0=065535次,注意,C语言区分大小写,头文件中预定义的为大写,如果写成p1_0 就会出错
p1_0=1;
for(a=0;a<30000;a++);//延时,空循环30000次
/*在此处加入空行有助于提高程序的可读性,关于程序书写的一些事项建议参考c语言
帝国的" 高质量C++/C编程指南 "http://www.vcgood.com/forum_posts.asp?TID=539&PN=1*/
for(b=0;b<255;b++)//控制led2,因为b为无符号字符型,取值不能大于255,如果大于会形成死循环
p1_1=0;
p1_1=1;
for(a=0;a<30000;a++);
}while(1);
文章评论(0条评论)
登录后参与讨论