单片机应用课程设计Word文档下载推荐.docx

上传人:b****6 文档编号:19569725 上传时间:2023-01-07 格式:DOCX 页数:16 大小:854.33KB
下载 相关 举报
单片机应用课程设计Word文档下载推荐.docx_第1页
第1页 / 共16页
单片机应用课程设计Word文档下载推荐.docx_第2页
第2页 / 共16页
单片机应用课程设计Word文档下载推荐.docx_第3页
第3页 / 共16页
单片机应用课程设计Word文档下载推荐.docx_第4页
第4页 / 共16页
单片机应用课程设计Word文档下载推荐.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

单片机应用课程设计Word文档下载推荐.docx

《单片机应用课程设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《单片机应用课程设计Word文档下载推荐.docx(16页珍藏版)》请在冰豆网上搜索。

单片机应用课程设计Word文档下载推荐.docx

系〔部〕主任

注:

1、此表一组一表二份,课程设计小组组长一份;

任课教师授课时自带一份备查.

2、课程设计结束后与“课程设计小结〞、“学生成绩单〞一并交院教务存档.

1.设计方案1

1.1系统方案选择1

1.2系统构成框图3

2.系统设计5

2.1硬件原理5

2.1.1硬件组成介绍5

2.1.2电路各局部功能原理6

2.2软件流程11

2.3实验与仿真16

2.4实物图17

附录1焊接电路图17

附录2心得体会18

基于单片机红外遥控LED灯限制系统设计与实现

1.设计方案

该设计由硬件和软件共同组成.首先是硬件局部,该系统的最终实现选用的单片处理器〔89S52〕、键盘、LED显示、单片机的串行接口电路.因此应充分了解单片机,包括存储空间,并行口,用行口,串行通信,定时器等,掌握非编码键盘和LED的动态

显示,并要在充分满足系统可实现的功能的根底上考虑到器件的价格,制版的复杂度和

软件的实现难度.其次是软件局部,该系统的软件环境是S52,因此应了解S52的编程

方法,常用的一些编程技巧,调试运行程序,尽量使程序简洁,易懂,便于移植,编译效率高,健壮性好.为了用计算机解决某一具体问题或实现某一特定的功能,总要先对

问题或功能要求进行分析,确定相应的算法和步骤,然后选择相应的指令,并按一定的顺序排列起来,这就构成了解决某一问题或实现某一特定功能的应用程序.编制好的程

序通过仿真器进行调试,将调试成功的程序通过T写入器写入到芯片AT89S52中,最后把芯片AT89S52®

入连接完毕的硬件系统中投入实际使用.

1.1系统方案

〔1〕红外编码和发射局部

方案:

微处理器单独解决方案.电路如图〔a〕所示.

该方案使用微处理器的I/O口直接产生38KHz已调波,驱动红外发光二极管,发射红外数据.38KHZTJ波由CPU勺定时器产生或由软件编程产生.红外编码工作由软件完成,因此,红外编码方案可以任意设计,外部只需配接非常简单的硬件电路,大大降低了了电路的复杂性,有利于降低本钱,减小遥控器的体积.由于使用软件编码方案,占用了CPU勺一定的时间,CPUt理速度受到一定的影响,但是,对于遥控器这一类功能比拟单一的系统来说,处理任务比拟少,根本影响不了CPU勺处理效率,仅仅是增加了软件编程的负担.

〔2〕红外接收和解码局部

集成电路解决方案,电路如图〔b〕所示.

该方案使用一体化红外接收器,集红外接收和放大于一体,不需任何外接元件,就能完成从红外接收到输出与TTL电平兼容的所有工作,而体积和普通的塑封三极管大小一样.

⑶器件选择:

采用12MHz的晶振;

红外接收端采用价格廉价,性能可靠的一体化红外接收头:

HSOO38采用89S52进行限制;

限制方面采用小灯进行模拟.

1.2

