云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 本科毕业设计__基于单片机的温度报警器设计(方案)

本科毕业设计__基于单片机的温度报警器设计(方案)

  • 62 次阅读
  • 3 次下载
  • 2025/7/9 2:30:28

(二)按键检测设计

按键是基本方便的输入手段,可通过按键开关控制发光二极管的亮灭来,说明AVR单片机的端口检测外部信号的功能和方法。

1、单按键的电路

典型的单按键的电路如图6-7所示,在按键没有按下时,PA5引脚信号为高电平,当按键按下时PA5引脚信号为低电平。通过检测引脚的电平会方便的知道按键的状态。

图14 按键电路

我们日常所说的按键,外观如图6-8所示,有四个脚。按键两侧的脚是连通的,之所以做成四个脚,是为了安装牢固。

图15 按键开关

2、按键的响应过程

理想的按键的闭合和断开时,接触点的电压应该立即变高或者变低,但是由于机械触点的弹性以及按键按动时电压突变等原因,在触点闭合或断开的瞬间会出现电压抖动现象,如图6-9所示。在发生抖动的时间一般在5-10ms。

一次按键处理过程如下:当按键按下之后,相应的按键接触点的电压以高低电平的方式输入到单片机的I/O口。按键的闭合与断开是有一定时间的,一般为

0.1-1S。而AVR单片机的机器周期一般为1us甚至更短,在0.1-1S的时间段内,程序会检测很多次按键的输入电平,这样单片机可能会认为按键被按下了多次,从而出现误判。

图17 按键闭合断开时的电压波动示意图 3、按键去抖动的方法和原理

为了去除按键的抖动,保证单片机对按键的一次输入只响应一次,可以采用硬件和软件两种方法:硬件电路去抖动是在外围电路中加入去抖动电路(如R-S触发器);软件去抖动是在程序中加入延时程序以跳过抖动时间,等待信号稳定后再次判断按键的输入电平,如果信号电平保持不变,则可以确认一次按键按下。

●硬件去抖动电路的原理

用R-S触发器形成去抖电路是单片机外围电路设计中常用的方法,这种方法可以减少单片机软件对按键动作的延时和计算。典型的硬件去抖动电路如图6-10,74LS02构成一个R-S触发器电路实现按键的消抖电路。

图6-10 74LS02实现的硬件消抖电路

●软件消抖的原理和实现

软件消抖的基本原理是在软件中对按键进行两次检测确认,记载第一次检测到按键按下后,间隔10ms左右再次检测按键是否按下,只有在两次都检测到按

键按下时才最终确认有键按下,这样就避开了按键的抖动时间,从而消除了抖动的影响。

在按键接口软件的设计中,除了要考虑按键消抖外,一般还要判别按键的释放,只有检测到按键释放后,才能确定为一次完整的按键动作。 通用的案件检测程序如下:

Keyscan() {

if((PINA&0X20)==0) //判断按键是否按下,等于0表示按键按下 {

delayms(20); //延时20ms。避开按键抖动时间 if((PINA&0X20)==0) //再次判断按键是否按下, {

… //按键按下的处理程序 } }

While((PINA&0X20)==0); //判断按键是否放开,不等于表示按键释放,退出处理函数 }

(三)1-wire 是一种通讯协议实现

对18b20的操作实质是1-wire 是一种通讯协议。1-wire 是一种通讯协议,它只有一个信号线,信号线即可以进行输入也可以进行输出操作。在此基础上进行移植,在实际应用过程中意义重大。

而以往使用AVR进行引脚操作时,一个引脚要么输入、要么输出。在1-wire下,一个引脚既要实现输入操作、也要实现输出操作,因而需要对DDR操作进行深入的了解,认识DDR操作对引脚电平的影响。

1-wire通讯协议基本基本操作包括复位、写数据位、读位数据。8个位操作形成字节数据的读写,所有操作都在复位后才可以开始。 1、复位时序

对DS18B20进行所有操作之前,首先要将它复位。复位时序图6-11如下:

图18 复位时序图

(1)主机将信号线置为低电平,时间为480~960μS。 (2)主机将信号线置为高电平,时间为15~60μS。

(3)从机(DS18B20)发出60~240μS 的低电平作为应答信号,后释放信号线,信号线恢复为高电平。主机收到此信号后,才能认定复位操作完成,可以对DS18820进行其它操作。

2、对DS18B20操作的宏复位的实现代码

为实现代码的可移植性,实现对DS18B20的操作代码前,定义如下宏。 #define OW_PIN PD0 #define OW_IN PIND #define OW_OUT PORTD #define OW_DDR DDRD

#define OW_GET_IN() ( OW_IN & (1<

#define OW_OUT_LOW() ( OW_OUT &= (~(1 << OW_PIN)) ) #define OW_OUT_HIGH() ( OW_OUT |= (1 << OW_PIN) ) #define OW_DIR_IN() ( OW_DDR &= (~(1 << OW_PIN )) ) #define OW_DIR_OUT() ( OW_DDR |= (1 << OW_PIN) ) 3、复位的实现代码 unsigned char ow_reset(void) {

unsigned char err;

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

(二)按键检测设计 按键是基本方便的输入手段,可通过按键开关控制发光二极管的亮灭来,说明AVR单片机的端口检测外部信号的功能和方法。 1、单按键的电路 典型的单按键的电路如图6-7所示,在按键没有按下时,PA5引脚信号为高电平,当按键按下时PA5引脚信号为低电平。通过检测引脚的电平会方便的知道按键的状态。 图14 按键电路 我们日常所说的按键,外观如图6-8所示,有四个脚。按键两侧的脚是连通的,之所以做成四个脚,是为了安装牢固。 图15 按键开关 2、按键的响应过程 理想的按键的闭合和断开时,接触点的电压应该立即变高或者变低,但是由于机械触点的弹性以及按键按动时电压突变等原因,在触点闭合或断开的瞬间会出现电压抖动现象,如图6-9所示。在发生抖

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com