文档库 最新最全的文档下载
当前位置:文档库 › 单片机闪烁灯跑马灯控制课程设计

单片机闪烁灯跑马灯控制课程设计

单片机闪烁灯跑马灯控制课程设计
单片机闪烁灯跑马灯控制课程设计

闪烁灯跑马灯控制系统

河南工院

第1 章概述

1.1设计的目的及意义?????????????????????..3

1.2单片机的概述与应用????????????????????..3

第2 章设计原理??????????.. ??????????????4

2.1设计要求与基本思路??????.??????????????4

2.2设计方案选择?????.??????????????????5

2.3设计框图??????????. ?????????????5

第3 章硬件电路设计???????.. ??????????????7

3.1时钟电路???????????????????????.?.7

3.2扩展电路????????????????????????..8

第4 章程序设计???????????????????????9

4.1程序设计思路与流程图??..???????????????? (9)

4.2程序清单与代码???????????????????.?..?11

4.3程序调试??????????????????????.?.?12

第 5 章原件明细表????????????????????13 总结???????????????????????????????14 参考文献15

第1 章概论

1.1设计的目的与意义

当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。

竞争日益剧烈的今天,当代大学生不仅需要扎实的理论知识,还需要过硬的动手能力。作为自动化专业的学生,更应该熟练掌握各种电路编辑软件,作为专业必需的技能更要及时地对这一类软件的更新版本进行学习,其日趋强大的功能是对我们专业技能的补充。

闪烁灯控制系统是利用8051单片机的P1控制的8 个发光二极管。可实现从右到左闪烁一次,再从左到右闪烁一次,每次亮灭1 秒,如此循环,紧急情况下,控制P3.1 进行报警2S停止。

闪烁灯控制系统是简易的单片机控制系统,作为课程设计课题,通过实际程序设计和调试,逐步掌握块化程序设计方法和调试技术,通过课程设计,掌握一单片机核心的电路设计的基本方法和技术,了解有关电路参数的计算方法,通过完成一个包括电路设计和程序设计开发的完整过程,了解开发单片机应用系统的全过程,通过本次设计对单片机应用上有一个初步的了解,增强自我的动手、动脑能力,以及发现问题,解决问题,总计经验教训的能力,为以后走向工作岗位,以及更高更远的发展打下坚实的基础

1.2单片机概述与应用

单片机是将CPU、存储器、定时/计数器以及I/O 接口等主要部件集成在一块芯片上的微型计算机。单片机是单片微机(Single Chip Microcomputer)的简称,但准确反映单片机本质的名称应是微控制器。目前国外已经普遍称之为微控制器。鉴于他完全作嵌入式应用,故又称为嵌入式微控制器

单片微机从体系结构到指令系统都是按照嵌入式应用特点专门设计的,它能最好地满足面对控制对象,应用系统的嵌入、现场的可靠运行以及非凡的控制品质等要求。

自从20世纪70 年代推出单片机以来,作为微型计算机的一个分支,单片机经过30 多年的发展,已经在各行各业得到了广泛的应用,由于单片机具有可靠性高、体积小、干扰能力强、能在恶劣的环境下工作等特点,具有较高的性价比,因此广泛应用于工业控制、仪器仪表智能化,机电一体化、家用电器等

(1)工业控制:工业设备如机床、锅炉、供水系统、生产自动化、自动报警系统。

(2)智能设备:用单片机改造普通仪器如:仪表、读卡器、医疗器械。

(3)家用电器:如高档洗衣机、电冰箱、微波炉、电视、音响、手机、空调器。

(4)商用产品:如自动售货机、电子收款机、电子秤。

第2 章设计原理

2.1设计要求与基本思路

这次单片机课程设计,选择了闪烁灯控制设计,通过查阅各种文献资料,再加上自己以前所学单片机课程的基础,大概的设计思路可概括为以下

8 个步骤:

⑴通过累加器A给P1口送二进制数,驱动八个发光二极管,低电平发光,高电平熄灭。

⑵编写延时一秒的子程序DELAY,可通过软件定时,也可通过与定时器中断配合来实现。

⑶调用DELAY延时程序。

⑷送0FFH给P1 口,使发光二极管熄灭,再调用DELAY延时程序。使发光二极管闪烁。

⑸送闪烁次数10 给寄存器R0,通过DJNZ指令,配合DELAY延时程序,实现发关二极管闪烁,当闪烁十次后结束循环。

⑹执行RR(循环右移)指令,指向下一个二极管,重复第5 步。

⑺当8 个发光二极管从左至右依次闪烁完毕后,执行RL(循环左移)指令,重复第5 步,使二极管从右至左一次循环闪烁。

⑻当从右至左循环结束后,重复第6 步,循环闪烁。由于在起初的硬件中选择了共阳的二极管接法,所以通过给P1 口输送低电平0 ,就可以使二极管发光,输送高电平1 可使二极管熄灭。

单片机中的定时器有四种工作方式,由于工作方式0 和工作方式1 计数溢出后,计数器都全为0,因此,循环定时或循环计数应用时就存在反复设置计数初值的问题。这不但影响精度,而且也给程序设计带来了不便。于是,选择工作方式2,它具有自动更新重新加载功能,即自动加载计数初值。在这种方式下,把16 位计数器分为两部分,即TL 作计数器,TH 作预置寄存器,初始化时把初值分别装入TL和TH中。为了能够清晰的看见二极管闪烁,选择定时器定时500us, 再通过配合DJNZ指令来实现延时1s

的定时。由于,DJNZ中操作数的范围不能达到2000,所以选择两条DJNZ 指令,一次置200,一次置10,依次循环就可达到要求。

2.2设计方案选择

在做本次课程设计时,用到了8051 单片机,由于其程序存储器是掩膜ROM,其编程是由半导体制造厂家完成的,即在生产过程中进行编程,当掩膜ROM制造完成后,用户不能更改其内容。因此,选择了型号为27256(32KB)的EPROM作为它的程序存储扩展。同时EA引脚必须有效,方可访问外扩程序存储器。在引脚的连接时,8051单片机的PSEN引脚须接EPROM 的OE 端,当PESN有效时,允许读出EPROM 中的指令码。同时,ALE 接74LS373译码器的G引脚,当CPU 访问片外存储器时,ALE 输出信号作为锁存低8 位地址的控制信号,以实现低位地址和数据的隔离。因此,其程序存储器扩展图如图2 所示。

