第一范文网 - 专业文章范例文档资料分享平台

单片机原理及应用实验指导书 - 图文 (4)

来源:用户分享 时间:2020-06-08 本文由雾隐青山林 分享 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

实验二 Keil uVision4程序设计1

一.实验目的

掌握汇编语言程序调试步骤与方法 二.实验设备及器件

计算机 一台 单片机实验箱一台 一台 三.实验内容

1、用汇编语言完成闪烁灯程序,要求闪烁间隔0.5秒; 2、利用单片机实验箱演示结果。 四.实验要求

一人一组,独立完成实验的操作步骤,按教学要求完成实验内容。 五.实验步骤

1、利用所学的汇编指令,将参考程序中的空格内容补充完整,实现所要求的功能; 2、利用Keil软件,对所编写的程序进行调试,编译无误后,生成后缀为.HEX文件; 3、利用STC-ISP烧录软件,将生成的后缀为.HEX的文件,烧录到单片机中,观察是否实现闪烁灯功能。 六.实验原理图:

LED串了470 欧的电阻。

当P0口某位为高电平时,LED灭 当P0口某位为低电平时,LED亮

实验时,我们可选择让P0口外接的某一个发光二极管闪烁。

14

七.实验参考程序:

ORG 0000H AJMP MAIN ORG 0030H MAIN:

MOV P0, #0 ;P0口外接发光二极管全亮 LOOP: ;p0.0输出取反 LCALL DELAY;调用延时子程序 SJMP LOOP ;延时子程序 DELAY:

MOV R2, # DL: MOV R3, # DL1: MOV R4, # DL2: DJNZ R4, DJNZ R3, RET END

八.实验思考题

1、 若想要一开始时,发光二极管全灭,程序该如何修改? 2、 如何修改延时子程序,使延时时间更精确一些?

15

实验三 Keil uVision4程序设计2

一.实验目的

掌握C语言程序调试步骤与方法 二.实验设备及器件

计算机 一台 单片机实验箱一台 一台

1、用C语言完成闪烁灯程序,要求闪烁间隔0.5秒; 2、利用单片机实验箱演示结果。 四.实验要求

一人一组,独立完成实验的操作步骤,按教学要求完成实验内容。 五.实验步骤

1、利用所学的汇编指令,将参考程序中的空格内容补充完整,实现所要求的功能; 2、利用Keil软件,对所编写的程序进行调试,编译无误后,生成后缀为.HEX文件; 3、利用STC-ISP烧录软件,将生成的后缀为.HEX的文件,烧录到单片机中,观察是否实现闪烁灯功能。 六.实验原理图:

LED串了470 欧的电阻。

当P0口某位为高电平时,LED灭 当P0口某位为低电平时,LED亮

实验时,我们可选择让P0口外接的某一个发光二极管闪烁。

16

七.实验参考程序:

/***********************************************************************/

#include //头文件

#define uchar unsigned char //这里用\代替\,\用来定义无符号字符型数。

#define uint unsigned int //\用来定义无符号整型数。

sbit Show_LED = P0^0; //用来声明P0.0口为程序所要控制的端口,\是KEIL专门用来声明某位IO口

/********************************************************************

* 名称 : Delay()

* 功能 : 延时,延时时间为 1ms * del。这是通过软件延时,有一定误差。 * 输入 : del * 输出 : 无

***********************************************************************/

void Delay(uint del) {

uint i,j;

for(i=0; i< ; i++)

for(j=0; j< ; j++);//1ms }

/********************************************************************

* 名称 : Main()

* 功能 : 实现灯的闪烁 * 输入 : 无 * 输出 : 无

***********************************************************************/

void Main(void) {

; //用于关闭发光二极管 while(1) {

17

; //发光二极管亮

Delay( ); //Delay(del)中的数为延时的时间参数,延时时间为 10ms * del.

; // 发光二极管灭 Delay( ); } }

八.实验思考题

1、 如果把延时间改得很短,会出现什么现象?

2、 如何控制P0口外接的八个LED按一定的花样闪烁,如每隔一位亮, 再高4位亮、低4位灭,然后再控制LED两次全亮、全灭?

18

搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新IT计算机单片机原理及应用实验指导书 - 图文 (4)全文阅读和word下载服务。

单片机原理及应用实验指导书 - 图文 (4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/wenku/1076063.html(转载请注明文章来源)
热门推荐
Copyright © 2018-2022 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top