单片机基于AT89C51的节日彩灯课程设计1 2修改版.docx

上传人:b****4 文档编号:4089763 上传时间:2023-05-06 格式:DOCX 页数:11 大小:653.73KB
下载 相关 举报
单片机基于AT89C51的节日彩灯课程设计1 2修改版.docx_第1页
第1页 / 共11页
单片机基于AT89C51的节日彩灯课程设计1 2修改版.docx_第2页
第2页 / 共11页
单片机基于AT89C51的节日彩灯课程设计1 2修改版.docx_第3页
第3页 / 共11页
单片机基于AT89C51的节日彩灯课程设计1 2修改版.docx_第4页
第4页 / 共11页
单片机基于AT89C51的节日彩灯课程设计1 2修改版.docx_第5页
第5页 / 共11页
单片机基于AT89C51的节日彩灯课程设计1 2修改版.docx_第6页
第6页 / 共11页
单片机基于AT89C51的节日彩灯课程设计1 2修改版.docx_第7页
第7页 / 共11页
单片机基于AT89C51的节日彩灯课程设计1 2修改版.docx_第8页
第8页 / 共11页
单片机基于AT89C51的节日彩灯课程设计1 2修改版.docx_第9页
第9页 / 共11页
单片机基于AT89C51的节日彩灯课程设计1 2修改版.docx_第10页
第10页 / 共11页
单片机基于AT89C51的节日彩灯课程设计1 2修改版.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

单片机基于AT89C51的节日彩灯课程设计1 2修改版.docx

《单片机基于AT89C51的节日彩灯课程设计1 2修改版.docx》由会员分享,可在线阅读,更多相关《单片机基于AT89C51的节日彩灯课程设计1 2修改版.docx(11页珍藏版)》请在冰点文库上搜索。

单片机基于AT89C51的节日彩灯课程设计1 2修改版.docx

单片机基于AT89C51的节日彩灯课程设计12修改版

单片机课程设计

设计说明书

设计题目:

基于AT89C51的节日彩灯设计

 

机械工程学院

机械维修及检测技术教育专业

机XXX

设计者:

XXXXXXXXXX

指导教师:

 

2014年06月17日

目录

一、课程设计总体硬件部分说明1

1.1单片机概述1

1.2AT89C51芯片概述1

1.2.1AT89C51芯片主要性能2

1.2.2管脚说明2

二、设计节日彩灯3

2.1节日彩灯硬件设计原理图:

3

2.2软件设计4

2.2.1程序框图4

2.2.2定时/计数器初值计算5

2.3程序编译:

5

2.4软件调试7

系统调试工具keilc517

三、心得体会与致谢7

四、参考文献7

一、课程设计总体硬件部分说明

1.1单片机概述

单片机因将其主要组成部分集成在一个芯片上而得名,具体说就是把中央处理器CPU(Centralprocessingunit)。

随机存储器RAM(Randomaccessmemory)。

只读存储器ROM(Readonlymemory)。

中断系统、定时器/计数器以及I\O(Input/output)接口电路等主要微型机部件集成在一个芯片上。

虽然单片机只是一个芯片,但从组成和功能上看它已具有了计算机系统的属性。

为此,称它为单片微型计算机SCMC(Singlechipmicrocomputer),简称单片机。

单片机主要应用与控制领域,用以实现各种测试和控制功能,为了强调起控制属性,也可以把单片机称为微控制器MCU(Microcontrollerunit)。

在国际上,“微控制器”的叫法似乎更通用一些,而在我国则比较习惯与“单片机”这一名称。

单片机在应用时,通常是处于控制系统的核心地位并融入其中,即以嵌入的方式进行使用,为了强调其"嵌入"的特点,也常常将单片机称为嵌入式微控制器EMCU(Embeddedmicrocontrollerunit)。

在单片机的电路和结构中,有许多嵌入式应用的特点。

1.2AT89C51芯片概述