单片机的复位操作有上电自动复位和按键自动复位两种方式。上电复位是通过外部复位电路的电容充电来实现的。电容C1选择10uf,电阻选择10K,这样,只要电源VCC 的上升时间不超过1ms,就可实现上电复位,即接通电源就完成了系统的复位初始化。

时钟电路用于产生单片机工作所需的时钟信号。在MCS-51 系列单片机芯片外部,X1 和X2 之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器,这就是单片机的时钟电路。电容器C2 和C 通常3取

30pf,对振荡频率有微调作用,选择振荡频率为12MHZ 的石英晶体。

2.3设计框图

VCC

图1 闪烁灯控制设计硬件接GND

P0.

7

P2.

7

VCC 线图

第3 章硬件电路设计

3.1 时钟电

图2 8051 内部时钟电路

图3 8051 外部时钟电路

扩展电路

外扩程序存储器的空间地址,是由P2 口提供高八位地址,P0 口分时提供低8 位地址和用作8位双向数据总线。在设计硬件接线时,使27256 芯片的片选信号CE 始终保持有效,低八位A0~A7 通过74LS373 译码器连接P1 口,高七位A8~A14 连接P2.0~P2.6,具体连接如图2 所示。因此其地址范围位

0000H~7FFFH 其程序存储扩展图如图所示。

图 4 8051 程序存储扩展图

第四章程序设计

4.1 程序设计思路与流程图

闪烁灯分8 个发光二极管,从左到右闪烁,或者从右到左闪烁,均呈现一个亮,而其余全灭的现象,8 个灯有8051统一控制,其亮灯条件说明表如下表1 闪烁灯灯亮的条件说明表

流程图的绘制为编程提供了便利,通过对控制要求的理解而绘制的流程图可以让我们对控制过程更加熟悉并且编程的进行也变得有据可寻。流水灯控制设计的流程图如图所示。

图 5 闪烁灯流程图

4.2 程序清单与代码 ORG 0000H

;程序存放的起始地址

AJMP MAIN

;上电,转向主程序

ORG 0003H

;外部中断 0 入口地址

AJMP LOOP

;转向中断服务程序

ORG 0030H

;主程序

MAIN: SETB EX0

;允许外部中断 0 中断

SETB IT0

;选择边沿触发方式

SETB EA

;CPU 开中断

MOV R0,#10

;将闪烁次数 10 送入 R0

MOV R2,#8

;将灯的数量 8 送入 R2

MOV A,#07FH

LOOP: MOV P1,A

;使最左边的一个二极管发光

LCALL DELAY

;调用延时 1s 的子程序

MOV P1,#0FFH

;使最左边的一个二极管熄灭

LCALL DELAY

;调用延时 1s 的子程序

DJNZ R0,LOOP

;循环闪烁十次

RR A

;指向下一个二极管

MOV R0,#10

;再次将闪烁次数 10 次送入 R0

DJNZ R2,LOOP

;8 个灯从左到右依次闪烁完毕

MOV R2,#8

LOOP1: MOV P1,A

;使最右边的一个二极管发光

LCALL DELAY

;调用延时 1s 的子程序

MOV P1,#0FFH

;使最右边的一个二极管熄灭

LCALL DELAY

;调用延时 1s 的子程序

DJNZ R0,LOOP

;循环闪烁十次

RL A

;指向下一个二极管

MOV R0,#10

;再次将闪烁次数 10 次送入 R0

DJNZ R2,LOOP1 ;8 个灯从右到左依次闪烁完毕

LJMP MAIN

;转向主程序

DELAY: MOV R5,#200

MOV R7,#10

;定时器 1 工作于方式 2 ;送初值

;允许定时器 1 中断 ;P2.0 输出置 1 ;启动定时器 1

;定时 500us 到, 转向 LOOP4执行

;停止定时器 1 ;P2.0 输出取反

;循环 2000 次定时程序,延时 1s ;返回 ;程序结束

4.3 程序调试

将编好的程序写入,单片机外部电源等调试完成后按下 P1,可以看到

发光

二极管从左到右一次点亮,并且每个二极管再点亮到熄灭的时间维持在 1 秒

;延时 1s 的 DELAY 子程序

LOOP2: MOV TMOD,#20H

MOV TH1,#06H MOV TL1,#06H SETB ET1 SETB P2.0 SETB TR1

LOOP3: JBC TF1,LOOP4

SJMP LOOP3

LOOP4: CLR TR1

CLR P2.0 DJNZ R7,$ DJNZ R5,LOOP2 RET END

左右。

P8点亮又熄灭后,P8 再次点亮,然后按P8~P1的顺序再依次点亮,如此循环。

紧急情况下,按P3.1时扬声器发出响声,约2 秒后停止。

第五章原件明细表

220Ω电阻8个

1个10KΩ电阻

普通发光二极管8个10μF 电容1个30μF 电容2个12MHZ 晶振1个8051芯片1个扬声器1个导线若干数据线

电源

总结

此次单片机课程设计,我感慨颇多,从理论到实践,在这些日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。

我感触最深的当属查阅大量的设计资料了。为了让自己的设计更加完善,查阅这方面的设计资料是十分必要的,同时也是必不可少的。我们是在做单片机课程设计,但我们不是艺术家,他们可以抛开实际尽情在幻想的世界里翱翔,而我们一切都要有据可依,有理可寻,不切实际的构想永远只能是构想,永远无法升级为设计。

其次,在这次课程设计中,清晰的分析过程也起到很大的作用。在设计程序之前,对所用单片机的内部结构有一个系统的了解,知道该单片机内有哪些资源;要有一个清晰的思路和一个完整的的软件流程图;在设计程序时,不能妄想一次就将整个程序设计好,反复修改、不断改进是程序设计的必经之路;要养成注释程序的好习惯,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你的思路,这样也为资料的保存和交流提供了方便;在设计课程过程中遇到问题是很正常德,但我们应该将每次遇到的问题记录下来,并分析清楚,以免下次再碰到同样的问题的课程设计结束了,但是从中学到的知识会让我受益终身。

