51单片机如何用C程序中的_crol_和_cror_实现流水灯来回显示

 我来答
梦幻人生979
2012-05-02
知道答主
回答量:20
采纳率:0%
帮助的人:15.7万
展开全部
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
//延时
void DelayMS(uint x)
{
uchar i;
while(x--)
{
for(i=0;i<120;i++);
}
}
//主程序
void main()
{
uchar i;
P2=0x01;
while(1)
{
for(i=0;i<7;i++)
{
P2=_crol_(P2,1); //P2 的值向左循环移动
DelayMS(150);
}
for(i=0;i<7;i++)
{
P2=_cror_(P2,1); //P2 的值向右循环移动
DelayMS(150);
}
}
}
小谢
2025-08-18 广告
深圳市金创图电子设备有限公司,联系电话:18928465613。金创图是一家集研发、生产、营销、服务为一体的高新技术企业。致力于生产:管装烧录机,编带烧录机,托盘烧录机,通用型烧录机、自动一体化烧录机等;设备产品具有高速率、高刚性、高性能、... 点击进入详情页
本回答由小谢提供
lapian73
推荐于2017-11-26 · TA获得超过225个赞
知道答主
回答量:498
采纳率:0%
帮助的人:388万
展开全部
用个移位处理就行了 set(void) { 流水灯.c * 描述 : 该程序实现LED的流水灯显示。 该程序用于学习 LED流水本例中是调用的 intrins.h 中的
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
功安波PL
2011-05-20 · 超过30用户采纳过TA的回答
知道答主
回答量:116
采纳率:0%
帮助的人:74.9万
展开全部
#define uchar unsigned char;
#define uint unsigned int;
uchar tt=0;
int LED=0xfe;
void main()
{

TMOD=0x01;
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
EA=1;
ET0=1;
TR0=1;
P0=0xfe;
while(1)
{

if(tt==20)
{
tt=0;
LED=_crol_(LED,1);
P0=LED;

}

}

}
void timer0() interrupt 1
{
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
tt++;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xymbmcu
推荐于2017-05-18
知道答主
回答量:20
采纳率:0%
帮助的人:7.4万
展开全部
我给你写一个左移的,右移的就自己……
#include<reg52.h>
#include<instrins.h>
#define uchar unsigned char
#define uint unsigned int
void delay(uint z)
{
uint x,y;
for(x=0;x<z;x++)
for(y=0;y<121;y++);
}

void main()
{
uchar num;
num=0xfe;
while(1)
{
P1=num;
delay(1000);
aa=_crol(num,1);
}
}
追问
左移我也会啊,就是一起用就不知道了。
追答
你的意思是左右移动,是吗?
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sw510287908
2011-05-13 · 超过23用户采纳过TA的回答
知道答主
回答量:78
采纳率:0%
帮助的人:59.7万
展开全部
支持2楼的,左移右移不是一样的吗,关键是要装载#include<instrins.h>
这个头文件
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式