基于STM32震动感应灯
元器件:1.震动感应器,继电器,LED灯等。
震动传感器:引脚VVC、GND、高低点位变化DO(接STM32的信号端)、AO模拟信号端(本实验未使用到)
其中实现的代码如下:
void Shake_Init (void)
{
GPIO_InitTypeDef Shake_init;
RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOA, ENABLE );//ʹÄÜAPB2µÄGPIOBʱÖÓ
//ÅäÖÃʱÖӽṹÌå
Shake_init.GPIO_Mode = GPIO_Mode_IPD;
Shake_init.GPIO_Pin = GPIO_Pin_1;
Shake_init.GPIO_Speed = GPIO_Speed_10MHz;
GPIO_Init( GPIOA, &Shake_init);//³õʼ»¯º¯Êý
}
mian函数:
int main()
{
Relay_init();
Shake_Init ();
GPIO_SetBits(GPIOA,GPIO_Pin_3);
while(1)
{
if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_1) == 0)
{
GPIO_ResetBits(GPIOA,GPIO_Pin_3);
delay(9999);
GPIO_SetBits(GPIOA,GPIO_Pin_3);
}
else
{
GPIO_SetBits(GPIOA,GPIO_Pin_3);
}
}
}
本实验要调用库函数GPIO_ReadInputDataBit()对CPIOA的1号引脚的高低电平的读取,如果发声震动,则是低电平,读到低电平,32上的板子3号引脚会发信号给继电器会供电,使得灯亮起来。
基于STM32震动感应灯相关推荐
- stm32震动感应灯
1.先上图 2.接线图 3.实现效果 触碰一下震动传感器,灯亮起,过一会儿灯熄灭 4.原理 当震动传感器io为低电平打开继电器,高电平关闭继电器,触碰震动传感器时io接收低电平. 5.应用模块 继电器 ...
- STM32震动感应控制继电器(使用循环VS使用外部中断EXTI和中断控制器NVIC)
参考:stm32的外部中断 震动感应 控制 继电器 作者:点灯小哥 发布时间: 2021-03-05 22:37:01 网址:https://blog.csdn.net/weixin_46016743 ...
- 智能灯控制页面用HTML编写,一种基于STM32的智能灯控制系统的制作方法
本发明涉及电子系统控制领域,具体是一种基于STM32的智能灯控制系统. 背景技术: 随着我国教育业的发展,学校照明用电量急速增加,电能损失也呈现出增大的趋势.目前,国内外照明自动控制装置基本都采用被动 ...
- 433M射频遥控灯、震动感应灯、WIFI避障小车
目录 433M射频遥控灯 1. 433M射频灯的硬件连接 2. 具体接线剖析 3.课堂干货简述 4. 准备工作之环境搭建KEIL_ISP_USBTOTTL驱动 5. KEIL建立工程 6.电子可编程开 ...
- 基于STM32单片机流水灯仿真与程序设计
STM32单片机流水灯仿真与程序设计 摘要 本次程序设计和仿真是基于Proteus和keil的环境对STM32F103系列单片机进行流水灯设计,通过配置STM32的GPIO工作模式,实现LED的点亮和 ...
- stm32的简易小项目之震动感应灯
文章目录 一.原理 二.硬件 三.接口说明 四.源代码 五.中断配置 六.完整代码 一.原理 需要一个震动感应器来感应是否产生震动,然后把这个震动感应器作为GPIO输入,单片机来读取这个输入是否产生震 ...
- 基于stm32的流水灯实现
一.开发环境介绍 主控芯片: 正点原子STM32F103ZET6精英开发板 oled:中景园七针脚0.96寸oled 代码编程软件: keil5 代码下载地址: stm32流水灯项目 希望大家仔细看 ...
- Arduino 震动感应灯
先简单介绍下Arduino的库函数去哪里看 https://www.arduino.cc/ 这个是Arduino的官网网址 然后 查找Arduino库函数的方法就先介绍到这里 接下来就是接线 VCC接 ...
- 10-2 STM32制作感应灯
一:热释电红外传感器HC-SR505,在有人的时候会变为高,延时一段时间后变为低电平.同时在8s内触发不是很精确,所以可以通过一些操作延长每次高低电平检测的时间. #include "stm ...
最新文章
- centos7使用蓝牙_Nmon的使用和APP测试要点
- 无向图求割(找桥)tarjan
- FlashCache初体验
- 2020盲盒经济洞察报告
- [LeetCode]Power
- 学习Oracle的三重境界
- [SoapUI] context.expand 和 groovyUtils.getXmlHolder 有什么不一样
- Mysql DBA 高级运维学习之路-DML语句之insert知识讲解
- 关于软件逆向工程的一些不错博客
- giant和huge的区别
- DNW刷机210步骤和常见问题
- java记事本统计功能_JAVA 运用流编程实现简单的记事本功能
- 树莓派CM4开机准备开发环境
- IBM P系列小型机更换电池步骤
- strcpy与strncpy的实现
- python话费充值_【图片】话费充值解决方案(附代码)转载【开发吧】_百度贴吧...
- javascript 数组方法 slice() 的使用说明
- DevOps 面试小宝典:总有一个你会用到
- Bean 的生命周期
- 共享WIFI贴是什么?共享WIFI贴有什么作用?