发现、提出、分析、解决问题和实践能力的提高都会受益于我在以后的学习、工作和生活中。设计过程,好比是我们人类成长的历程,常有一些不如意,但毕竟这是第一次做,难免会遇到各种各样的问题。在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。我们通过查阅大量有关资料,并在同学间互相讨论,交流经验和自学,若遇到实在搞不明白的问题就会及时请教老师,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。通过这次课程设计我也发现了自身存在的不足之处,虽然感觉理论上已经掌握,但在运用到实践

的过程中仍有意想不到的困惑,经过一番努力才得以解决。这也激发了我今后努力学习的兴趣,我想这将对我以后的学习产生积极的影响。

参考文献

[1]韩金立赵德申微机控制技术及应用. 北京:机械工业出版社,2003.

[2]李广弟.单片机基础.北京:北京航空航天大学出版社,1994.

[3]房小翠. 单片机实用系统设计技术. 北京:国防工业出版社,1999.

[4]彭伟.单片机C语言程序设计实训100 例. 北京:北京航天航空大学,2010

[5]唐颖. 单片机原理与应用. 北京:北京大学出版社,2008

[6]金建设于晓海. 单片机系统及应用试验教程.北京:北京邮电大学出版社,2010

内部资料

仅供参考

此程序是用单片机的p1口接八个led灯作跑马灯试验

拆字程序 Org 0000h Mov A , 2000H Add A ,#F0H MOV 2001H ,A MOV A ,2000H ADD A , #0FH MOV 2002H , A MOV A , 2001H ADD A , 2002H END 拆分BCD 码 ? *************************************************************************** ;此程序是用单片机的p1口接八个led灯作跑马灯试验,八个led依次亮了又熄灭,形成漂亮;的跑马灯。本人已经试验成功。 ;单片机教程网https://www.wendangku.net/doc/1111811262.html, 原创

;该8路单片机跑马灯程序代码简单,电路也容易搭建,只需把led接在p1口上就可以了,希望大家能试验成功顺利的完成跑马灯报告 ;*************************************************************************** org 0000h loop0:cjne r0 ,#01h,rel,loop0 ;判断开关打开情况 ajmp start;跳转到程序开始 org 0030h;定义起始汇编地址 start: mov a,#0ffh ; clr c ; mov r2,#08h ;循环八次。 loop: rlc a ;带进位左移。 mov p1,a ;此时led灯开始有反映了。 call delay ;延时 djnz r2,loop ;循环(djnz条件判断) mov r2,#07h ; loop1: rrc a ;带进位右移 mov p1,a ;此时led灯开始有反映了。 call delay ; djnz r2,loop1 ;反复循环 jmp start ;回到程序的开头 delay: mov r3,#20 ;延时子程序 d1: mov r4,#20 d2: mov r5,#248 djnz r5,$ djnz r4,d2 ```````````````````````````````````````````````---------3路单片机跑马灯程序---------------------------------------

单片机8管跑马闪烁灯控制课程设计

闪 烁 灯 控 制 系 统 院系:电气工程系 班级:电气1002 学号:0401100207 姓名:

第1章概述 (3) 1.1设计的目的及意义 (3) 1.2单片机的概述与应用 (3) 第2章设计原理 (4) 2.1设计要求与基本思路 (4) 2.2设计方案选择 (5) 2.3设计框图 (5) 第3章硬件电路设计 (7) 3.1时钟电路 (7) 3.2扩展电路 (8) 第4章程序设计 (9) 4.1 程序设计思路与流程图 (9) 4.2源程序 (11) 4.3程序调试 (12) 第5章原件明细表 (13) 总结 (14) 参考文献 (15)

第1章概论 1.1设计的目的与意义 当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。 竞争日益剧烈的今天,当代大学生不仅需要扎实的理论知识,还需要过硬的动手能力。作为自动化专业的学生,更应该熟练掌握各种电路编辑软件,作为专业必需的技能更要及时地对这一类软件的更新版本进行学习,其日趋强大的功能是对我们专业技能的补充。 闪烁灯控制系统是利用8051单片机的P1控制的8个发光二极管。可实现从右到左闪烁一次,再从左到右闪烁一次,每次亮灭0.5秒,如此循环,紧急情况下,控制P3.1进行报警5S停止。 闪烁灯控制系统是简易的单片机控制系统,作为课程设计课题,通过实际程序设计和调试,逐步掌握块化程序设计方法和调试技术,通过课程设计,掌握一单片机核心的电路设计的基本方法和技术,了解有关电路参数的计算方法,通过完成一个包括电路设计和程序设计开发的完整过程,了解开发单片机应用系统的全过程,通过本次设计对单片机应用上有一个初步的了解,增强自我的动手、动脑能力,以及发现问题,解决问题,总计经验教训的能力,为以后走向工作岗位,以及更高更远的发展打下坚实的基础 1.2单片机概述与应用 单片机是将CPU、存储器、定时/计数器以及I/O接口等主要部件集成在一块芯片上的微型计算机。单片机是单片微机(Single Chip Microcomputer)的简称,但准确反映单片机本质的名称应是微控制器。目前国外已经普遍称之为微控制器。鉴于他完全作嵌入式应用,故又称为嵌入式微控制器 单片微机从体系结构到指令系统都是按照嵌入式应用特点专门设计的,它能最好地满足面对控制对象,应用系统的嵌入、现场的可靠运行以及非凡的控制品质等要求。 自从20世纪70年代推出单片机以来,作为微型计算机的一个分支,单片机经过30多年的发展,已经在各行各业得到了广泛的应用,由于单片机具有可靠性高、体积小、干扰能力强、能在恶劣的环境下工作等特点,具有较高的性价比,因此广泛应用于工业控制、仪器仪表智能化,机电一体化、家用电器等(1)工业控制:工业设备如机床、锅炉、供水系统、生产自动化、自动报警系统。 (2)智能设备:用单片机改造普通仪器如:仪表、读卡器、医疗器械。 (3)家用电器:如高档洗衣机、电冰箱、微波炉、电视、音响、手机、空调器。 (4)商用产品:如自动售货机、电子收款机、电子秤。

