单片机串行通信实验报告(实验要求、原理、仿真图和例程) 下载本文

内容发布更新时间 : 2024/5/29 19:36:37星期一 下面是文章的全部内容请认真阅读。

《嵌入式系统原理与实验》实验指导

实验三 调度器设计基础

一、 实验目的和要求

1. 熟练使用Keil C51 IDE集成开发环境,熟练使用Proteus软件。 2. 掌握Keil与Proteus的联调技巧。 3. 掌握串行通信在单片机系统中的使用。 4. 掌握调度器设计的基础知识:函数指针。

二、 实验设备 1. PC机

一套 一套 一套

2. Keil C51开发系统 3. Proteus 仿真系统

三、 实验内容

1. 甲机通过串口控制乙机LED闪烁 (1) 要求

a. 甲单片机的K1按键可通过串口分别控制乙单片机的LED1闪烁,LED2闪烁,LED1和LED2

同时闪烁,关闭所有的LED。

b. 两片8051的串口都工作在模式1,甲机对乙机完成以下4项控制。

i. 甲机发送“A”,控制乙机LED1闪烁。 ii. 甲机发送“B”,控制乙机LED2闪烁。 iii. 甲机发送“C”,控制乙机LED1,LED2闪烁。 iv. 甲机发送“C”,控制乙机LED1,LED2停止闪烁。

c. 甲机负责发送和停止控制命令,乙机负责接收控制命令并完成控制LED的动作。两机的程序

要分别编写。

d. 两个单片机都工作在串口模式1下,程序要先进行初始化,具体步骤如下:

i. 设置串口模式(SCON)

ii. 设置定时器1的工作模式(TMOD) iii. 计算定时器1的初值 iv. 启动定时器

v. 如果串口工作在中断方式,还必须设置IE和ES,并编写中断服务程序。

(2) 电路原理图

Figure 1 甲机通过串口控制乙机LED闪烁的原理图

(3) 程序设计提示

a. 模式1下波特率由定时器控制,波特率计算公式参考:

b. 可以不用使用中断方式,使用查询方式实现发送与接收,通过查询TI和RI标志位完成。

2. 单片机与PC串口通讯及函数指针的使用 (1) 要求:

a. 编写用单片机求取整数平方的函数。 b. 单片机把计算结果向PC机发送字符串。 c. PC机接收计算结果并显示出来。

d. 可以调用Keil C51 stdio.h 中的printf来实现字符串的发送。 e. 单片机的数码港显示发送的次数,每9次清零。

.. ..

(2) 参考电路原理图

Figure 2 单片机与PC串口通讯及函数指针的使用原理图

(3) 程序设计要求

a. 编写求平方函数时,采用函数指针来编写。 b. 参考头文件模式,完善设计项目文件结构。

四、 思考题

1. 如果实验1如何使用实验2的成果来改写?

2. 请结合实例说明什么是函数指针及如何使用函数指针。

五、 实验报告要求

1. 简述编写C程序,并联合调试程序的过程。 2. 解释编写的实验程序的代码,描述实验结果。 3. 解答思考题。 4. 简述实验的心得。

.. ..