A. 51单片机C语言如何实现8个流水灯左移三次,后右移三次;如此循环
你直接用数组加for循环就可以实现
B. 51单片机。用C语言的_crol_()函数实现LED灯循环左移。为什么我的程序只亮一盏灯啊。。。没有循环啊
你的led灯是共阳的,从你给的条件可以判断。p1=0xfe,即最低位为‘0’
,故点亮的是p1.0引脚所对应的led灯,也就是你所谓的c0。所以你的程序没有问题啊。
C. 高手支招:请问用C语言编程使51单片机的数码管左移循环显示0-7的程序怎么编呀
延时有问题,10毫秒试一试,假如闪的话就改小。还有P0接上拉电阻没?单片机晶振工作没?这都要测试的
D. C语言和单片机中的左移右移
# include "reg51.h" // 包含头文件
#define uchar unsigned char
void delay02s(void) // 延时0.2s子程序
{
unsigned char i,j,k;
for ( i=2;i>0;i-- )
for (j=200;j>0;j-- )
for (k=250;k>0;k-- );
}
void main (void) // 主函数
{
uchar i,j;
while (1) // 死循环
{
j=0x01; // j初始化为0x01,左移初始值
for(i=0;i<8;i++) // for循环语句,完成8个循环
{
P1= ~ j; // 对变量j 中的值按位取反后,从P1口输出
delay02s( ); // 延时0.2s
j= j<<1; // 左移1位
}
j=0x80; // 设置右移初始值j为0x80
for (i=0;i<8;i++)
{
P1= ~ j;
delay02s( );
j= j>>1; // 右移1位
}
}
}
E. 单片机 左移函数是怎么用的
左循环本征函数:
函数原型:unsigned char _crol_(unsigned char a,unsigned char n);
单片机左移函数用法:
例如,P2=0xff; P2=_crol_(P2,1);//语法是对的,但这是没意义的,因为执行程序后P2还是原值0xff
P2=0xfe; P2=_crol_(P2,1);//执行程序后P2=0xfd
F. 单片机 移位操作 右移 C语言
C51系列单片机中_crol_指令是循环左移函数,_cror_是循环右移函数,这是51中特有的指令,别的类型单片机就不能使用了。易于程序的移植和通用性考虑个人比较推荐用<<
左移,
右移>>这两个C中的移位符号。
G. C语言51单片机左移函数的问题
m==0xfe你这个是什么意思,不对吧
m<<=1这个不对
m<<1左移不是循环移位,左移后最右边可能是补零的