Stm32_标准库_7_光敏传感器

news2024/11/24 16:03:40

在这里插入图片描述
AO端口:通俗的讲大概是根据环境亮度的不同导致电阻的阻值不同,最后AO口输出的模拟量也不同,这个端口是用来测量环境光照的具体强度

DO端口:光敏电阻默认设置了一个阈值,当光照强度高于这个阈值本端口输出低电平,低于这个阈值输出高电平

VCC:正极 GND:负极

测试DO端口代码:

#include "stm32f10x.h"    // Device header
#include "Delay.h"
#include "OLED.h"
 
GPIO_InitTypeDef GPIOBInit;

void LightSensor_Init(void){//初始化光敏电阻
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);//开启GPIOB时钟
	GPIOBInit.GPIO_Mode = GPIO_Mode_IPU;//上拉输入
	GPIOBInit.GPIO_Pin = GPIO_Pin_13;
	GPIOBInit.GPIO_Speed = GPIO_Speed_50MHz;
	GPIO_Init(GPIOB, &GPIOBInit);
}

uint8_t LightSensor_Get(void){
	return GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_13);//读取电平
}
int main(void){
	uint8_t count = 0;
	OLED_Init();//初始化OLED
	OLED_ShowChar(1, 2, 'A');
	LightSensor_Init();
	OLED_ShowString(1, 4, "hello");
	 
	while(1){
       if(LightSensor_Get() == 1){//如果光线比较暗
				 count = count + 1;
				 OLED_ShowNum(2, 2, count, 3);
				 Delay_ms(100);
			 }
	}
}

效果:
在这里插入图片描述
环境光线较暗那么OLED显示屏第二行数字会随时间推移计数

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1069129.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C#使用ICSharpCode.TextEditor制作代码编辑器

效果 类似于vs里的代码风格 准备工作 1 创建Winform项目 2 NuGet下载ICSharpCode.TextEditor 显示控件ICSharpCode.TextEditor 将Debug目录下的ICSharpCode.TextEditor.dll,通过工具栏显示控件,并拖拽到Form窗口代码 1 Form 代码 using System; using S

Midjourney第四篇:9大风格头像

获取图像生成提示词(咒语),公众号:科技探幽,回复“mid”,获取详细教程 迪士尼风格 关键词:art by disney ,Disney style,3d character from Disney 皮克斯风格 关键词:art by pix…

跟着播客学英语-Why I use vim ? part one.

why-use-vim-01.png 最近这段时间在学英语,在网上看到有网友推荐可以听英文播客提高听力水平。 正好我自己也有听播客的习惯,只不过几乎都是中文,但现在我已经尝试听了一段时间的英文播客,觉得效果还不错。 大部分都是和 IT 相关的…

MyBatis(JavaEE进阶系列4)

目录 前言: 1.MyBatis是什么 2.为什么要学习MyBatis框架 3.MyBatis框架的搭建 3.1添加MyBatis框架 3.2设置MyBatis配置 4.根据MyBatis写法完成数据库的操作 5.MyBatis里面的增删改查操作 5.1插入语句 5.2修改语句 5.3delete语句 5.4查询语句 5.5like查…

【广州华锐互动】动物解剖学AR互动学习平台

增强现实(AR)是一种将虚拟信息叠加到现实世界中的技术。通过智能手机、平板电脑或AR眼镜等设备,AR技术可以创建出逼真的虚拟物体,这些物体可以与现实世界的环境相互交互。 AR技术在教育领域的应用非常广泛,包括历史、科…

【redis学习笔记】分布式锁

什么是分布式锁 以往的锁都是只能在当前进程中⽣效, 在分布式的这 种多个进程多个主机的场景下就⽆能为⼒了。 因此提供分布式锁,加锁就是往redis上设置一个特殊的key:value,完成操作后,释放锁就是删除这个key:value;其他服务器尝…

数据结构——多重链表的实现

//多重列表的实现 #include<stdio.h> #include<stdlib.h> struct lnode {int row,col,value; }; //没有用到down指针 //没有用到tag和next指针 typedef struct node {int tag;//区分头结点(0)和非零元素结点(1)struct node* right;struct node* down;//共用体与结…

达梦数据库 视图 错误 [22003]: 数据溢出

今天通过DBeaver连接访问达梦数据库的一个视图&#xff0c;报错&#xff1a;错误 [22003]: 数据溢出 经过分析&#xff0c;原因是视图字段的数据类型和原表的数据类型不一致造成的

加密密钥应用范围及特点优势分析

