标题: [求助] 简单的C延时程序 [打印本页]
作者: weipeng_apple 时间: 2009-12-8 08:47
标题: [求助] 简单的C延时程序
刚刚入门C51,大家帮帮看下下面这个相当菜的程序,指点下哪里有问题,拜谢了!
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uint a,b;
void delay(uint,uint)//函数声明
void main()
{
uchar temp;
uint i,j,x,y;
temp=0xfe;
P0=temp;
for(i=8;i>0;i--)
{x=temp<<i;
y=temp>>8-i;
P0=x|y;
delay(200,200);//将实参200,200赋值给下面子函数形参a,b
}
}
void delay(uint a,b)
{
for(;a>0;a--)
for(;b>0;b--);//这里不知道写对没有?
}
作者: xiaoxiaoxiao 时间: 2009-12-20 13:52
#include
#define uchar unsigned char
#define uint unsigned int
uint a,b;
void delay(uint a,b);//函数声明
void main()
{
uchar temp;
uint i,x,y;
temp=0xfe;
P0=temp;
for(i=8;i>0;i--)
{x=temp<>8-i;
P0=x|y;
delay(200,200);//将实参200,200赋值给下面子函数形参a,b
}
}
void delay(uint a,b)
{
for(;a>0;a--)
for(;b>0;b--);//这里不知道写对没有?
}
这个我修改了一下,编译是没有错了,不知道硬件会不会有问题
作者: xiaoxiaoxiao 时间: 2009-12-20 14:16
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uint a,b;
void delay(uint a,b);//函数声明
void main()
{
uchar temp;
uint i,x,y;
temp=0xfe;
P0=temp;
for(i=8;i>0;i--)
{x=temp<<i;
y=temp>>8-i;
P0=x|y;
delay(200,200);//将实参200,200赋值给下面子函数形参a,b
}
}
void delay(uint a,b)
{
for(;a>0;a--)
for(;b>0;b--);//这里不知道写对没有?
}
作者: jwj527 时间: 2010-2-4 14:33
用实验板试试不就行了!
作者: h10234 时间: 2010-4-20 17:01
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uint a,b;
void delay(uint a,uint b)
{
for(;a>0;a--)
for(;b>0;b--);//这里不知道写对没有?
}
void main()
{
uchar temp;
uint i,x,y;
temp=0xfe;
P0=temp;
for(i=8;i>0;i--)
{x=temp<<i;
y=temp>>8-i;
P0=x|y;
delay(200,200);//将实参200,200赋值给下面子函数形参a,b
}
}
作者: h10234 时间: 2010-4-20 17:04
大哥,你好歹编译下试试,编译都没通过啊
作者: huhui5008 时间: 2010-6-16 02:02
实验!!!!!
作者: 数字媒体处理器 时间: 2010-6-25 16:01
无需定义全局变量a,b
函数声明那里要加个“;”
main函数里定义的j没用到,为多余变量
其它没什么问题
另外有一问题,把temp赋给P0作为初值,有什么作用?
[此贴子已经被作者于2010-6-25 16:11:21编辑过]
作者: brantyou 时间: 2010-6-27 11:24
P0口是IO口,这里应该是连接着LED灯,给P0口一个值就是控制LED灯的亮灭
作者: 示波器 时间: 2010-6-30 22:33
嗯,楼上的回答让我学到东西了,谢啦哈~
[此贴子已经被作者于2010-6-30 22:34:28编辑过]
作者: 天昊奇缘 时间: 2012-3-31 17:13
延时写的这么多啊!用for(i=0;i<某个数;i++)
{}
空操作不就可以了,还搞这么多啊!如果是要延时的准确性,那就用中断吧!我觉得那样比较好
欢迎光临 (http://www.51hei.com/bbs/) |
Powered by Discuz! X3.1 |