打印

新手求教

[复制链接]
1884|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
下面是花样流水灯的程序,有几个问题向各路大虾咨询下:
1.数组中的数据是怎么来的(好像不是让流水灯先按顺序流,然后....)
2,i=136, 纠结的是程序刚开始它取数组中的哪个数;

刚开始学习单片机,不知道怎么组织语言;不知道大家明白我的意思没~~~~


#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar code Pattern_P0[]=
{
  0xfc,0xf9,0xf3,0xe7,0xcf,0x9f
};
uchar code Pattern_P2[]=
{
  0xf5,0xf6,0xfe,0x54,0x56,0x76,0xd7,0x49,0xa9,0xe4,0xc6
};
void DelayMS(uint x)
{
  uchar t;
while(x--)
{
   for(t=120;t>0;t--);
}
}
void main()
{
  uchar i;
while(1)
{
   for(i=136;i>0;i--)
  {
    P0=Pattern_P0;
   P2=Pattern_P2;
   DelayMS(150);
  }
}
}


.
.

相关帖子

沙发
Sea-Wolf| | 2011-11-10 08:15 | 只看该作者
数组中的数据是自己定义的。用来赋值给P0、P2口的。你可以试着改变数组中的值,然后把程序重新编译一下,再看下效果。i=136,也是自个定义的,它在for()这个循环中代表,你想让他循环的次数。

使用特权

评论回复
板凳
Mayday| | 2011-11-10 19:30 | 只看该作者
看是看得明白,,把两个数组的值分别给P0,,P2口

使用特权

评论回复
地板
zefengyuan1989| | 2011-11-10 21:33 | 只看该作者
不知道for语句到底要做什么:o

使用特权

评论回复
5
312567150| | 2011-11-10 21:38 | 只看该作者
循环做延时用。。。

使用特权

评论回复
6
312567150| | 2011-11-10 21:40 | 只看该作者
循环做延时用。。。

使用特权

评论回复
7
Eric-yang|  楼主 | 2011-11-11 18:59 | 只看该作者
第一个循环中,P0和P2取什么值 ?

使用特权

评论回复
8
zefengyuan1989| | 2011-11-12 19:26 | 只看该作者
6# 312567150
我是说main()里的for,还有i

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

3

帖子

0

粉丝