系统构成框图

2.系统设计

系统工作原理:

红外遥控有发送和接收两个组成局部:

发送端采用单片机将待发送的二进制信号编码调制为一系列的脉冲用信号,通过红

外发射管发射红外信号.红外接收端普遍采用价格廉价,性能可靠的一体化红外接收头(如HSOO38它接收红外信号频率为38KHz周期约26US成收红外信号,它同时对信号进行放大、检波、整形,得到相应电平的编码信号,再送给单片机,经单片机解码并执行,去限制相关对象.

(1)二进制信号的编码

本设计采用不同的脉宽宽度来实现二进制信号的编码,可由发送单片机来完成.用图2-1(a)表示二制信号中的高电平’1'

其特征是脉冲中低电平的宽度等于0.26ms,相当于10个26us的宽度,高电平的宽度等于0.52ms,相当于20个26us的宽度;

用图2-1(b)表示二进制信号中的低电平'

0'

其特征是脉冲中高电平的宽度等于0.26mS,而低电平的宽度是高电平的二倍,等于0.52ms,相当于20个26us的宽度.上述10个和20个脉冲宽度还可适当调整,以适应不同数据传输速度的需要.

图2-1(a)'

1'

的表示图2-1(b)'

的表示

(3)二进制信号的解调

二进制信号的解调由一体化红外接收头HSOO38fe完成,它把收到的红外信号(图

2-2中波形D,经内部处理并解调复原,输出图2-2中波形E,HS0038的解调可理解为:

在输入有脉冲用时,输出端输出低电平,否那么输出高电平.二进制信号的解码由接收单片机来完成的它把红外接收头送来的二进制编码波形通过解码,复原出发送端发送的数

据.如图2-2,把波形E解码后复原成数据信息101

D、红外接收头接收的波形〔输入〕

E、解调后的输出波形

图2-2、HS0038的输入输出波形

〔4〕基于字节传输的红外遥控数据格式

在发送字节的开始先通过单片机发送20个脉冲宽度〔每个脉冲周期26uS〕的高电平作为传输开始,接着发送8位数据〔字节高位在前,低位在后〕,最后发送10个脉冲宽度的低电平作为传输结束,如图2-3所示.

传输开始8位数据传输结束

20个脉冲高位在前,低位在后10个脉冲

图2-3基于字节传输的红外遥控数据格式

2.1硬件原理

2.1.1硬件组成介绍

LE*灯显示电路:

LED彩灯显示电路〔如下图〕实际上是由8个发光二极管和8个电阻构成的电路.发光二极管与电阻对应用联,然后接在与之相对应的P2口上.通过软件编程对P2口输出上下电平来实现不同的闪烁花型.由于发光二极管的导通电压一般为1.7V以上,另

外,他的工作电流根据型号不同一般为1m幅J30mA电阻选择范围100欧姆〜3千欧姆在此我们这里选用560欧姆的电阻.

新型LED彩灯系统包括2大局部,即LED彩灯限制器〔89C51主控模块〕和LED彩灯管〔管内LED板模块〕.前者是主控模块,具有按键、显示等功能,并利用89C51的P口输出限制信号;

后者是受控模块,上面焊有三色LED彩灯和信号驱动芯片,模块置于LED的透明灯管内.

彩灯限制器可直接与220V交流市电相连接,经过开关电源变换,输出直流工作电压,一方面为管内LED模块提供12V工作电源,另一方面为主控模块单片机系统(彩灯限制器)提供5V工作电源.整个系统工作由软件程序限制运行,根据需要,用户可以在LED彩灯工作时通过主控模块上的按键来设定亮灯时间和灯光闪动频率.芯片AT89S52

(1)主要性能:

与MCS-5律片机产品兼容、8G节在系统可编程Flash存储器、1000次擦写周期、全静态操作:

0Hz〜33Hz、三级加密程序存储器、32个可编程I/O口线、三个16位定时器/计数器、八个中断源、全双工UART行通道、低功耗空闲和掉电模式、掉电后中断可唤醒、看门狗定时器、双数据指针、掉电标识符.

(2)功能特性描述:

At89s52是一种低功耗、高性能CMOS8微限制器,具有8K在系统可编程Flash存储器.使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容.片上Flash允许程序存储器在系统可编程,亦适于常规编程器.在单芯

片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S5为众多嵌入式限制应用系统提供高灵活、超有效的解决方案.AT89S52具有以下标准功能:

8k字节Flash,256字节RAM32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工用行口,片内晶振及时钟电路.另外,AT89S52

可降至0Hz静态逻辑操作,支持2种软件可选择节电模式.空闲模式下,CPU停止工作,允许RAM定时器/计数器、串口、中断继续工作.掉电保护方式下,RAMJ容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止.8位微限制

器8K字节在系统可编程FlashAT89S52

(3)管脚说明:

P0口:

P0口是一个8位漏极开路的双向I/O口.作为输出口,每位能驱动8个TT出辑电平.对P啾口写“1〞时,引脚用作高阻抗输入.当访问外部程序和数据存储器时,

P0口也被彳^为低8位地址/数据复用.在这种模式下,P0具有内部上拉电阻.

在flash编程时,P0口也用来接收指令字节;

在程序校验时,输出指令字节.程序校验时,需要外部上拉电阻.P1口:

P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平.对P1端口写“1〞时,内部上拉电阻把端口拉高,此时可以作为输入口使用.作为输入使用时,被外部拉低的引脚由于内部电阻的

原因,将输出电流〔IIL〕.止匕外,P1.0和P1.2分别作定时器/计数器2的外部计数输入〔P1.0/T2〕和时器/计数器2的触发输入〔P1.1/T2EX〕,具体如下所示.

在flash编程和校验时,P1口接收低8位地址字节.

引脚号第二功能

P1.0T2〔定时器/计数器T2的外部计数输入〕,时钟输出

P1.1T2EX〔定时器/计数器T2的捕捉/重载触发信号和方向限制〕

P1.5MOSI〔在系统编程用〕

P1.6MISO〔在系统编程用〕

P1.7SCK〔在系统编程用〕

P2口:

P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平.对P2端口写“1〞时,内部上拉电阻把端口拉高,此时可以作为输入口使用.作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流〔IIL〕.在访问外部程序存储器或用16位地址读取外部数据存储器〔例如执行MOVX@DPTR,P2口送出高八位地址.在这种应用中,P2口使用很强的内部上拉发送1.在使用8位

地址〔如MOVX@RI访问外部数据存储器时,P2口输出P2锁存器的内容.

在flash编程和校验时,P2口也接收高8位地址字节和一些限制信号.

P3口:

P3口是一个具有内部上拉电阻的8位双向I/O口,p2输出缓冲器能驱动4个TTL逻辑电平.对P3端口写“1〞时,内部上拉电阻把端口拉高,此时可以作为输入口使用.作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流〔IIL〕.P3口亦彳^为AT89S5的殊功能〔第二功能〕使用.

在flash编程和校验时,P3口也接收-一些限制信号.

〔4〕振荡器特性:

XTAL1和XTAL2分别为反向放大器的输入和输出.该反向放大器可以配置为片内振荡器.石晶振荡和陶瓷振荡均可采用.如采用外部时钟源驱动器件,XTAL2s不接.有

余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要

求,但必须保证脉冲的上下电平要求的宽度.

〔5〕时钟电路

时钟电路是计算机的心脏,它限制着计算机的工作节奏.MCS-5第片机允许的时钟频率是因型号而异的典型值为12MH

MCS-5内部都有一个反相放大器,XTAL1XTAL吩别为反相放大器输入和输出端,外接定时反应元件以后就组成振荡器,产生时钟送至单片机内部的各个部件.AT89S52是属于CMOS8微处理器,它的时钟电路在结构上有别于NMOS的单片机.

CMOS单片机内部〔如AT89S52有一个可控的负反应反相放大器,外接晶振〔或陶瓷谐振器〕和电容组成振荡器,图3—1为CMC亶单片机时钟电路框图.振荡器工作受/PD端限制,由软件置“1"

PD〔即特殊功能存放器PCON.1使/PD=0,振荡器停止工作,整个单片机也就停止工作,以到达节电目的.清“0"

PD使振荡器工作产生时钟,单片机便正常运行.图中SY矽晶振或陶瓷谐振器,振荡器产生的时钟频率主要由SYS^数确定〔晶振上标明的频率〕.电容C1WC加作用有两个:

其一是使振荡器起振,其二是对振荡器的频率f起微调作用〔C1、C以,£

变小〕,其典型值为30pF.

〔6〕复位电路

计算机在启动运行时都需要复位,使中央处理器CPU口系统中的其它部件都处于一个确定的初始状态,并从这个状态开始工作.

MCS-5隼片机有一个复位引脚RST它是史密特触发输入〔对于CHMOS片机,RST引脚的内部有一个拉低电阻〕,当振荡器起振后,该引脚上出现2个机器周期〔即24个时钟周期〕以上的高电平,使器件复位,只要RS琛持高电平,MCS-5保持复位状态.此时ALEPSENP0P1、P2、P3g口都输出高电平.RS夜为低电平后,退出复位,CP瞅初始状态开始工作.

本设计采用的复位方式是自动复位方式.对于MOS〔AT89S521l片机只要接一个电容至McW可〔见图2-4〕.在加电瞬间,电容通过电阻充电,就在RSTg出现一定时间的高电平,只要高电平时间足够长,就可以使MCS-5有效的复位.RSTg在加电时应保持的高电平时间包括%由勺上升时间和振荡器起振的时间,Ms上升时间假设为10m6振荡器起振的时间和频率有关.10MHZ^^为1ms,1MHZ■约为10m6所以一般为了可靠的复位,RST在上电进应保持20m以上的高电平.RC寸间常数越大,上电进RS瑞H呆持高电平的时间越长.

假设复位电路失效,加电后CP以一个随机的状态开始工作,系统就不能正常运转.

图2-4接收器HS0038

一体化红外接收头HSOO3的外部结构如图2-5所示,1脚GN池电源地,2脚VCC

接十SV3脚OUT为数据卒&

出端(TTL电平,反相输出),可直接与单片机相联.以HSOO38

作为红外接收头,介绍了红外遥控信号的单片机软件编码解码方法,包括编码、调制和解码的原理,以及硬件电路和程序实现.经实验测试,该方法能使红外遥控信号可靠发

送和接收,并执行相应的功能

图2-5HS0038的外观及引脚

3

2.1.2电路各局部功能原理

(1)接收电路原理图如图2-6所示:

图2-6接收电路原理图

各个根本电路图的设计

Title

(3)限制电路:

采用小灯的亮灭来模拟实际应用中的电路,电路如图2-8所示

图2-8小灯限制电路

2.2软件流程

单片机的应用系统由硬件和软件组成,上述硬件原理图搭建完成上电之后,我们还不能看到多限制、多闪烁方式的LED丁系统循环点亮的现象,我们还需要告诉单片机怎么样进行限制,即编写程序限制单片机管脚电平的上下变化,来实现发光二极管的明灭.软件编程是多限制、多闪烁方式的LED灯系统中的一个重要的组成局部,是本设计的重点和难点.下面,我将阐述多限制、多闪烁方式的LED灯系统是如何实现,软件局部的主要任务是完成对光照检测电路和对热释电传感器信号处理电路的输出信号进行处理.如

在光照较强时,系统继续对光照检测电路的输出状态进行检测.光照较弱时,系统对信“:

Date:

File:

号处理电路的输出状态Vo进行检测.假设室内有人时Vo为高电平,系统限制照明设备点5

亮并按设定的时间进行延时.在延时时间内再一次检测到有人时,那么系统又按设定的时间进行延时;

假设在延时时间内检测到室内无人时,那么系统限制照明设备熄灭并重新对信

号处理电路的输出状态Vo进行检测.基于上述分析,系统软件设计流程如图2-9所示.

开始

图2-9、流程图:

程序如下:

#include<

reg51.h>

intrins.h>

#defineucharunsignedcharuchardistemp;

sbitIRIN=P3A3;

ucharIRCOM[7];

table1[]={0xff,0x00,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0x00};

table2[]={0xfc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f,0x7e,0xfc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f};

table3[]={0xaa,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xdb,0xbd,0x7e,0x55,0xff,0x00};

Unsignedchar

table4[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x83,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};

voiddelay(unsignedcharx)//x*0.14MS

{

unsignedchari;

while(x--)

for(i=0;

i<

13;

i++){}

}

}/**********************************************************/voidDelay100ms(ucharx)//@11.0592MHz

unsignedchari,j,n;

for(n=0;

n<

x;

n++)

{i=180;

j=73;

do{while(--j);

}while(--i);

***************************************************************

intmain()

IE=0x84;

TCON=0x10;

IRIN=1;

Delay100ms

(1);

P2=0xff;

while

(1);

I********************************************************,

voidIR_IN()interrupt2

unsignedcharj,k,N=0,i=0;

EX1=0;

delay(15);

if(IRIN==1)

{EX1=1;

return;

while(!

IRIN)

{delay

(1);

for(j=0;

j<

4;

j++)

for(k=0;

k<

8;

k++)

while(IRIN)

delay

(1);

N++;

if(N>

=30)

IRCOM[j]=IRCOM[j]>

>

1;

=8){IRCOM[j]=IRCOM[j]|0x80;

}N=0;

if(IRCOM[2]!

=〜IRCOM[3])

switch(IRCOM[2]

{case0x16:

{for(;

11;

i++)

{P2=table1[i];

P1=table4[0];

Delay100ms(10);

}};

break;

case0x0c:

15;

{P2=table2[i];

P1=table4[1];

case0x18:

12;

{P2=table3[i];

P1=table4[2];

};

case0x5e:

{P1=table4[3];

case0x08:

{P1=table4[4];

case0x1c:

{P1=table4[5];

case0x5a:

{P1=table4[6];

);

case0x42:

{P1=table4[7];

);

case0x52:

{P1=table4[8];

case0x4a:

{P1=table4[9];

EX1=1;

.3实验与仿真

根据系统设计方案,本系统的调试共分为三大局部:

硬件调试,软件调试和软硬件联调.由于在系统设计中采用模块设计法,所以方便对各电路模块功能进行逐级测试:

LED驱动模块的调试,单片机最小系统的调试,最后将各模块组合后进行整体测试[10].

硬件调试:

对各个模块的功能进行调试,主要调试各模块能否实现指定的功能.

软件调试:

软件调试采用仿真软件Proteus6.9SP4,将程序调入MCS-51单片机实验系统进行编译,然后调入仿真软件Proteus6.9SP4中运行,主要是检查语法错误,程序在硬件上的可执行性.

硬件软件联调:

将调试好的硬件和软件进行联调,主要调试系统的实现功能.即仿真图如2-10所示

图2-10仿真图

经过测验,红外遥控信号的发送和接收没有出现传输误码,发光二极管可以准确地显示发射信号,可靠使用,在编码解码方面降低了硬件本钱.假设在数据传输协议中,加上地址帧〔设备号识别〕和校验帧,该方法在计算机系统中将有更广泛的应用.

附焊接后电路板的正反两面图.

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

当前位置:首页 > 幼儿教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1