- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
湖 南 大 学
课设题目: 振动传感警报装置
学生姓名: 邹 雄
专业班级: 信 息 安 全 一 班
学号: 201208060128
学院: 信息科学与工程学院
“振动传感警报装置”设计报告说明
:设计思路和方法
“警报器”是利用流水灯、振动传感器、无源蜂鸣器组成的一种装置,当振动传感器受到振动时,流水灯和蜂鸣器会同时工作,以此来提醒客户;而客户可通过按钮Key1能够停止其工作或等待歌曲播放完为止,而按下复位键后再次振动其又会工作。
:“警报器”电路原理图
:电路工作原理
振动传感器是一种简单的器件,管内有一跟固定的导线,在这根导线的周围有另一根较细的导线以螺旋状环绕它。可以想象为一个弹簧中间有一跟导线。在不震动时,两根导线不会相碰,一旦振动发生,两根导线就会短接。所以我们只需判断导线是否短接了,就可以知道振动是否发生。
P0口的8位输出分别控制8个发光二极管L0~L7的阳极;而P2.3经反相器U4C控制8个发光管阴极E3;电阻R15~R22为限流电阻。当振动传感器短接时,对应的二极管将会发光。
只需改变Beep端口的电平,产生一个周期性的方波即可使蜂鸣器发生声音,不同的频率发出的声音不同。其中,ULN2003是一个功放,用于放大电流。电阻R14和电容C21是用来保护电路的。若人为将Beep端口的电平一直置为高电平,在没有保护电路的情况下,容易烧毁电路,但即使有保护电路也应该注意不要讲Beep端口长时间之余高电平,这对器件也是有一定损害的。
每一个音符的发声频率是不同的,我们需要用计时器来精确计时,用以产生方波,这样才能发出不用的音符声音。C调各音符频率与计数值如下图所示,以下的简谱码是在晶振为12MHz的情况下计算的,换算为16进制的简谱码如程序中quzi[]数组所示。
本程序中,数组music[]即是要播放的音乐,格式为音符,节拍,音符,节拍,如此循环下去。音符为要发出的音调,而节拍则是声音的持续时间。如图,在数组music[]中,音符表示的格式为:十位代表是低八度,中八度还是高八度,1代表高八度,2代表中八度,3代表高八度,个位代表简谱的音符,例如,0x15代表低八度的S0,如图即是低5 S0,0x21代表中八度的DO,如图即是中1 D0。音符中,0x00代表结束符,表示整首歌曲演唱完毕,而0xff代表休止符,表示要休止100ms。遇到这两种情况,都应该重新执行循环中的第一步。其余情况则是正常播放。程序烧入单片机后,需要振动传感器振动才会进行演奏。
:程序总框图设计流程
:相关寄存器及IO引脚的配置
1. P0(8位)和P2.3需要设置成推挽输出,以驱动电路正常发光。涉及寄存器及配置值如下:
P2M1=0x00;
P2M0=0xff;
P0M1=0x00;
P0M0=0xff;
2.蜂鸣器引脚:
sbit beep=P3^4; //蜂鸣器
3.按键1引脚:
sbit key1=P3^2; //定义按键1
4.振动传感器引脚:
sbit vibrate=P2^4; //振动传感器
(六):详细设计参见后续工程代码
(七):测试方法
1. 用STC ISP默认设置,打开工程中的HEX并下载;
2. 敲动一下振动传感器,流水灯随着蜂鸣器的歌曲节奏从右至左依次闪动;
3. 按下Key1键,蜂鸣器及流水灯均都停下工作。
源代码:
#include STC15F2K60S2.h
#define uint unsigned int
#define uchar unsigned char
sbit beep=P3^4; //蜂鸣器
sbit Key1=P3^2; //Key1对应触发外部中断0
sbit vibrate=P2^4; //振动传感器
/**********************
引脚别名定义
***********************/
sbit Led_sel=P2^3;
/**********************
变量定义
***********************/
uchar G_value;
uchar timeh,timel,zanting=0; //定义定时器的重装值
uchar code music[] ={ //音乐
您可能关注的文档
最近下载
- 北京市第四中学2024-2025学年高二上学期期中考试化学试卷(含答案).docx VIP
- 电动自行车用锂离子电池和电池组 技术规范.docx VIP
- 胃肠疾病的超声诊断答案-2025年度华医网继续教育.docx VIP
- 英文电影赏析(共46张精品课件).ppt VIP
- 人工智能在医疗行业的应用PPT .pptx
- 小学道德与法治五年级上册第四单元《骄人祖先-灿烂文化》整体教学设计.docx
- 坏死性筋膜炎.ppt
- 网络操作系统(Windows Server 2008)课件(共13单元)项目8、配置DNS服务器.ppt VIP
- 10S505柔性接口给水管道支墩图集.docx
- 一种用随机点尿来评估高血压患者每日食盐量的方法.pdf VIP
文档评论(0)