菜鸟请问各路高手???急!!!!!!自学难
本人刚学C51,软件编译用的是Keil,作为菜鸟一族,有几个难以解决的问题,希望各位高手能帮小弟一把,本人将不甚感激!!!!
1)定义头文件*.h时.
如:定义LCD1602.h,如下:
#ifndef __LCD1602_H__
#define __LCD1602_H__
......
......
#endif
其中第二句话( #define __LCD1602_H__)是什么意思?为什么要这样定义?????打开C教材上面说关于define的语法都是:#define XXXX XXXX.
2)关于C51定时.
本人比较倾向C语言,但在程序中较为常见的定时之一是用C语言循环语句来编的,如:
void delayXms(unsigned int x) //延迟X毫秒函数
{
unsigned int i,j;
for(i=0;i <x;i++)
for(j=0;j <130;j++)
;
}
为什么用x*130就可以得到延时x毫秒???
又如:void delay_1us(void) //延时1us函数
{
unsigned char i;
for(i=0;i <1;i++)
;
}
又为什么这样可以得到延时1us????利用C循环来定时是怎么计算的?C语句执行也和汇编一样需要时间的吗????
发表时间:2007年5月17日22:28:42