加密密钥是一种用于保护数据和信息安全的重要工具。它通过在数据传输和存储过程中对数据进行加密&#xff0c;使得未经授权的人无法访问和解读数据。加密密钥的应用范围广泛&#xff0c;包括网络通信、电子商务、金融交易、数据存储等领域。安策将对加密密钥的应用范围和特点优…

AP2400 LED电源驱动 降压恒流IC 机场灯 指示灯 交通照明灯

产品描述 AP2400 是一款 PWM 工作模式,高效率、外围简单、外驱功率管&#xff0c;适用于 5-100V输入的高精度降压 LED 恒流驱动芯片。外驱 MOS&#xff0c;最大输出电流可达 6A。AP2400 可实现三段功能切换&#xff0c;通过MODE1/2/3 切换三种功能模式&#xff1a;全亮&#xf…

PyQt5配置踩坑

安装步骤比较简单&#xff0c;这里只说一下我踩的坑&#xff0c;以及希望一些大佬可以给点建议。 一、QtDesigner 这个配置比较简单&#xff0c;直接就能用&#xff0c;我的配置如下图&#xff1a; C:\Users\lenovo\AppData\Roaming\Python\Python311\site-packages\qt5_app…

数据结构——排序算法(C语言)

本篇将详细讲一下以下排序算法&#xff1a; 直接插入排序希尔排序选择排序快速排序归并排序计数排序 排序的概念 排序&#xff1a;所谓排序&#xff0c;就是使一串记录&#xff0c;按照其中的某个或某写关键字的大小&#xff0c;按照递增或递减0排列起来的操作。 稳定性的概念…

海外网红营销:打造热门短视频的秘诀

在当今数字化时代&#xff0c;短视频已成为社交媒体上最热门的内容形式之一。无论是TikTok、Instagram、YouTube还是其他平台&#xff0c;短视频都吸引了海内外网红和品牌的注意。本文将详细探讨海外网红营销中如何打造爆款短视频&#xff0c;以便帮助品牌在竞争激烈的市场中脱…

一些常见分布-正态分布、对数正态分布、伽马分布、卡方分布、t分布、F分布等

目录 正态分布 对数正态分布 伽马分布 伽马函数 贝塔函数 伽马分布 卡方分布 F分布 t分布 附录 参考文献 本文主要介绍一些常见的分布&#xff0c;包括正态分布、对数正态分布、伽马分布、卡方分布、F分布、t分布。给出了分布的定义&#xff0c;推导了概率密度函数&…

Python实现JavaScript中AES加密有关填充问题

1. 先展示一下JS端的格式&#xff08;没找到没混淆的。。。&#xff0c;将就看吧&#xff09; 2. 在python加密中是没有选择填充模式的&#xff0c;需要自己来填充 3. 对加密不懂的朋友可能跟我一样刚开始很懵逼&#xff0c;因为遇到的基本都是pksc7填充模式&#xff0c;但是网…

解析图片文件格式

图片文件幻数 关于JPEG格式 二进制形式打开文件&#xff0c;文件开始字节为FF D8&#xff0c;文件结束两字节为FF D9 JPEG 文件有两种不同的元数据格式&#xff1a;JFIF 和 EXIF。 JFIF 以 ff d8 ff e0 开头&#xff0c;EXIF 以 ff d8 ff e1 开头。 代码示例 private static…

Visual Studio自定义模板参数、备注

模板路径&#xff1a; VS2022 x64&#xff1a;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\ItemTemplatesVS2022 x86&#xff1a;C:\Program Files (x86)\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\ItemTemplates 一、声明和启用模板…

六、循环表达式

6.1 循环表达式语法 thymeleaf使用th:each属性可以对数组&#xff0c;集合进行循环&#xff0c;此属性用在容器元素上&#xff0c;循环生成子元素。 语法 th:each"循环出的元素 , 循环状态 : 集合或数组" .6.2、数组的循环 示例 在TestServlet中定义一个数组 …

Vue中如何进行自定义动画与动画效果设计(如CSS动画、Web动画)

当我们构建现代的Web应用程序时&#xff0c;动画和过渡效果变得越来越重要。它们可以增强用户体验&#xff0c;使用户界面更具吸引力&#xff0c;并帮助用户更好地理解应用程序的功能。Vue.js是一个流行的JavaScript框架&#xff0c;它提供了许多强大的工具和功能&#xff0c;使…

大数据技术标准推进委员会发布《地球大数据白皮书(2023年)》

导读 地球大数据的应用领域范围广阔&#xff0c;包括生态保护、自然资源管理、气象服务、城市规划、应急容灾等方面&#xff0c;但目前仍处于发展初期&#xff0c;面临着数据来源、结构多样&#xff0c;数据管理门槛高&#xff0c;数据应用场景复杂、落地方法论较少等痛点。如…