标题: 新手学51单片机,关于编写流水灯程序搞不明白,请大家帮小弟看看! [打印本页]

作者: tanghao8887    时间: 2018-10-8 12:27
标题: 新手学51单片机,关于编写流水灯程序搞不明白,请大家帮小弟看看!
小面两个程序,同样是流水灯,第一个是郭天祥老师的,第二个是普中科技的,我就搞不懂,为什么郭老师直接将beet定义成一个无符号变量,然后将P1口赋给了beet,由beet去实现功能,这种做法是否错误?他这样编写程序为何在普中科技的板子上运行的时候8个灯一起亮,而在郭老师的板上可以正常的流水灯,然而。普中科技的板子要把P1口设为宏定义,我定义为xxoo,如第二个程序,可以正常流水灯!还有就是,普中科技的板,P2口才是控制八个LED的,这是什么原因,请各位老师帮我看一下!谢谢!



图①
void main()
unsigned char beet;
{
P1=beet;
beet=0xfe;
while(1)
    {
        beet=_crol_(beet,1);
       delay(200);
    }
}

图②


#define xxoo P2

void main
{
    xxoo=0xfe;
while(1)
{

xxoo=_crol_(beet,1);
       delay(200);
}
}









}
作者: tanghao8887    时间: 2018-10-8 12:29
图2的,循环函数后面那个beet改成xxoo
作者: admin    时间: 2018-10-8 12:39
手机版发帖的时候可以点击输入框右下侧的那个照相机图标上传图片和附件
作者: w52532    时间: 2018-10-8 12:55
图2的,循环函数后面那个beet改成xxoo
作者: 316370894    时间: 2018-10-8 17:26
你图一的程序是无法流水的
beet=_crol_(beet,1);
要改成
P1=_crol_(beet,1);

不管怎么用,结果肯定是赋给P1端口的




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1