3.7 FreeRTOS day2

news2025/4/8 6:25:50

思维导图:

1.使用ADC采样光敏电阻数值,如何根据这个数值调节LED灯亮度。

  1. 配置ADC以读取光敏电阻的电压值,配置PWM以控制LED的亮度。
  2. 使用ADC读取光敏电阻的电压值。这个值将随着环境光线的变化而变化。
  3. 将ADC读取的原始值映射到一个更易于处理的范围,例如0-255。根据需要应用任何平滑或滤波算法,以减少噪声或突变的影响。
  4. 使用映射后的光敏电阻值作为PWM的占空比,从而控制LED的亮度。当光敏电阻值增加(即环境光线更亮)时,降低PWM占空比以减小LED亮度。当光敏电阻值减小(即环境光线更暗)时,增加PWM占空比以增加LED亮度。
  5. 在一个循环中不断重复读取光敏电阻值和调节LED亮度。
int adc_val;//用于保存ADC采样的数据
float britns;
while(1)
{
	HAL_ADC_Start(&hadc);//开启ADC采样
    adc_val = HAL_ADC_GetValue(&hadc);//获取ADC的采样数值
    britns = adc_val / 4095.0f * 3.3f;//转换为小数
    printf("adc_val : %d\r\n", adc_val);
    printf("britns : %f\r\n", britns);
    HAL_Delay(1000);
	if(adc_val>500)
	{
		TIM3->CCR3 = 50;//控制第三个通道CCR3
	}
	else if(adc_val<500)
	{
		
		TIM3->CCR3 = 80;
	}
}

2.总结DMA+空闲中断接收数据的使用方法

  1. 初始化DMA通道:将UART(通用异步收发器)的接收数据寄存器设置为DMA的源地址,而一个缓冲区则设置为DMA的目的地址。设置DMA的传输长度为缓冲区的大小。
  2. 配置UART的空闲中断:当UART在一段时间内没有再次接收到数据时,会触发空闲中断。这种中断模式特别适用于接收任意长度的数据帧。
  3. 启动DMA传输:在UART开始接收数据之前,先启动DMA传输。这样,当UART接收到数据时,DMA会自动将数据传输到之前设置的缓冲区中。
  4. 启动UART接收数据:在DMA传输开始后,启动UART的数据接收。每当UART接收到数据时,DMA会自动进行数据传输,并在传输完成后设置相应的标志位。
  5. 在中断处理函数中处理数据:当空闲中断被触发时,中断处理函数会检查DMA传输完成的标志位,并将DMA传输的数据从缓冲区中取出进行处理。

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

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

相关文章

基于pytest的证券清算系统功能测试工具开发

需求 1.造测试数据&#xff1a;根据测试需要&#xff0c;自动化构造各业务场景的中登清算数据与清算所需起来数据 2.测试清算系统功能&#xff1a; 自动化测试方案 工具设计 工具框架图 工具流程图 实现技术 python, pytest, allure, 多进程&#xff0c;mysql, 前端 效果 测…

Git误操作补救错失:恢复误删的本地分支、将某个提交从一个分支复制到另一个分支

一、恢复误删的本地分支 作为一枚强迫症&#xff0c;没用的分支总是喜欢及时删删删删掉删掉统统删掉&#xff0c;结果今天发现有些分支还是应该保留。 比如&#xff0c;①前段时间切了个分支用来专门做图表&#xff0c;但因为需求还没有最终确定&#xff0c;已经上线了测试服而…

异地组网需要几个固定IP?

异地组网指的是在不同地区的终端设备之间建立起稳定的网络连接&#xff0c;以实现信息的远程传输和通信。在进行异地组网时&#xff0c;需要固定IP地址来确保网络连接的稳定性和可靠性。本文将介绍异地组网的基本概念和必要性&#xff0c;并探讨在这一过程中需要使用的固定IP的…

pytorch标准化与模型训练推理以及中间层注意点

1.图像归一化和通道转换操作 a np.arange(3*3*3).reshape(3,3,3).astype(np.uint8) print(a) function transforms.ToTensor()#注意只能转换3维度的ndarray或者PIL的Image类型 c function(a) print(c) D:\anaconda3\python.exe E:\test\pythonProject\test.py [[[ 0 1 2…

智慧灯杆-智慧城市照明现状分析(2)

作为城市照明的主体,城市道路照明伴随着我国城市建设的高速发展,获得了快速的增长。国家统计局数据显示,从2004年至2014年,我国城市道路照明灯数量由1053.15万盏增加到3000万盏以上,年均复合增长率超过11%,城市道路照明行业保持持续快速发展的趋势。 近几年,随着中国路灯…

二维码门楼牌管理系统应用场景:数据管理的智慧新选择

文章目录 前言一、数据管理部门的智慧工具二、助力决策制定与优质服务提供三、二维码门楼牌管理系统的优势四、展望未来 前言 随着科技的飞速发展&#xff0c;二维码门楼牌管理系统正逐渐成为城市管理的智慧新选择。该系统不仅提升了数据管理效率&#xff0c;还为政府和企业提…

黑马点评-分布式锁业务

分布式锁原理和实现 分布式系统部署了多个tomcat&#xff0c;每个tomcat都有一个属于自己的jvm&#xff0c;那么假设在服务器A的tomcat内部&#xff0c;有两个线程&#xff0c;这两个线程由于使用的是同一份代码&#xff0c;那么他们的锁对象是同一个&#xff0c;是可以实现互…