AT89C51是一个低功耗,高性能CMOS8位单片机,片内含4kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89C51可为许多嵌入式控制应用系统提供高性价比的解决方案。

AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

其工作电压在4.5-5V,一般我们选用+5V电压。

外形及引脚排列如图二所示

1.2.1AT89C51芯片主要性能

·与MCS-51兼容

·4K字节可编程闪烁存储器

·寿命:

1000写/擦循环

·数据保留时间:

10年

·全静态工作:

0Hz-24MHz

·三级程序存储器锁定

·128×8位内部RAM

·32可编程I/O线

·两个16位定时器/计数器

·5个中断源

·可编程串行通道

·低功耗的闲置和掉电模式

·片内振荡器和时钟电路

1.2.2管脚说明

一、电源及时钟引脚(4个)

Vcc:

电源接入引脚

Vss:

接地引脚

XTAL1:

晶振震荡器接入的一个引脚(采用外部振荡器时,此引脚接地);

XTAL2:

晶体振荡器的另一个引脚(采用外部振荡器时,此引脚作为外部振荡器信号的输入端)。

二、控制线引脚(4个)

RST/Vpd:

复位信号输入引脚/备用电源输入引脚;

ALE:

地址锁存允许信号输出引脚/编程脉冲输入引脚:

EA:

内外存储器选择引脚/片外EPROM编程电压输入引脚;

PSEN:

外部程序存储器选通信号输出引脚。

3并行I/O引脚

P0.0-P0.7:

一般I/O口引脚或数据/低位地址总线复用引脚;

P1.0-P1.7:

一般I/O口引脚;

P2.0-P2.7:

一般I/O口引脚或高位地址总线引脚;

P3.0-P3.7:

一般I/O口引脚或第二功能引脚

三、单片机设计过程中用到的管脚说明:

1、VCC(40):

供电电压。

2、GND(20):

接地。

3、P1端口(P1.0-P1.7):

P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高电平,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH编程和校验时,P1口作为第八位地址接收。

4、P2端口(P2.0-P2.7):

P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的缘故。

P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

5、P3端口(P3.0-P3.7):

P3口管脚是一个带有内部上拉电阻的8位的双向I/O端口,可接收输出4个TTL门电流。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入端时,由于外部下拉为低电平,P3口将输出电流(ILL)。

P3口也可作为AT89C51的一些特殊功能口,其中P3.3可作为外部中断1输入。

6、XTAL1(19):

反向振荡放大器的输入及内部时钟工作电路的输入。

7、

 

XTAL2(18):

来自反向振荡器的输出。

8、EA(31):

外部程序存储器访问允许控制端。

打开PROTEUS的ISIS编辑环境,从PROTEUS中选取该电路所需要的元器件,放置元器件、放置电源和地、连线得到下图所示的电路原理图,再点菜单栏工具下拉的电气规则检查,当规则检查出现:

“NETLISTGENERATEDOKNOERCERRORDFOUND”,表示通过检查。

电路设计完成。

二、设计节日彩灯

2.1节日彩灯硬件设计原理图:

2.2软件设计

2.2.1程序框图

如图:

2.2.2定时/计数器初值计算

1、本电路应用定时器1中断,按方式1工作,将LED灯循坏点亮。

2、定时器/计数器的输入脉冲周期与机器周期一样,为振荡器频率的1/12本设计中时钟频率为12MHz,现在要采用中断方法来实现1s延时,要在定时器1中设置一个时间常数,使其每间隔0.02s产生一次中断,CPU响应中断后R0中计数值减一,令(R0)=50,即可实现1s的延时。

时间常数可按以下方法确定:

机器周期=12/晶振频率=12/12=0.001ms

定时器需设初值为X,则(2^16-X)*0.001=20ms

求出X=45998

转化为十六进制:

X=0B1DFH,故初始值为:

TH1=0B1H,TL1=0DFH

2.3程序编译:

ORG0000H

LJMPSTART

ORG001BH

LJMPINT

ORG4100H

START:

MOVA,#01H

