-
万年历
1.
在编译时出现
redefinition
英音:
['ri:defi'ni
?
?
n]
,表明重复
#include
通用
89C51
p>
头文件
定义了,如:
sbit LED = P1 ^ 7;
//
定义闪烁
LED
sbit
LED2 = P1 ^ 6;
void
DELAY_MS (unsigned int a){
unsigned int i;
while( a-- != 0){
for(i = 0; i < 600; i++);
}
}
/
**************************************************
**************************************
*
****/
sbit LED1 = P1 ^ 7;
sbit
LED2 = P1 ^ 6;
/***********************
**************************************************
***************
*****/
void
main (void){
while(1){
unsigned char a;
for(a=1;a<20;a++){
LED1 = 0;
LED2 = 1;
DELAY_MS(a);
LED1 = 1;
LED2 = 0;
DELAY_MS(20-a);
}
for(a=1;a<20;a++){
LED1 = 1;
LED2 = 0;
DELAY_MS(a);
LED1 = 0;
LED2 = 1;
DELAY_MS(20-a);}
}
}
我来帮他解答
2011-1-22
22:27
满意回答
sbit
LED = P1 ^ 7; //
定义闪烁
LED
sbit LED2 = P1 ^
6;
----这里定义了一次。
void DELAY_MS (unsigned int a){
……
/*************
**************************************************
*************************
*****/
sbit LED1 = P1 ^ 7;
sbit
LED2 = P1 ^ 6;
//
在这里,
redefinition
,重新定义了。删除这行即可
/**
**************************************************
************************************
***
**/
2.
在编译时出现
unpri
ntable
[,
?
n'print<
/p>
?
bl]
不宜
印出的
character
性格,品质
0xBB skipped
[skipt]
adj.
跳跃的
,意思程序中出现了程序本身不该有的。如:
void main()
{
wela=1;
P0=0xfe;
wela=0;
P3=0xff;
while(1)
{
if(key1==0)
{
{
delay(10);
、、
if(key1==0)
{
d1=0;
num++;
if(num==10)
num=0;
}
if(key1==0)
delay(10);
、、
if(key1==0)
{
}
d1=0;
num++;
if(num==10)
num=0;
第一个
delay(10);
多了
“
、、
”
这个。。。。
下次注意点。
ipt on non-array or too many dimensions
是什么意思
?
数组维数太大
P0=smgdu[disp[i]];
uchar
code
smgdu[]={0x3f,0x06,0x4f,0x66,0x77,
0x7c,0x39,0x5e,0x79,0x71,0x00};
uchar
disp[8];
4.
31
Х
8R
AM
的含义:
31
个
< br>8
位
RAM
,
< br>RAM
(
random access memory<
/p>
)
随机存储器。
存储单元的内容可按需随
意取出或存入,
且存取的速度与存储单元
的位置无关的存储器。
这种存储器在断电时将丢失其存储内容,
故主要用于存储
短时间使用的程序。
5.
< br>备用电池可用
1
微法以上的超容量电容来代替
6.
CES.C(13): warning
C276: constant in condition expression
什么意
思?
答:
if(a=1)
类似这种语句出现的警告
只要把它改
成:
if
(
a==1
< br>)即可。
7.
TMOD
TMOD
:
定
时
器
/
计
数
器
模式
控
制
寄
存
器
(
TIMER/COUNTER
MODE
CONTROL
REGISTER
)
定时器
/
计
数器模式控制寄存器
TMOD
是一个逐位定义的
8
位寄存器,
但只
能使用字节
寻址,其字节地址为
89H
。
其格式为:
TMOD
结构图
===
==================================================
======
======================
其中低四位定义定时器
/
计数器
T0,
高四位定
义定时器
/
计数器
T1
,各位的说
明:
Ⅰ,
GATE
——
门控制。
●GATE=1
时,由外部中断引脚
INT0
、
INT1
< br>来启动定时器
T0
、
T1
。
当
INT0
引脚为高电平时
TR0
置位,启动定时器
T0
;
p>
当
INT1
引脚为高电平时
TR1
置位,启动定时器
T1
。
●GATE=0
< br>时,仅由
TR0,TR1
置位分别启动定时器
T0
、
T1
。
Ⅱ,
C/T
——
功能选择位
C/T=0
时为定时功能,
C/T=1
时为计数功能。
< br>
置位时选择计数功能,清零时选择定时功能。
Ⅲ,
M0
、
M1
——
方
式选择功能
由于有
2
位,因此有
4
种工作方式
8. TH0
属于单片机特殊功能寄存器里边的一个,具体的一般是用来设置定时器
0
高八位的时间初
值
-51
单片机中有两个定时器
/
计数器模式,
他们是
T1
和
T0
10.
启动定时器的顺序:
1.
设置
TMOD
-
-
-
-
-
-
-
-
-
上一篇:(完整版)初中英语翻译题及答案二
下一篇:嵌入式软件工程师面试题