标题:
单片机led从左到右,从右到左亮灭程序编译错误
[打印本页]
作者:
wqd0829
时间:
2019-9-12 08:59
标题:
单片机led从左到右,从右到左亮灭程序编译错误
点亮一小灯 然后从左到右,从右到左亮灭,显示SXLSD.C(20): error C141: syntax error near 'ADDR3',望大佬们告知如何解决
单片机源程序如下:#include <reg52.h>
sbit LED = P0^0;
sbit ADDR0 = P1^0;
sbit ADDR1 = P1^1;
sbit ADDR2 = P1^2;
sbit ADDR3 = P1^3;
sbit ENLED = P1^4;
void main()
{
unsigned int i = 0;
unsigned char cnt = 0;
unsigned char sec = 0;
unsigned char dir = 0;
unsigned char shift = 0x01
ADDR3 = 1;
ENLED = 0;
ADDR2 = 1;
ADDR1 = 1;
ADDR0 = 0;
TMOD = 0x01;
TH0 = 0xB8;
TL0 = 0x00;
TR0 = 1;
while (1)
{
if (TF0 == 1)
{
TF0 = 0;
TH0 = 0xB8;
TL0 = 0x00;
cnt++;
if(cnt >=100)
{
cnt = 0;
LED = ~LED;
}
{
P0 = ~shift;
for(i=0; i<30000; i++);
if (dir == 0)
{
shift = shift << 1;
if ( shift == 0x80)
{
dir = 1;
}
}
else
{
shift = shift >> 1;
if (shift == 0x01)
{
dir = 0;
}
}
}
}
}
}
作者:
trulydream
时间:
2019-9-12 09:37
main函数第5行,少分号!!!
作者:
tyrl800
时间:
2019-9-12 10:12
unsigned char shift = 0x01 后面少了分号
作者:
佛云
时间:
2019-9-12 10:35
都已经提示“addr3”附近出现语法错误,.......
作者:
chaid
时间:
2019-9-12 18:53
unsigned char shift = 0x01;
另外注意一下,有一对大括号多余。
作者:
cphnkj188
时间:
2019-9-14 10:52
实践证明:细节决定成败!
作者:
那个谁和谁
时间:
2019-9-16 16:16
上面的一行少了个;
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1