单片机课程设计报告-跑马灯

单片机课程设计报告-跑马灯

武汉纺织大学 单 片 机 课 程 设 计 报 告 设计课题:跑马灯 指导教师:刘丰

姓名:颜珊曹坤 班级:应电092 一、设计任务 利用单片机制作让LED灯依次闪烁时间间隔为0.5S二次后时间加快为 0.2S并循环闪烁的跑马灯. 二、设计要求 (1)采用单片机STC89C52来控制,下载器由芯片MAX232来对程序的下载。 (2)LED灯的闪烁间隔时间为0.5S-0.25S-1S,每循环两圈更改闪烁速度。 (3)供电采用USB方口的方式。 三、方案设计与论证 跑马灯电路的组成方框图为: 四,主要元件介绍 (1)单片机STC89C52引脚介绍 stc89c52的内核和AT51系列单片机一样,故引脚也相同: 1~8:I/OP1口(P1.0~P1.7); 9:复位脚(RST/Vpd);

10~17:I/OP3口(P3.0=RXD,P3.1=TXD,P3.2=-INT0,P3.3=-INT1,P3.4=T0,P3.5=T1,P3.6=-WR,P3.7=-RD)主要是此引脚; 18、19:晶振(18=XTAL2,19=XTAL1);20:地(Vss); 21~28:I/OP2口(P2.0~P2.7); 29:-PSEN; 30:ALE/-PROG; 31:-EA/Vpp 32~39:I/OP0口(P0.7~P0.0); 40:+5V电源。 注:引脚功能前加“-”,说明其是低电平有效。如P3.2=-INT0。 (2)MAX232介绍 MAX232芯片是美信公司专门为电脑的RS-2 32标准串口设计的接口电路,使用+5v单电源供电。

跑马灯实训报告

摘要:AT89C51是美国ATMEL公司生产的AT89系列单片机中的一种,该 器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 关键字:AT89C51 兼容高效微控制器 目录 一、实训目的 (2) 二、电路设计与生成 (2) 1、设计跑马灯 (2) 2、生成PCB板 (2) 三、程序设计 (3) 1、程序设计 (3) 2、运行结果 (4) 四、实训总结 (4)

一、实训目的 了解AT89C51管脚的基本功能,学会运用Protel 99 se设计电路,并生成PCB 板,印刷线路板。使用KEIL C51设计单片机程序,生成HEX文件,将程序下载到单片机内并运行。从而达到初步掌握简单单片机小程序的设计,制作,调试的目的。 二、电路设计与生成 1、设计跑马灯 利用单片机最小系统,使P1口八个发光二极管做跑马灯和流水灯显示。设计的电路图如下: 2、生成PCB板 (1)保存电路图,单击菜单栏DESIGN项,选择其中的更新PCB; (2)在弹出的对话框中,单击preview change; (3)校对弹出界面中的相关元件的信息,再单击Execute,生成元器件;(4)最后对生成的元器件进行排版,生成如下图所示:

三、程序设计 1、程序设计 #include"reg51.h" unsigned char tab[]={1,2,4,8,0x10,0x20,0x40,0x80,0x80,0x40,0x20, 0x10,8,4,2,1}; void delay(unsigned char n) { unsigned int d; unsigned char i; for(i=0;i

单片机闪烁灯跑马灯控制课程设计

闪烁灯跑马灯控制系统 河南工院

第1 章概述 1.1设计的目的及意义?????????????????????..3 1.2单片机的概述与应用????????????????????..3 第2 章设计原理??????????.. ??????????????4 2.1设计要求与基本思路??????.??????????????4 2.2设计方案选择?????.??????????????????5 2.3设计框图??????????. ?????????????5 第3 章硬件电路设计???????.. ??????????????7 3.1时钟电路???????????????????????.?.7 3.2扩展电路????????????????????????..8 第4 章程序设计???????????????????????9 4.1程序设计思路与流程图??..???????????????? (9) 4.2程序清单与代码???????????????????.?..?11 4.3程序调试??????????????????????.?.?12 第 5 章原件明细表????????????????????13 总结???????????????????????????????14 参考文献15

第1 章概论 1.1设计的目的与意义 当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。 竞争日益剧烈的今天,当代大学生不仅需要扎实的理论知识,还需要过硬的动手能力。作为自动化专业的学生,更应该熟练掌握各种电路编辑软件,作为专业必需的技能更要及时地对这一类软件的更新版本进行学习,其日趋强大的功能是对我们专业技能的补充。 闪烁灯控制系统是利用8051单片机的P1控制的8 个发光二极管。可实现从右到左闪烁一次,再从左到右闪烁一次,每次亮灭1 秒,如此循环,紧急情况下,控制P3.1 进行报警2S停止。 闪烁灯控制系统是简易的单片机控制系统,作为课程设计课题,通过实际程序设计和调试,逐步掌握块化程序设计方法和调试技术,通过课程设计,掌握一单片机核心的电路设计的基本方法和技术,了解有关电路参数的计算方法,通过完成一个包括电路设计和程序设计开发的完整过程,了解开发单片机应用系统的全过程,通过本次设计对单片机应用上有一个初步的了解,增强自我的动手、动脑能力,以及发现问题,解决问题,总计经验教训的能力,为以后走向工作岗位,以及更高更远的发展打下坚实的基础 1.2单片机概述与应用 单片机是将CPU、存储器、定时/计数器以及I/O 接口等主要部件集成在一块芯片上的微型计算机。单片机是单片微机(Single Chip Microcomputer)的简称,但准确反映单片机本质的名称应是微控制器。目前国外已经普遍称之为微控制器。鉴于他完全作嵌入式应用,故又称为嵌入式微控制器 单片微机从体系结构到指令系统都是按照嵌入式应用特点专门设计的,它能最好地满足面对控制对象,应用系统的嵌入、现场的可靠运行以及非凡的控制品质等要求。 自从20世纪70 年代推出单片机以来,作为微型计算机的一个分支,单片机经过30 多年的发展,已经在各行各业得到了广泛的应用,由于单片机具有可靠性高、体积小、干扰能力强、能在恶劣的环境下工作等特点,具有较高的性价比,因此广泛应用于工业控制、仪器仪表智能化,机电一体化、家用电器等 (1)工业控制:工业设备如机床、锅炉、供水系统、生产自动化、自动报警系统。 (2)智能设备:用单片机改造普通仪器如:仪表、读卡器、医疗器械。 (3)家用电器:如高档洗衣机、电冰箱、微波炉、电视、音响、手机、空调器。

