|
為什么會出現(xiàn)如下情況?我是個單片機初學(xué)者,剛學(xué)習(xí)編了這個流水燈個程序,為什么mian程序中的n在for循環(huán)中n<10,而在if(n==9)才能正常使8只發(fā)光二極管成為流水運動,若換成n<9與if(n==8)或者其他數(shù)值都不正常,請高手幫忙解釋一下。
電路原理圖如下:
lianxitu.png (22.57 KB, 下載次數(shù): 62)
下載附件
2018-9-18 22:33 上傳
單片機源程序如下:
- #include<reg51.h>
- #define uint unsigned int
- #define uchar unsigned char
- void delay(uint x)
- {
- uchar j;
- uint y;
- for(x; x>0; x--)
- for(y=500; y>0; y--);
- }
- void main()
- {
- uchar n;
- P1 = 0xff;
- while(1)
- {
- for(n; n<10; n++)
- {
- delay(500);
- P1 = (P1<<1);
- if( n == 9)
- {
- P1 = 0xff;
- n =0;
- }
- }
- }
- }
復(fù)制代碼
|
|