单片机复习提纲1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机复习提纲
一、项目准备篇(一)C51语言及语法
1. 数据类型
(1)常用数据类型名称、占用字节数、取值范围。如:char型 1字节 -128~+127
int型 2字节 -32768~+32767等。
(2)sbit类型和bit类型的区别:前者可以定义特殊功能寄存器中的位,后者用于定义51单片机内部位地址空间中的位。如:
sbit P1_1=P1^1;
bit flag;
2. 变量定义和作用域
(1)变量必须先定义后使用,变量的定义格式;(2)变量的作用域:
全局变量:在函数外部定义,函数可以用全局变量传递多个数据结果;
函数中用return只能传递一个数据结果。
局部变量:在函数内部定义,函数外部不可见。(3)关键字的概念
例:下列标识符中哪些是C51编程时使用的关键字?
A、integer
B、define
C、break
D、sbit
3. C51语言运算符
要求对常用运算能熟练掌握。
例题:
(1)a=0xff,b=0x07, a | b = ?
2)i=1234, k=i%10, k=?
(3)设x=0x81,x=x<<2,x=0x04
(4)a=0x77,b=0x99, a & b =0x11
(5)P1=~0x11,P1= 0xEE
(6)a1=0xff,y = !a1, y= 1
(7)tmp=0x15,tmp=tmp>>4,tmp= 0x01
(8)x=0x80,y=0x7f, 则x && y = 1
(9)a=0x1f,b=0x01,c = a + a||b + b%10= ?
c = a + (a||b) + (b%10)= 0x30
(10)i=0x21, y = --i ,y =
i =0x21;i--;y=i;
(11)i=0x21,y=i--,y=?
i =0x21;y=i; i--;
重点关注:/,%,++,--(++,--放在变量前与后之间的区别),按位运算,以及关系和逻辑运算
中真/假的概念。
4. C51语句和流程控制
(1) for(;;)语句合法吗?合法
for(;;){;}
(2)if(x=66) {P0=0x12;}表达的含义是什么?
/P0 被无条件赋值 0x12
/ if(x == 66) {P0=0x12;}
// 在x等于66时,P0被赋值0x12 (3)在C51语言中,循环语句结束的条件是什么?
// 循环条件不成立
(4)形如while(TF0){}语句的书写正确吗?
正确
(5)分析下面程序的输出结果。
main(){
int x=100,a=10,b=20,ok1=5,ok2=0;
if(a
if(b!=15)
if(!ok1) x=1;
else if (ok2) x=10;
x= -1;
pr inf(“%d\n”, x );//输出打印x的值}
等效:
main(){
int x=100,a=10,b=20,ok1=5,ok2=0;
if(a
if(b!=15) {
if(!ok1) { x=1;}
else if (ok2) { x=10; }
}
}
x= -1;
p rinf(“%d\n”, x );//输出打印x的值}
5. 函数
(1)函数与变量类似,必须先定义后使用,当被
调用函数定义在调用函数之后时,必须进行函数声明;(本书例程中主函数均放置在最后,避免了函数声明)(2)函数类型的意义;函数的返回值。
int add();
int sum;
sum = add();
int add(){
….
return (int)1;
}
(3)主函数。
例题:
(1)C51源程序总是从哪里开始执行的?Main 函数
(2)若一个函数的返回类型为void,则该函数有返回值吗?无返回值
(3)所有定义在主函数之后的函数需要进行声明吗?是
(4)C51语言中,函数调用结束后通过return语句传递返回值可以有几个?只能一个
(5)在用C51语言编写单片机应用程序时,可以用多个main()函数来实现不同的功能吗?不能
6. 数组和头文件
(1)C51数组的下标是从0开始的。
(2)包含头文件的格式有2种,如:#include
(3)支持写入单片机或仿真程序调试的目标程序的文件格式是xx.hex。
二、项目准备篇(二)MCS-51单片机硬件结构
1. 单片机结构
(1)8051单片机CPU是几位的?8位
(2)8051单片机共有几个并口?每个并口有几位?P0(8)、P1(8)、P2(8)、P3(8)(3)CPU主要包括运算器和存储器两部分。
2. 存储器
(1)半导体存储器分成RAM(数据存储器)和ROM (程序存储器)两大类。其中前者具有易失性,常用于存储临时性数据。
(2)从逻辑空间上看,MCS-51单片机存在几个独立的存储器空间?
片内外统一编址的程序存储器,空间大小64kB 片内数据存储器,空间大小256B
片外数据存储器,空间大小64kB