用单片机编写几种跑马灯

用单片机编写几种跑马灯 任务: 1、在电路板上实现跑马灯,一次1匹 2、在电路板上实现跑马灯,一次2匹 3、在电路板上实现4个二极管的同时闪烁 源程序1: /***********************************信息**************************************** **作者:刘海涛 **版本:初始版V1.0 **描叙:用电路板实现跑马灯。 **日期:2010年7月25日 *******************************************************************************/ /**********************************头文件*************************************** **头文件"reg52.h" *******************************************************************************/ /**********************************函数名*************************************** **函数名:延时函数delay() **输入:无 **输入:无 **宏定义:无 *******************************************************************************/ /**********************************宏定义*************************************** 宏定义:#define XBYTE ((unsigned char *)0x20000L) *******************************************************************************/ #include"reg52.h" delay(unsigned int dat) // 延时函数定义 { unsigned int i,j; for(i=0;i

单片机跑马灯实训报告

目录 一、了解跑马灯............................. .... . (2) 二、AT89C52 单片机 ........................... .3 三、识别与检测元器件 (4) 四、电路设计...................................... (4) 1. 单片机最小应用系统 (4) 2. 复位电路图..................................... .5 3. 彩灯原理图 (6) 4. 彩灯仿真图 (7) 5. 彩灯布局图 (8) 五、焊接电路 (8) 六、程序流程 (9) 七、跑马灯程序 (10) 八、下载调试程序 (10) 九、实训总结 (11)

十、微控制器应用技术实训评价表 (12)

、了解跑马灯 在生活和生产的各领域中,凡是有自动控制要求的地方都会有单片机的身影出现;从简单到复杂,从空中、地面带地下,凡是能想象到的地方几乎都有使用单片机的需求。现在尽管单片机的应用已经很普遍了,但仍有许多可以用单片机控制而没有实现的项目,因此,单片机的应用大有想象和拓展空间。单片机的应用有利于产品的小型化、多功能化和智能化,有助于提高劳动效率,减轻劳动强度,提高产品质量,改善劳动环境,减少能源和材料消耗,保真安全等。但是单片机应用的意义绝不仅限于它的广阔范围以及所带来的经济效益上,更重要的意义还在于单片机的应用正从根本上改变者传统的控制系统设计思想和设计方法。从前必须有模拟电路或数字电路实现的大部分功能,现在 已能使用单片机通过软件方法来实现了。这种以软件取代硬件并提高系统系能的控制系统是一种全新的概念,是对传统控制技术的一次革命。随着单片机应用的推广普及,微控制技术必将不断发展、日益完善和更加充实。 在众多的微控技术实验中,老师为我们选择了用单片机制作8个灯的跑马机这一较为基本的科目,单片机使用我们熟悉的AT89C52型单片机,采用覆铜板手工焊制的方法来制作电路板,使用Proteus进行仿真。 本设计选择采用AT89C51单片机为核心。AT89C51是一个低电压、高性能CMOS8 位单片机带有K字节的可反复擦写的程序存储器。和128字节的存取数据存储器RAM这种器件采用ATMEL公司的高密度、不容易丢失存储技术生产,并且能够与MCS-51系列的单片机兼容。片内含有8位中央处理器和闪烁存储单位,有较强的功能的AT89C51单片机能够被应用到控制领域中AT89C51提供以下的功能标准:4K字节闪烁存储器,128字节随机存取数据存储器,32个I/O 口,2个16位定时/计数器,1个5向量两级中断结构,1个串行通信口,片内振荡器和时钟电路。另外,AT89C51还可以进行OHZ的静态逻辑操作,并支持两种软件的节电模式。闲散方式 停止中央处理器的工作,能够允许随机存取数据存储器、定时/计数器、串行通信口及中断系统继续工作。掉电方式保存随机存取数据存储器中的内容,但振荡器停止工作 并禁止其它所有部件的工作直到下一个复位。

单片机控制-闪烁灯

单片机控制-闪烁灯 1.实验任务 如图4.1.1所示:在P1.0端口上接一个发光二极管L1,使L1在不停地一亮一灭,一亮一灭的时间间隔为0.2秒。 2.电路原理图 图4.1.1 3.系统板上硬件连线 把“单片机系统”区域中的P1.0端口用导线连接到“八路发光二极管指示模块”区域中的L1端口上。 4.程序设计内容 (1).延时程序的设计方法 作为单片机的指令的执行的时间是很短,数量大微秒级,因此,我们要 求的闪烁时间间隔为0.2秒,相对于微秒来说,相差太大,所以我们在 执行某一指令时,插入延时程序,来达到我们的要求,但这样的延时程 序是如何设计呢?下面具体介绍其原理:

如图4.1.1所示的石英晶体为12MHz,因此,1个机器周期为1微秒机器周期微秒 MOV R6,#20 2个 2 D1: MOV R7,#248 2个 2 2+2×248=498 20× DJNZ R7,$ 2个2×248 (498 DJNZ R6,D1 2个2×20=40 10002 因此,上面的延时程序时间为10.002ms。 由以上可知,当R6=10、R7=248时,延时5ms,R6=20、R7=248时, 延时10ms,以此为基本的计时单位。如本实验要求0.2秒=200ms, 10ms×R5=200ms,则R5=20,延时子程序如下: DELAY: MOV R5,#20 D1: MOV R6,#20 D2: MOV R7,#248 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RET (2).输出控制 如图1所示,当P1.0端口输出高电平,即P1.0=1时,根据发光二极管 的单向导电性可知,这时发光二极管L1熄灭;当P1.0端口输出低电平,即P1.0=0时,发光二极管L1亮;我们可以使用SETB P1.0指令使P1.0 端口输出高电平,使用CLR P1.0指令使P1.0端口输出低电平。 5.程序框图 如图4.1.2所示

