单片机C51输入输出接口

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

电子信息工程系实验报告

课程名称:单片机原理与接口

实验项目名称:实验1实验系统编程应用 实验时间:2011-9-29

班级: 电信091 姓名:陈俊伟 学号:910706123

一、实 验 目 的:

熟悉使用keil 仿真软件编写C51单片机程序的编写过程以及调试运行步骤。熟悉在C51中各种类型

变量的定义方法,以及各种常用程序结构的编写方法。学习编写基本的单片机程序。

二、实 验 设 备 与 器 件:

微机,KEIL C51单片机仿真调试软件。

三、实 验 原 理:

1、C51变量的定义:

C51定义的任何数据类型必须以一定的存储类型定位,在8051的某一存储区中。说明的一般格式:

<数据类型> <存储类型> 变量名

C51对单片机的不同存储区域定义了不同的存储类型,它们的关系表1:

表1 C51的变量存储类型

全部的特殊功能寄存器和其中可以单独使用的大部分位都已经在REG51.H 这个头文件中定义了。 除

了P0 P1 P2 P3 中的每个位,若要使用这些位则 sbit P10=P1^0。

3、绝对地址引用法:

利用绝对地址访问头文件absacc.h 可对不同的存储区的存储单元进行访问。该头文件的函数有:

CBYTE (访问code 区字符型) CWORD (访问code 区int 型)

DBYTE (访问data 区字符型) DWODE (访问data 区int 型)

XBYTE (访问xdata 或I/O 区字符型) XWODE (访问xdata 区int 型)

4、指针定义的方法和含义:

指针变量说明格式中的[ ]为可选项 ,则指针定义为通用型,指针变量则存放在默认存贮区或者在data

区。 * 号不可少,它表示变量为指针变量。

四、实 验 内 容 及 结 果:

1、19805×24503的编程:

打开KEIL 软件,点击project 创建新的项目(图1),选择单片机类型为C51,再点击FILE 新建文件,

将该文件添加到工程中(图2)

图1 创建新项目图2添加文件到工程打开Options的Output有三个存储器模式,分别为Small,Compact,Large。(图3)

在程序窗口输入程序,进行调试后运行。然后打开存储器的观察窗口(图4)进行观察。

图3 存储器模式图4 存储器观察窗口

点击单步运行分别观察三个变量的值如(图5)(图6)(图7):

图5 19805的数值图图6 24503的数值图

图7 两数乘积结果数值图图8 调试结果数值图

2、定义变量a,b,c 其中a为内部RAM的可位寻址区的字符变量;b为外部数据存储区浮点型变量;c 为一个位变量;写出他们的完整定义。

定义为:Char bdata a; float xdata b; bit c;

3、XWORD[0x0000]=0x9988; 编写程序运行结果如图8。

XWORD[0x0123]=0x9988;表示将9988H送入到外部数据存储的0123号和0124号单元。

五、实验心得:

熟悉地使用Keil仿真软件编写C51单片机程序的编写过程以及调试运行步骤。熟悉在C51中各类变量的定义方法,方法。学习编写基本的单片机程序。

相关文档
最新文档