新闻中心

EEPW首页>嵌入式系统>设计应用> 关于单片机LED左右循环出现的问题以及解决方法

关于单片机LED左右循环出现的问题以及解决方法

作者: 时间:2016-11-25 来源:网络 收藏
#include

#include
void TIMED( unsigned int x);
main()
{
unsigned int calc;
while(1)
{
calc = 0xfe;//0xfe = 1111 1110//
while(1)
{
P0 = calc;
TIMED(300);
calc = _crol_(calc,1); //-------1
if(P0 == 0x7f) break; //-------2


}
while(1)
{
P0 = calc;
TIMED(300);
calc = _cror_(calc,1); //-------1
if(P0 == 0xfe) break; //--------2


} //次循环问题:应该将1.2调换位置 否则 当第一个循环完了之后 calc又向左循环位移一位,变成0xfe;
}
} //而1.2换了位置之后,第一个循环完后 calc的值为0x7f; 第二个循环同理;

本文引用地址: //m.amcfsurvey.com/article/201611/321468.htm

void TIMED( unsigned int x)
{
unsigned int y,i;
for(i = x; i > 0; i--)
for(y = 110; y > 0; y--);
}



关键词:单片机LED左右循

评论


技术专区

关闭