跑马灯实验报告

电子系统综合设计报告 学号 201009120229 姓名李文海年级专业 2010级电子信息工程(二) 指导 教师刘怀强 学院理学院 走马灯实验论文--《嵌入式系统技术》 1、实验目的 1、学会dp-51pro实验仪监控程序下载、动态调试等联机调试功能的使用; 2、理解和学会单片机并口的作为通用i/o的使用; 3、理解和学会单片机外部中断的使用; 4、了解单片机定时器/计数器的应用。 2、实验设备 z pc 机、arm 仿真器、2440 实验箱、串口线。 3、实验内容 z 熟悉 arm 开发环境的建立。 z 使用 arm 汇编和 c 语言设置 gpio 口的相应寄存器。 z 编写跑马灯程序。 5、实验原理 走马灯实验是一个硬件实验,因此要求使用dp-51pro 单片机综合仿真实验仪进行硬件 仿真,首先要求先进行软件仿真,排除软件语法错误,保证关键程序段的正确。然后连接仿 真仪,下载监控程序,进行主机与实验箱联机仿真。 为了使单独编译的 c 语言程序和汇编程序之间能够相互调用,必须为子程序间的调用规 定一定的规则。atpcs ,即 arm , thumb 过程调用标准(arm/thumb procedure call standard),是 arm 程序和 thumb 程序中子程序调用的基本规则,它规定了一些子程序间调 用的基本规则,如子程序调用过程中的寄存器的使用规则,堆栈的使用规则,参数的传递规 则等。 下面结合实际介绍几种 atpcs 规则,如果读者想了解更多的规则,可以查看相关的书 籍。 1.基本 atpcs 基本 atpcs 规定了在子程序调用时的一些基本规则,包括下面 3 方面的内容: (1)各寄存器的使用规则及其相应的名称。 (2)数据栈的使用规则。 (3)参数传递的规则。 相对于其它类型的 atpcs,满足基本 atpcs 的程序的执行速度更快,所占用的内存更少。 但是它不能提供以下的支持: arm 程序和 thumb 程序相互调用,数据以及代码的位置无关 的支持,子程序的可重入性,数据栈检查的支持。 而派生的其他几种特定的 atpcs 就是在基本 atpcs 的基础上再添加其他的规则而形成 的。其目的就是提供上述的功能。 2.寄存器的使用规则 寄存器的使用必须满足下面的规则: (1) 子程序间通过寄存器 r0~r3 来传递参数。这时,寄存器 r0~r3 可以记作 a0~a3。 被调用的子程序在返回前无需恢复寄存器 r0~r3 的内容。 (2) 在子程序中,使用寄存器 r4~rll 来保存局部变量。这时,寄存器 r4~r11 可以记 作 v1~v8。如果在子程序中使用到了寄存器 v1~v8 中的某些寄存器,子程序进入时必须保

单片机课程设计—8个按键控制8个LED自动设定控制流水灯

电子课程设计
东北石油大学
实习总结报告
实习类型
生产实习
实习单位
东北石油大学实习基地
实习起止时间 2018 年 7 月 7 日至 2018 年 7 月 16 日
指导教师
刘东明、孙鉴
所在院(系) 电子科学学院
班 级 电子科学与技术 15-2
学生姓名
学号
1509012402
2018 年 7 月 16 日
I 页脚内容

电子课程设计
目录
第 1 章 按键控制流水灯设计 ....................................... 1 1.1 实习目的 .............................................. 1 1.2 实习要求 .............................................. 1
第 2 章 电路工作原理............................................. 2 2.1 STC89C52 单片机工作原理 ............................... 2 2.2 LED 工作原理 .......................................... 3 2.3 按键工作原理 .......................................... 3 2.4 整体电路图 ............................................ 5 2.5 本章小结 .............................................. 6
第 3 章 C 程序设计 ............................................... 7 3.1 程序设计流程图 ........................................ 7 3.2 实验结果 .............................................. 8 3.3 本章小结 .............................................. 9
总结及体会..................................................... 10 参考文献 ...................................................... 11 附录: ........................................................ 12
I 页脚内容

2020年(交通运输)单片机整套实验及程序(交通灯_跑马灯等)

(交通运输)单片机整套实验及程序(交通灯_跑马灯 等)

实验1 跑马灯实验 一、实验目的 ●初步学会Proteus ISIS和uVision2单片机集成开发环境的使用; ●初步掌握采用汇编语言与C语言开发单片机系统的程序结构; ●掌握80C51单片机通用I/O口的使用; ●掌握单片机内部定时/计数器的使用及编程方法以及中断处理程序的编写方法。 二、实验设备及器件 ●硬件:PC机,HNIST-1型单片机实验系统 ●软件:Proteus ISIS单片机仿真环境,uVision2单片机集成开发环境 三、实验内容 ●编写一段程序,采用P1口作为控制端口,使与P1口相接的四个发光二极管(D1、D2、D3、D4)按照一定的方式点亮。如点亮方式为:先点亮D1,延时一段时间,再顺序点亮D2……D4,然后又是D4……D1,同时只能有一个灯亮;然后每隔一段时间一次使相邻两个灯亮,三个灯亮,四个灯亮,最后闪烁三次,接着循环变化。 ●基于Proteus ISIS仿真环境完成上述功能的仿真。 ●基于uVision2单片机集成开发环境与硬件平台完成程序的脱机运行。 四、实验原理图 图3.1 跑马灯实验电路原理图 电路原理图如上图3.1所示,AT89S52的P1.0~P1.3控制4个发光二极管,发光二极管按照一定次序发光,相邻发光二极管的发光时间间隔可以通过定时器控制,

还可以通过软件延时实现。 五、软件流程图与参考程序 ●主程序流程图如下: ●参考程序

