- /*作用:显示 I love you*/
- #include<reg52.h> //头文件
- #define uchar unsigned char //宏定义
- #define uint unsigned int
- uchar code table[]= // 定义数组常量,该常量用于数码管显示
- {0x30,0x38,0x3f,0x3e,0x79,//l love you,前面加code该常量在程序
- 0x6e,0x3f,0x3e}; //代码中存放,不占用RAM
- void delay(uint x) //延时子函数,时间约为0.002xS
- {
- uint i,j;
- for(i=x;i>0;i--)
- for(j=200;j>0;j--);
- }
- void display(uchar *lp,uchar lc) //显示子函数
- {
- uchar i; //定义局部变量
- while(1)
- {
- P1=0xf8; //点亮第一个数码管
- P2=0;
- for(i=0;i<lc;i++)
- {
- P2=lp[i];
- delay(1);
- P2=0; //消隐
- P1++;
- }
- }
- }
- void main() //主函数
- {
- while(1)
- {
- display(table,8); //条用子函数显示 l love you
- }
- }
- /*注:
- 数码管与P2口相连,低电平有效
- */
复制代码
|