任务29 声光报警器设计与实现[12页]

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
08:42 / 4
声光报警器介绍
声光报警器(Audible and visual alarm)又叫声光警号, 是为了满足 客户对报警响度和安装位置的特殊要求而设置。同时发出声、光二种警 报信号。产品专用领域:钢铁冶金、电信铁塔、起重机械、工程机械、 港口码头、交通运输、风力发电、远洋船舶等行业;是工业报警系统中 的一个配件产品。
TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure);
//按上述配置初始化TIM3
TIM_ITConfig(TIM3,TIM_IT_Update,ENABLE);
//允许定时器3更新中断
TIM_Cmd(TIM3, ENABLE);
// 使能TIM3
}
08:42 / 10
//子优先级1
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
//使能中断
NVIC_Init(&NVIC_InitStructure);
//按照上述配置初始化中断
TIM_TimeBaseStructure.TIM_Period = 1999;
//计数器重装值
Internet+ Education Solutions
基于STM32嵌入式接口开发与应用
任务29 声光报警器设计与实现
ห้องสมุดไป่ตู้
目录 Contents
项目场景说明 声光报警器介绍 项目实践
Education Solutions
Internet+
项目场景
声光报警器(Audible and visual alarm) 又叫声光警号, 是为了满足客户对报警 响度和安装位置的特殊要求而设置。同时 发出声、光二种警报信号。
//设置引脚速率为2MHz
GPIO_Init(GPIOB, &GPIO_InitStructure);
//初始化GPIO配置
GPIO_SetBits(GPIOB,GPIO_Pin_8 | GPIO_Pin_9 |
GPIO_Pin_10 | GPIO_Pin_11);
08:42 / 9
项目实现
声光报警传感器初始化
项目实现
声光报警控制驱动
void alarm_control(unsigned char cmd) { if(cmd & 0x01) alarm_flag = 1; else alarm_flag = 0; }
08:42 / 11
项目思考
声光报警器在日常生活的应用场景? 声光报警器如何模拟不同的特殊声光警示?
08:42 / 12
08:42 / 5
项目分析
本项目设计中主要是RGB灯与蜂鸣器联 合的使用,硬件结构主要由 STM32F407、RGB灯与蜂鸣器、串口 和LCD屏幕组成。
本次声光报警器开发实例所使用的声光 传感器使用蜂鸣器和RGB灯进行模拟, 其中蜂鸣器模式喇叭,RGB灯模拟彩灯。
STM32 LCD屏
串口 RGB灯&蜂鸣器
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
//设置引脚模式为输出模式
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_DOWN;
//设置引脚为下拉模式
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8 | GPIO_Pin_9 |
GPIO_Pin_10 | GPIO_Pin_11;
//选择要控制的GPIO引脚
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
//设置引脚的输出类型为推挽
//定时器配置
NVIC_InitTypeDef NVIC_InitStructure;
//中断配置
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE);
//开启RGBLight的GPIO外设时钟
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE);
NVIC_InitStructure.NVIC_IRQChannel = TIM3_IRQn;
//TIM3中断通道
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
//抢占优先级0
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;
TIM_TimeBaseStructure.TIM_Prescaler = 8399;
//预分频值
TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1;
//时钟分割
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; //计数模式
08:42 / 6
项目硬件图
RGB与蜂鸣器原理图
08:42 / 7
声光报警控制程序逻辑
开始 定义状态变量为0
初始化延时 初始化按键 初始化LCD 初始化串口 初始化传感器
状态为0
是 LCD显示数据
否 LCD显示数据
串口打印信息
串口打印信息
状态改为1
状态改为0
状态为1 打开报警器
状态为0 关闭报警器
延时5s
08:42 / 8
项目实现
声光报警传感器初始化
void alarm_init(void){
GPIO_InitTypeDef GPIO_InitStructure;
//定义一个GPIO_InitTypeDef类型的结构体
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
当生产现场发生事故或火灾等紧急情况时, 火灾报警控制器送来的控制信号启动声光 报警电路,发出声和光报警信号,完成报 警目的。也可同手动报警按钮配合使用, 达到简单的声、光报警目的。
08:42 / 3
任务目标
某公司要生产一款消防声光报警器,该设备使用RGB灯与蜂鸣器进 行模拟控制,单片机接收到警示触发信号时,立即触发声光报警设 备。
相关文档
最新文档