#include #include #define uchar unsigned char #define uint unsigned int uchar aa,num,speed,flag; uchar code table[]={0x0e,0x0d,0x0b,0x07}; uchar code table1[]={0x0a,0x05,0x09,0x06}; uchar codetable2[]={0x0c,0x09,0x03,0x08,0x01,0x0e,0x0c,0x08,0x00}; void delay(uint z)//延时函数 { uint x; uchar y; for(x=z;x>0;x--) for(y=200;y>0;y--); } void init()//条件初始化函数 { flag=0; speed=10;//控制跑马灯流水速度 TMOD=0x01;//中断方式 TH0=(65535-50000)/256; TL0=(65536-50000)%256;//初值

单片机实训实验报告

单片机实训实验报告 课题:单片机实训 院系:电子信息工程学院 班级 学号: 姓名: 指导老师:熊老师、罗老师 日期:2011.6.10

一、硬件系统 1、自制单片机实验板由七部分组成: (1).8路跑马灯 (2)动态扫描共阳型数码管 (3)4X4矩阵键盘 (4)蜂鸣器 (5)4路独立键盘 (6)温度传感器 (7)I2C通信方式的EEPROM芯片24C02 二、Keil C u Vision2 简述与使用 1.打开 u Vision2 2.新建工程:菜单【project】→【New Project】选择工程存放的路径,并输入工程文件名,然后点“保存” 3.进入器件选择界面树列表框内选择“Atmel”→“AT89C52”,然后点“确定”完成器件选择。 4.编辑源程序: 新建文件:菜单【File】→【new…】。然后输入代码,编辑完成后菜单【File】→【Save】或【Save As…】把代码文件存入硬盘。C源文件存为.C后缀,汇编源文件存为.a或.src后缀,并存放在同一个工程文件夹下。 5.加入源文件到工程中: 在左边浮动窗口【File】选项卡里展开“Target 1”树,在“Source Group 1”上右键单击,弹出菜单,选【Add File to Group“Source Group 1”】,选择需要加入的源文件,点“Add”按钮加入,加入完成后按“Close”关闭。 6.设置编译选项:先选中左边浮动窗口【File】选项卡里“Target1“树节点,然后选菜单【Project】→【Options for Target “Target 1”】。 7.在弹出的“Options for Target “Target 1””对话框中选择[output]选项卡,勾选“Create HEX File”然后按“确定”完成设置。 8.按“F7”开始编译,编译成功后会在工程文件夹内生成.Hex目标文件生成的.hex文件就可以用来对AT89S52芯片进行编程和运行了。 三.STC-ISP V29 Beta5 下载软件的使用 1.连接好电源线与串口线(附件中的九孔对九孔线分别连接电脑和点偏激开发板)。 2.检查电源板上电源指示灯是否亮起,如果亮起则检查USB电源线,如果已亮则关掉电源看后面的步骤。 3.启动软件。 4.选择好STC单片机的型号(STC89CF52RC). 5.选择好你使用的计算机串口号. 6.点击OPEN FILE选择你用KEIL编译好的HEX文件.

单片机课程设计-8个LED灯来回点亮

目录 第一章绪论--------------------------------------------------------3 第二章设计目的及要求-----------------------------------------5 1.1 设计目的--------------------------------------------------------5 1.2 设计要求--------------------------------------------------------5 第三章设计电路原理----------- -------------------------------7 3.1 控制部分的设计与选择-------------------------------------7 3.2 LED显示方案-----------------------------------------------8 第四章硬件系统------------------------------------------------9 4.1 原件清单-------------------------------------------------------9 4.2 单片机AT89C51---------------------------------------------9 4.3 单片机时钟电路--------------------------------------------10

4.4 单片机复位电路---------------------------------------------11 4.5 工作电路------------------------------------------------------12 第五章软件设计------------------------------------------------13 5.1 程序流程图--------------------------------------------------13 5.2 编辑源程序--------------------------------------------------14 第六章系统调试与仿真结果--------------------------------16 6.1系统调试-----------------------------------------------------16 6.2仿真结果----------------------------------------------------16 总结------------------------------------------------------------- 19 参考文献--------------------------------------------------------20 第一章绪论

51单片机的音乐跑马灯设计

摘要 单片机技术是一门不可或缺的技术,对我们将来的工作以及生活和学习都有很密切的联系。近年来,随着电子技术和微机计算机的迅速发展,单片机的档次不断提高,其应用领域也在不断的扩大,已在工业控制、尖端科学、智能仪器仪表、日用家电、汽车电子系统、办公自动化设备、个人信息终端及通信产品中得到了广泛的应用,成为现代电子系统中最重要的智能化的核心部件。 本设计使用AT89C52芯片,利用P0的8个端口连接8个发光二极管,P1的8个端口连接8个发光二极管,通过P0.0到P0.7的值和P1.0到P1.7的值控制“跑马灯”的亮灭,以达到显示效果。设计的中断程序要对多个按键动作进行响应,灯光变换的花样有15种,用模式按钮切换。按下模式按钮键,程序将按十五种模式切换,每按一次模式按钮键,切换一次跑马灯模式,而加速按钮和减速按钮可以改变闪烁速度;最后一种模式为音乐模式,加速按钮可切换音乐。 在单片机运行时,可以在不同状态下让跑马灯显示不同的组合,作为单片机系统正常的指示。当单片机系统出现故障时,可以利用跑马灯显示当前的故障码,对故障做出诊断。此外,跑马灯在单片机的调试过程中也非常有用,可以在不同时候将需要的寄存器或关键变量的值显示在跑马灯上,提供需要的调试信息。 关键词:音乐跑马灯;AT89C52单片机;74LS245驱动芯片;LED发光二极管

1 设计概述 (1) 1.1设计目的 (1) 1.2设计作用 (1) 1.3设计要求 (1) 1.4系统设计框图 (1) 2元器件介绍 (3) 2.1AT89C52单片机 (3) 2.2驱动芯片74LS245 (3) 2.3其他元件及功能 (4) 3 硬件电路设计 (6) 3.1单片机最小系统 (6) 3.2LED显示部分 (7) 3.3按钮控制部分 (7) 3.4数码管显示电路 (8) 3.5蜂鸣器部分 (8) 3.6系统总电路图 (9) 4 软件设计 (10) 4.1 程序流程图 (10) 4.2 程序设计 (10) 5 结束语 (32) 参考文献 (33)