【Proteus仿真】【STM32单片机】井盖安全检测装置设计

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真STM32单片机控制器&#xff0c;使用LCD1602液晶显示模块、WIFI模块、蜂鸣器、LED按键、ADC PCF8591、角度/可燃气检测传感器等。 主要功能&#xff1a; 系统运行后&#xff0c;LC…

鸿蒙ArkTS语言快速入门-TS(一)

ArkTS与TS的学习 ArkTS与TS的关系简述TypeScript&#xff08;TS&#xff09;简述基础类型1&#xff0c;let2&#xff0c;const3&#xff0c;布尔类型4&#xff0c;数字number5&#xff0c;字符串string6&#xff0c;数组Array7&#xff0c;元组 Tuple8&#xff0c;枚举 enum9&a…

CentOS7.9基于Apache2.4+Php7.4+Mysql8.0架构部署Zabbix6.0LTS 亲测验证完美通过方案

前言: Zabbix 由 Alexei Vladishev 创建,目前由 Zabbix SIA 主导开发和支持。 Zabbix 是一个企业级的开源分布式监控解决方案。 Zabbix 是一款监控网络的众多参数以及服务器、虚拟机、应用程序、服务、数据库、网站、云等的健康和完整性的软件。 Zabbix 使用灵活的通知机制,…

Vue中项目使用debugger,浏览器无效!

现象&#xff1a;下载了别的项目&#xff0c;启动之后&#xff0c;打了debugger&#xff0c;结果浏览器居然忽视&#xff0c;直接过去。打一堆日志&#xff0c;太麻烦了。 解决方案 第一步 F12打开浏览器调试器&#xff0c;找到设置 第二步 如果是英文的&#xff0c;找这…

自定义协议清理后,浏览器还一直弹出匹配提示用户新应用打开问题

问题 这段时间出现了自定义协议清理异常的问题。在一台电脑上&#xff0c;用chrome&#xff0c;一直出现问题&#xff0c;自定义协议可能存在了缓存或者其他内容。导致一直重复的弹出ms-store打开新应用的奇怪问题。 后来 第一步&#xff1a; 清理注册表&#xff0c;把注册…

Spring Boot异常处理和单元测试

1.SpringBoot异常处理 1.1.自定义错误页面 SpringBoot默认的处理异常的机制&#xff1a;SpringBoot 默认的已经提供了一套处理异常的机制。一旦程序中出现了异常 SpringBoot 会向/error 的 url 发送请求。在 springBoot 中提供了一个叫 BasicErrorController 来处理/error 请…

natfrp和FRP配置SSL的基本步骤和bug排查

获取免费/付费SSL 我直接买了一年的ssl证书 设置 主要参考&#xff1a;https://doc.natfrp.com/frpc/ssl.html 遇到的Bug root域名解析是ALIAS&#xff0c;不是CNAME

详细分析Python字典合并的五种方法(附Demo)

目录 前言1. 字典拼接2. {**dict1, **dict2}3. dict.update()4. collections.ChainMap5. collections.defaultdict6. 彩蛋&#xff08;不覆盖合并&#xff09; 前言 从项目中了解到这个函数&#xff1a;res {**res, **tmp}&#xff0c;也知道是字典的合并&#xff0c;且遇到相…

WordPress建站入门教程:如何上传安装WordPress主题?

我们成功搭建WordPress网站后&#xff0c;默认使用的是自带的最新主题&#xff0c;但是这个是国外主题&#xff0c;可能会引用一些国外的资源文件&#xff0c;所以为了让我们的WordPress网站访问速度更快&#xff0c;强烈建议大家使用国产优秀的WordPress主题。 今天boke112百…

msfconsole数据库连接不了的问题【已解决】

msfconsole数据库连接 1.msf数据库端口 msf使用的是postgresql&#xff0c;这个数据库默认端口是5432 单个模块的使用可以不需要数据库&#xff0c;但是模块与模块之间需要沟通的时候就会用到数据库。 2.查看msf数据库连接状态 db_status #msf内部查看systemctl status p…

Windows系统安装MongoDB并结合内网穿透实现公网访问本地数据库

文章目录 前言1. 安装数据库2. 内网穿透2.1 安装cpolar内网穿透2.2 创建隧道映射2.3 测试随机公网地址远程连接 3. 配置固定TCP端口地址3.1 保留一个固定的公网TCP端口地址3.2 配置固定公网TCP端口地址3.3 测试固定地址公网远程访问 前言 MongoDB是一个基于分布式文件存储的数…

24 Linux PWM 驱动

一、PWM 驱动简介 其实在 stm32 中我们就学过了 PWM&#xff0c;这里就是再复习一下。PWM&#xff08;Pulse Width Modulation&#xff09;&#xff0c;称为脉宽调制&#xff0c;PWM 信号图如下&#xff1a; PWM 最关键的两个参数&#xff1a;频率和占空比。 频率是指单位时间内…

【易飞】易飞ERP自动审核程序功能

易飞ERP自动审核程序功能 一、 使用场景二、 操作说明三、 安装方式 一、 使用场景 OA系统集成 与第三方OA系统软件集成&#xff0c;在OA软件审核完成后&#xff0c;直接将ERP中的单据审核。MES系统集成 MES系统生成单据写入到易飞ERP中&#xff0c;并需要自动审核单据&#x…