单片机炫彩灯实训报告_单片机跑马灯实验报告
学号 14142200277序号 19
单片机原理与接口技术
实验报告 实验项目序号
一
实验项目名称
跑马灯实验
姓
名
卢志雄
专 业 电子信息工程
班
级
电信14-2BF
完成时间
2016年4月2日
一、实验内容
实验内容为 3 项,其中第 1、2项必做。
1、基本得流水灯。
根据图 1 电路,编写一段程序,使 8 个发光二极管 D1、D2、D3、D4、D5、D6、D7、D8 顺序(正序)点亮:先点亮 D1,再点亮 D2、D3……D8、D1……,循环点亮。每点亮一个 LED,采用软件延时一段时间。
2、简单键控得流水灯。
不按键,按正序点亮流水灯;按下K1不松手,按倒序点亮流水灯,即先点亮D8,
再顺序点亮D7、D6……D1、D8……。松手后,又按正序点亮流水灯。
3、键控得流水灯。
上电,不点亮 LED,按一下 K1键,按正序点亮流水灯。按一下 K2 键,按倒序点亮流水灯,按一下 K3 键,全部关闭LED。
二、电路原理图
XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C51D0 D1 D2 D3 D4 D5 D6 D7+5VK1K2K3K4 图 1
跑马灯实验电路原理图 三、程序流程图
图 2
简单键控得流水灯程序流程图 四、源程序 1、基本得流水灯 #include
ﻩﻩ //延时函数 data uint j; { data uint i;
while(j--)
for(i=0;i<250;i++); } void main( )
ﻩ
//主函数 { data uchar a;
a=1;
ﻩ
//保证只有一个点亮
while(1)//ﻩ
环循断不ﻩﻩ
{
P2=~a;
//低电平点亮
a=a
//左移一位,右补 0
if(a==0)a=1; // 0 全ﻩ
delay(2250);} // 时延亮点动流ﻩ检测 P2 键值 开始 完成对应键值得功能 判断 P2 键值就是否改变
} 2、简单键控得流水灯 #include #define uchar unsigned char #define uint unsigned int void delay(uint i) { uchar t;
while(i--)
{
ﻩ for(t=0;t<120;t++);
}ﻩ} void main() {
;a rahcu atadﻩ
;1=aﻩﻩ ﻩ
while(P2==0xff) ﻩﻩﻩﻩﻩ
{ ;a~=0Pﻩ ﻩ
ﻩ
a=a<<1;
ﻩ
)0==a(fiﻩﻩﻩﻩ
;1=aﻩ
delay(250);
}
)efx0==2P(elihwﻩ ﻩﻩ
{
P0=~a;
ﻩﻩﻩﻩ
a=a>>1;
)0==a(fiﻩ
;821=aﻩﻩ
;)052(yaledﻩ
ﻩ }ﻩ
ﻩ
} 3、键控得流水灯 #include
if(P2==0xfd) b=0xfd;
ﻩ if(P2==0xfb)
b=0xfb;
ﻩ for(t=0;t<120;t++);
}ﻩ} void main()
{
data uchar a;
a=1;
ﻩﻩﻩ
while(P2==0xfe)
ﻩ
ﻩ
{ﻩ P0=~a;
ﻩ
a=a<
ﻩﻩ
)0==a(fiﻩﻩ ;1=aﻩ
ﻩ
delay(250);
while(P2==0xff)
ﻩ ﻩ
ﻩ
{ﻩ ﻩ
;a~=0Pﻩﻩ
;1<
)0==a(fiﻩ
a=1;
;)052(yaledﻩ ﻩ
}ﻩ }
while(P2==0xfd)
ﻩ
ﻩ
{
;a~=0Pﻩﻩﻩﻩﻩ
a=a>>1;
ﻩ
if(a==0)a=128;
delay(250);
)ffx0==2P(elihwﻩﻩﻩﻩ
{
;a~=0Pﻩ ﻩﻩ
;1>>a=aﻩ
ﻩ
ﻩ
ﻩ
;821=a)0==a(fiﻩ
delay(250);
ﻩ }
}
while(P2==0xfb)
{
};ffx0=0Pﻩ} 五、实验结果 1 、 基本得流水灯
基本流水灯仿真图 2、 、 简单键控得流水灯
简单键控得流水灯仿真图 3、 、 键控得流水灯
键控得流水灯仿真图 六、思考题回答 1、采用 I/O 口作为输出口时要考虑哪些因素?为什么实验装置中 LED要串联一个电阻? 答:电压得大小(包括它能感知得最小电压作为高电平),电流得驱动能力等,同时也要要考虑它就是否要加上拉电阻。实验装置中LED串联一个电阻就是为了防止电流过大而对LED灯有损坏。
2、采用 I/O 口作为输入口时要注意什么?键控得流水灯时为什么要在延时程序中检测就是否按键? 答:在进行读操作时,必须要先向 Px 口得锁存器写 1;本程序未采用例程所说得方法,但就是在延时函数中进行按键检测就是为了防止在延时程序中间有键按下却检测不到得情况,即放在延时函数中检测间隔时间短,反应快。
3、为什么延时程序要做一个函数? 灯黄灯绿灯红,制控得灯号信通交如比。用调便方,理处体具情事体具以可:答ﻩ都有时间控制,亮得长短就要由延时程序控制等等。
七、实验心得体会
学习单片机这门课程,要掌握单片机指令系统中汇编语言各种基本语句得意义及汇编语言程序设计得基本知识与方法,以及单片机与其她设备相连接得输入输出中断等接口技术。跑马灯实验虽然就是第一个单片机实验,却让我深有体会,首先要熟悉单片机指令,上课时跟着老师走,认真对待,每次只要跟上老师上课所讲得内容以及按要求完成老师布置得课堂习题,掌握程序得编写以及完成实际上机操作就是不成问题得,然后就就是必须熟练运用一些基本语句,运用proteus与 uVision4 等仿真软件,最后就是上机操作,根据教程了解单片机与其她设备相连接得输入输出中断等接口技术,运用实际,就可以完成简单有趣得跑马灯实验了!
单片机炫彩灯实训报告_单片机跑马灯实验报告相关推荐
- 单片机炫彩灯实训报告_单片机跑马灯(流水灯)控制实验报告
单片机跑马灯(流水灯)控制实验报告 1单片机实验报告单片机实验报告姓名 学号一.一. 实验实现功能实验实现功能1计数器功能 2流水灯二.具体操作具体操作1计数器功能计数器功能数码管的动态显示.每按一次 ...
- 单片机炫彩灯实训报告_51单片机呼吸灯实验报告.doc
51单片机呼吸灯实验报告.doc 呼吸灯1功能与技术分析呼吸灯就是让LED灯的闪烁像呼吸一样,时呼时吸,时亮时暗,利用LED的余辉和人眼的暂留效应,看上去和人的呼吸一样.可以展示出各种酷炫的图像.11 ...
- 交换机vlan配置实训心得_交换机VLAN配置实验报告.doc
交换机VLAN配置实验报告 宁波工程学院电信学院计算机教研室 实验报告 课程名称: 网络管理实验 实验项目: 交换机VLAN配置 实验人员: 班 级: 计科10-4 指导教师: 盛啸涛 实验位置: 网 ...
- 交换机vlan配置实训心得_交换机VLAN配置实验报告
交换机VLAN配置实验报告 一.实验目的 1.了解交换机的基本功能 2.掌握虚拟局域网VLAN的相关知识,配置交换机VLAN功能 3.掌握VLAN的创建, 4.掌握VLAN间路由的接口配置 5.掌握通 ...
- 单片机炫彩灯实训报告_单片机交通灯实训报告
- 1 - 第一章 设计目的及要求 1.1 设计目的 1. 通过本次课程设计进一步熟悉和掌握单片机的结构及工作原理, 巩固和加深"单片机原理与应用"课程的基本知识,掌握电子设计知识 ...
- 交换机vlan配置实训心得_交换机 VLAN 基础实验报告
安徽工业经济职业技术学院 - 31715 - 17#424 一.实验目的 掌握交换机vlan创建 学会交换机vlan的划分 实验器材: 两台交换机,4台电脑,直通线若干. 实验拓扑图 二.实验内容 1 ...
- 单片机节日彩灯实训报告_单片机数字钟实训报告
单片机数字钟实训报告 学院:电子工程学院 专业:机电一体化 班级: 姓名: 手机号: 一.任务及要求 用51单片机设计时.分.秒计时器,具体要求如下. 1.具有时.分.秒计时功能和8位数码管显示功能, ...
- java小游戏实训目的_Java弹球小游戏实验报告.doc
Java弹球小游戏实验报告 滨江学院 Java程序设计实验报告 题 目 弹球小游戏 姓 名 许浩 学 号 20112346064 学 院 滨江学院 专 业 网络工程 年 级 2011级 指导教师 张舒 ...
- 嵌入式跑马灯实验报告linux,ARM嵌入式跑马灯设计实验报告.doc
ARM嵌入式跑马灯设计实验报告.doc ARM嵌入式设计实验报告 题目: 跑马灯的设计 专 业: 班 级: 姓 名: 学 号: 指导教师: 2014年11 月 目 录 1 题目要求---------- ...
- 单片机节日彩灯实训报告_基于单片机控制的节日彩灯设计.pdf
ELECTRONICS WORLD 技术 交流 ・ 基于单片机控制的节日彩灯设计 徐州生物工程职业技术学院 魏建玮 [摘要] 为了增添节日气氛,大部分城市都会有节日彩灯,而节日彩灯大部分是单一循环的, ...
最新文章
- Linux定时备份数据到百度云盘
- cmake / cmake --build 如何理解
- c语言排序方法有哪几种?
- Python练习-从小就背不下来的99乘法表
- React开发(105):没有定义变量报错
- Ubuntu18.04 快捷键和点击图标无法打开终端显示Failed to execute child process “gnome-terminal“
- java关键词 英文原文解释,javadoc注释规范(国外英文资料).doc
- 持有对方的引用内部类
- Springboot项目中static文件和templates文件的区别
- 全概率公式和贝叶斯公式的定义与说明
- python2安装biopython
- 【Cesium】点击billboard弹出自定义气泡框
- python 百度cpc点击
- 吴思进——复杂美创始人首席执行官
- 解决 go get获取package时候time out超时问题
- c语言编辑三色球问题,C语言实例编程:三色球问题
- 计算机硬件知识ppt课件,计算机硬件知识PPT课件.ppt
- js下载文件方法记录
- unsigned long long 与 long long
- ffmpeg sws_scale详细分析
热门文章
- 在BAT工作是什么样的?来听听在职员工们的说法
- java对接快递单号查询自动识别api接口,调用代码示例
- vector vector int的使用
- 从SNP_VCF文件提取SNV
- 学生静态网页设计作品之我的家乡
- 如何使用 方天擎 实现从微信浏览器跳转到手机浏览器下载app
- C++中string类
- oracle sql 常用语句大全,SQL常用语句大全
- 深度学习-8.实践方法论
- python新闻标题分类_机器学习也会“标题党”?这个算法能根据标题判断新闻类别...