走马灯实验报告

电子系统综合设计报告 学号201009120229 姓名李文海 年级专业2010级电子信息工程(二) 指导教师刘怀强 学院理学院

走马灯实验论文--《嵌入式系统技术》 1、实验目的 1、学会DP-51PRO实验仪监控程序下载、动态调试等联机调试功能的使用; 2、理解和学会单片机并口的作为通用I/O的使用; 3、理解和学会单片机外部中断的使用; 4、了解单片机定时器/计数器的应用。 2、实验设备 z PC 机、ARM 仿真器、2440 实验箱、串口线。 3、实验内容 z熟悉A RM 开发环境的建立。 z使用A RM 汇编和C语言设置G PIO 口的相应寄存器。 z编写跑马灯程序。 5、实验原理 走马灯实验是一个硬件实验,因此要求使用DP-51PRO 单片机综合仿真实验仪进行硬件仿真,首先要求先进行软件仿真,排除软件语法错误,保证关键程序段的正确。然后连接仿真仪,下载监控程序,进行主机与实验箱联机仿真。 为了使单独编译的C语言程序和汇编程序之间能够相互调用,必须为子程序间的调用规定一定的规则。A TPCS ,即ARM ,Thumb 过程调用标准(ARM/Thumb Procedure Call Standard),是A RM 程序和T humb 程序中子程序调用的基本规则,它规定了一些子程序间调用的基本规则,如子程序调用过程中的寄存器的使用规则,堆栈的使用规则,参数的传递规则等。 下面结合实际介绍几种A TPCS 规则,如果读者想了解更多的规则,可以查看相关的书 籍。 1.基本A TPCS 基本A TPCS 规定了在子程序调用时的一些基本规则,包括下面3方面的内容: (1)各寄存器的使用规则及其相应的名称。 (2)数据栈的使用规则。 (3)参数传递的规则。 相对于其它类型的A TPCS,满足基本A TPCS 的程序的执行速度更快,所占用的内存更少。但是它不能提供以下的支持:ARM 程序和T humb 程序相互调用,数据以及代码的位置无关的支持,子程序的可重入性,数据栈检查的支持。 而派生的其他几种特定的A TPCS 就是在基本A TPCS 的基础上再添加其他的规则而形成的。其目的就是提供上述的功能。 2.寄存器的使用规则 寄存器的使用必须满足下面的规则:

单片机8个闪烁灯控制

河南工业职业技术学院Henan Polytechnic Institute 单片机应用技术 课程设计说明书 题目:闪烁灯控制系统(6) 班级:电气1001班 姓名:张志海 学号:0401100136 指导教师:赵阳

第1章概述 1.1 设计的目的与意义 1)了解系统的工作原理。 2)掌握8051单片机的工作原理和应用。 3)通过课程设计培养学生自学能力和分析问题、解决问题的能力。 4)闪烁灯控制系统是简易的单片机控制系统,作为课程设计课题,通过实际程序设计和调试,逐步掌握块化程序设计方法和调试技术,通过课程设计,掌握一单片机核心的电路设计的基本方法和技术,了解有关电路参数的计算方法,增强制图能力以及查阅手册的能力和一定的文字表达能力。 5)通过设计使学生具有一定增强自我的动手、动脑能力,以及发现问题,解决问题。 1.2 单片机概述与应用 单片机是将CPU、存储器、定时/计数器以及I/O接口等主要部件集成在一块芯片上的微型计算机。单片机是单片微机(Single Chip Microcomputer)的简称,但准确反映单片机本质的名称应是微控制器。目前国外已经普遍称之为微控制器。鉴于他完全作嵌入式应用,故又称为嵌入式微控制器单片机应用系统是以单片机为核心,配以输入、输出、显示、控制等外围电路和软件,能实现一种或多种功能的实用系统。 单片微机从体系结构到指令系统都是按照嵌入式应用特点专门设计的,它能最好地满足面对控制对象,应用系统的嵌入、现场的可靠运行以及非凡的控制品质等要求。 自从20世纪70年代推出单片机以来,作为微型计算机的一个分支,单片机经过30多年的发展,已经在各行各业得到了广泛的应用,由于单片机具有可靠性高、体积小、干扰能力强、能在恶劣的环境下工作等特点,具有较高的性价比,因此广泛应用于工业控制、仪器仪表智能化,机电一体化、家用电器等(1)工业控制:工业设备如机床、锅炉、供水系统、生产自动化、自动报警系统等。 (2)智能设备:用单片机改造普通仪器如:仪表、读卡器、医疗器械。 (3)家用电器:如高档洗衣机、电冰箱、微波炉、电视、音响、手机、空调器。 (4)商用产品:如自动售货机、电子收款机、电子秤。 (5)通信方面。用于调制解调器、程控交换技术以及各种通信设备。 (6)多机分布式系统。可用单片机构成分布式测控系统,它使单片机进入 了一个新的水平。

单片机跑马灯c语言程序

#include //头文件 #define uchar unsigned char //宏定义 sbit Beep = P3^4; // 蜂鸣器 uchar code led[]={ 0xff,0xfe,0xfd,0xf7,0xef,0xbf,0x7f,0x00 }; /**********延时子函数************/ void delay(unsigned int time) { unsigned int i,j; for(i=0;i0;j-=2) { P0 = led[j]; delay(500); } for(j=5;j>0;j-=2) { P0 = led[j]; delay(500); } } } /*****************计数器中断1***************/ void inttre() interrupt 3

{ unsigned int i,j; i=10; for(j=0;j<10;j++) { Beep=1; delay(i); Beep=0; delay(i); i+=60; } } /*******************外部中断1***************/ void inttrer() interrupt 2 { unsigned int i; for(i=1;i<7;i++) { P0 = led[i]; delay(500); } }

相关文档
相关文档 最新文档