MOVR1,#03H

MOVR0,#50

MOVTMOD,#10H

MOVTL1,#0DFH

MOVTH1,#0B1H

ORLIE,#88H

SETBTR1

LOOP1:

CJNER0,#00,DISP

MOVR0,#50

INCR1

CJNER1,#26H,LOOP2

MOVR1,#03H

LOOP2:

MOVA,R1

MOVCA,@A+PC

JMPDISP

DB01H,03H,07H,0FH,1FH,3FH,7FH,0FFH,0FEH,0FCH

DB0F8H,0F0H,0E0H,0C0H,80H,00H,0FFH,00H,0FEH

DB0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH,0BFH,0DFH

DB0EFH,0F7H,0FBH,0FDH,0FEH,00H,0FFH,00H

DISP:

MOVP1,A

JMPLOOP1

INT:

CLRTR1

DECR0

MOVTL1,#0DFH

MOVTH1,#0B1H

SETBTR1

RETI

END

2.4软件调试

系统调试工具keilc51

KeilC51仿真器是一款利用KEILC51的IDE集成开发环境作为仿真环境的廉价仿真器,是利用SST公司具有IAP功能的单片机SST89C58制作而成,主要是利用了SST89C58的IAP功能,所谓IAP功能是Inapplicationprogram的英文缩写,是在应用编程的意思,通俗一点讲就是:

它可以通过串口将用户的程序下载到单片机中,可以通过串口对单片机进行编程。

它之所以具有这种功能,实际上它有两块程序flash区,其中一块flash中运行的程序可以更改另外的一块程序flash区中的程序,正是利用这一特性才用它作成了仿真器,们把仿真器的监控程序事先烧入SST89C58,监控程序通过SST89C58的串口和PC通讯,用KEILC51的IDE环境仿真时,用户的程序通过串口被监控程序写入flash程序区中,当用设置断点等操作仿真程序时,flash程序中的用户程序也在相应的更改,从而实现了仿真功能。

调试的主要方法:

1.启动Keilc51

2.新建一个工程。

Project菜单——〉Newproject,选择好我们要保存的文件夹后,键入Frist保存。

接着弹出CPU类型选择框,我们选择最常用的AT89C51,按确定。

3.在工程中加入文件。

新建一个文件,文件菜单File——〉New,我们再选择:

文件菜单File——〉SaveAs?

(另存为)弹出对话框后,我们文件名框中键入First.c(注意文件后缀名是.c)保存。

C文件建好啦。

现在我们把文件加入到工程中去。

点击Target1前面的+号,右键单击SourceGroup1——〉选择AddFilestoGroup,SourceGroup1,选择添加Add。

编译运行,检查程序是否有错误。

三、心得体会与致谢

通过这次课程设计,使我收获颇多。

其中主要的是让我明白了由单片机构成的电路原理,以及单片机汇编语言和单片机C语言的编译过程,还有软硬件调试的过程和原理。

在这其中不仅让我深化了所学的知识,更重要的是让我整合了所学知识点,实现了知识的融合,调动了我的思维,真正让我增长了一次发现问题、分析问题、解决问题的经历。

我以后也肯定会把这次收获的经历应用到生活中。

同时,还要谢谢指导老师陈老师的指导与讲解,老师那认真细致的态度真正令我受益匪浅。

在这里我要郑重地感谢您,李彬老师!

四、参考文献

[1]李全利.单片机原理与应用技术[M].北京:

高等教育出版社,2008

[2]石从刚.MCS-51单片机原理与应用实验实训教程[M].北京:

北京航空航天大学出版

社,2007

[3]张毅刚彭喜元.单片机原理与应用设计[M].北京:

电子工业出版社,2008

[4]沈克永罗中华.单片机原理与应用[M].北京:

人民邮电出版社,2007

[5]陶春鸣.单片机实用技术[M].北京:

人民邮电出版社,2008

[6]倪志莲.单片机应用技术[M].北京:

北京理工大学出版社,2008

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2