每按下一次开关,计数值加1,通过STC89C52RC单片机的P1端口的P1.0到P1.3(就是led的亮灭)显示二进制数
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/07/09 09:12:21
每按下一次开关,计数值加1,通过STC89C52RC单片机的P1端口的P1.0到P1.3(就是led的亮灭)显示二进制数值.
这是我的c代码.出来的结果转换成LED的亮灭完全没有规律.不是按照顺序(1-15)来的.
#include
sbit led_0=P1^0;
sbit led_1=P1^1;
sbit led_2=P1^2;
sbit led_3=P1^3;
sbit key=P3^0;
int n,s1,s2,s3,s4;
void delay10ms(void)
{
\x05unsigned char i,j;
\x05for(i=20;i>0;i--)
\x05for(j=248;j>0;j--);
}
void main()
{
\x05int m=0;
\x05while(1)
\x05{
\x05\x05if(key==0)
\x05\x05{
\x05\x05\x05delay10ms();
\x05\x05\x05if(key==0)
\x05\x05\x05{
\x05\x05\x05m++;
\x05\x05\x05n=m;
\x05\x05\x05s1=n%2;
\x05\x05\x05n=n/2;
\x05\x05\x05s2=n%2;
\x05\x05\x05n=n/2;
\x05\x05\x05s3=n%2;
\x05\x05\x05n=n/2;
\x05\x05\x05s4=n%2;
\x05\x05\x05\x05led_0=s1;
\x05\x05\x05\x05led_1=s2;
\x05\x05\x05\x05led_2=s3;
\x05\x05\x05\x05led_3=s4;
\x05\x05\x05}
\x05\x05}
\x05}
}
这是我的c代码.出来的结果转换成LED的亮灭完全没有规律.不是按照顺序(1-15)来的.
#include
sbit led_0=P1^0;
sbit led_1=P1^1;
sbit led_2=P1^2;
sbit led_3=P1^3;
sbit key=P3^0;
int n,s1,s2,s3,s4;
void delay10ms(void)
{
\x05unsigned char i,j;
\x05for(i=20;i>0;i--)
\x05for(j=248;j>0;j--);
}
void main()
{
\x05int m=0;
\x05while(1)
\x05{
\x05\x05if(key==0)
\x05\x05{
\x05\x05\x05delay10ms();
\x05\x05\x05if(key==0)
\x05\x05\x05{
\x05\x05\x05m++;
\x05\x05\x05n=m;
\x05\x05\x05s1=n%2;
\x05\x05\x05n=n/2;
\x05\x05\x05s2=n%2;
\x05\x05\x05n=n/2;
\x05\x05\x05s3=n%2;
\x05\x05\x05n=n/2;
\x05\x05\x05s4=n%2;
\x05\x05\x05\x05led_0=s1;
\x05\x05\x05\x05led_1=s2;
\x05\x05\x05\x05led_2=s3;
\x05\x05\x05\x05led_3=s4;
\x05\x05\x05}
\x05\x05}
\x05}
}
#include
sbit key=P3^0;
unsigned char dis=0;
void delay10ms(void)
{
unsigned char i,j;
for(i=20;i>0;i--)
for(j=248;j>0;j--);
}
void main()
{
while(1)
{
if(key==0)
{
delay10ms();
if(key==0)
{
while(key==0);
dis++;
dis%=16;
P1=dis;
}
}
}
}
sbit key=P3^0;
unsigned char dis=0;
void delay10ms(void)
{
unsigned char i,j;
for(i=20;i>0;i--)
for(j=248;j>0;j--);
}
void main()
{
while(1)
{
if(key==0)
{
delay10ms();
if(key==0)
{
while(key==0);
dis++;
dis%=16;
P1=dis;
}
}
}
}
单片机的p0,p1,p2,p3端口有什么作用?
AT89c2051的P1口接LED时,P1.0和P1.1应该接多大的电阻?
MOV P1,单片机的,还有个MOV A,P1
单片机中地址的分配sbit P1=P1^0,那个P1^0中^0什么意思,有什么作用
1、利用8XX51单片机的T0计数,每计10个脉冲,P1.0变反一次,用查询和中断两种方式编程.
单片机p1口和p0口之间加发光二极管,p1=1,p0=0,能使led发光么?如何才能使其发光,我想做矩阵led!
大学C语言 单片机程序设计 计数器设计大学C语言效果要求:用四个LED表示二进制计数值,开关A每开关一次,计数器加1,并
用89C51单片机的P0输入控制P1输出,按一下P0起动P1输出再按一下P0停止P1输出.
51单片机控制12个led灯,分别接8个灯P0口,4个灯P1的前4个口,程序怎么写能实现从P0口到P1口的流水灯?
关于51单片机P1管脚接9013的问题
单片机p1口接上拉电阻的问题
是不是所有的单片机P1口都要接上拉电阻