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

河南理工大学单片机实验报告

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

单 片 机 验 收 报 告

姓名:学号:班级:学院:

实验一 流水灯实验

一、 实验目的

1) 简单 I/O 引脚的输出 2) 掌握软件延时编程方法 3) 简单按键输入捕获判断

二、 实验实现的功能

1) 开机是点亮 12 发光二极管,闪烁三下 2) 按照顺时针循环依次点亮发光二极管

3) 通过按键将发光二极管的显示改为顺逆时针方式

三、 系统硬件设计

四、 系统软件设计

/*

*******程序名:流水灯实验***********

*******程序功能:按键控制流水灯的顺逆旋转****** *******完成时间: 2015年12月29号下午*** *******完成人 :电科1303班 何海坤 */

/****头文件,注:如果没有添加stc10.h文件到keil安装路径里,则需要添加,否则请将头文件改成reg51.h*****/

#include

/****宏定义****/

#define uchar unsigned char #define uint unsigned int /***定义按键端口***/ sbit key = P3^6; sbit keyl = P0^5;

/****led控制数组******/ uchar table[] =

{0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xfb,0xf7,0xef,0xdf};

//当引脚电平为时,引脚对应的led亮

/******子函数定义*******/

void delay1ms(); //延时函数1ms时间 void delaynms(uint); //延时函数自定义毫秒数 void delay(); //定义延时函数100ms时间

void led_init(); //初始化led全体同时亮灭三次

/**主函数**/ void main() { uchar m = 0; uchar k = 0; keyl = 0 ; led_init(); //led初始化为全体led同时闪灭三次 while(1) { if(!key) { delaynms(5); if(!key) { m++; if(m == 2) { m = 0; } while(!key); } } if(m == 0) { k++; if(k == 13)k=1; } else k--; if(k == 0)k = 12; switch(k-1) { case 0 : P2 = table[0]; P3 = 0xff; delay(); break; case 1 : P2 = table[1];

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