单片机程序求助APPHONGWAIXIAN.C(22): error C141: syntax error near 'void'

单片机程序求助APPHONGWAIXIAN.C(22): error C141: syntax error near 'void',第1张

你可真高!!!

#include <reg51.h>

#define foc 12

sbit shu1=P3^0

sbit shu2=P3^1

unsigned int i

unsigned int num

void main(void)

{

i=0

TMOD = 0x02

TH0 = 256 -250 * (12 / foc)

TL0 = 256 -250 * (12 / foc)

TR0 = 1

EA = 1

ET0 =1

while(1)

{

}

num =60

void Timer0(void) interrupt 1//中断函数居然定义到主函数里????????

{

i++

if(i==4000)

{ num=num-1

i=0

}

{

void delay(unsigned int i)

{

while(i--)

{

unsigned int t

t=150

while(t--)

}

}

{//这个和谁配对???????????????????????????

unsigned char wei[4]={0xf7,0xfb,0xfd,0xfe}

unsigned char seg[16]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e}

unsigned char i,j,ge,shi,bai,qian

while(1)//这啥意思?????????????????????????

{

ge=num%10

shi=num/10%10

bai=num/100%10

qian=num/1000

for(i=0i<100i++)

{P1 = wei[0]

P0 = seg[qian]

delay(1)

P1 = wei[1]

P0 = seg[bai]

delay(1)

P1 = wei[2]

P0 = seg[shi]

delay(1)

P1 = wei[3]

P0 = seg[ge]

delay(1)

}

}

}

}

}

}//这么多你想干啥??????????????????????

while((uchar = getchar())!= '\n')

{

...

if(!(number++ % 3)) //这个是输入一个字符 number就+1么?

{ //它是怎么循环的呢?

...

}

}

把printf 打印相关可以去掉不看。整个代码清晰多了。

while((uchar = getchar())!= '\n') 这是程序退出条件,输入回车就退出该程序。

if(!(number++ % 3))

number++ 的意思是,程序走完这一次流程后+1

假设你初始的number=0 当你输入"a"

则第一次为 0%3 = 0 ----->因为 !0 为真 所以执行打印,printf("\n")--->打印执行完后,number++执行,此时number = 1 然后---->

while((uchar = getchar())!= '\n') 你输入b

1%3 = 0 --->因为 !0 为真 所以执行打印,print("\n") --->打印执行完后,number++执行,此时number = 2 然后 ---->

while((uchar = getchar())!= '\n') 你输入c

----->2%3 = 0 --->因为 !0 为真 所以执行打印,print("\n") --->打印执行完后,number++执行,此时number = 3 然后 ---->

while((uchar = getchar())!= '\n') 你输入d

----->3%3 = 1 --->因为 !1 为假 所以不执行打印,print("\n") ---> number++执行,此时number = 4 然后 ---->

while((uchar = getchar())!= '\n') 你输入e

----->4%3 = 1 --->因为 !1 为假 所以不执行打印,print("\n") ---> number++执行,此时number =5 然后 ---->

while((uchar = getchar())!= '\n') 你输入f

----->5%3 =2 --->因为 !2 为假 所以不执行打印,print("\n") ---> number++执行,此时number =6 然后 ---->

你输入 回车 程序退出。

以上就是整个流程。% 是取模计算符,简单理解就是取余数。明白了把?


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8113346.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-13
下一篇2023-04-13

发表评论

登录后才能评论

评论列表(0条)

    保存