简单话题:LED呼吸灯和串口LED指示灯
最近在串口发送引脚上接LED指示发送或者接收状态,但是需求是希望连续发送或者接收字符过程中LED闪烁,而不是保持在一个常量或者常灭的状态。首先,把实际电路图和串口时序贴出来:
可以看出串口发送接收空闲态为高电平,只要进行数据发送就一定会产生低电平,利用低电平点亮LED,再利用高电平熄灭。
但是在实际操作中发现大于2500bps,连续发送数据的时候灯是不会闪烁的,会保持一个常量的状态,只是亮度会随数据内容不同而变化,这就牵涉到 LED 点亮的一个时间问题了。LED点亮熄灭到再次点亮是需要一定时间间隔的,一般常见的在 4.x ms,这里以4ms举例,也就是说如果点亮led,熄灭,下次点亮,只有这个熄灭的时间超过4ms,才可以看出闪烁,否则看起来就像是常亮的。既然有这个要求,就和波特率有一定关系了,我们按照极端情况来考虑,发送字符为0xFF的情况,那么只有起始位是一个低电平,按照4ms发送一个字符(10bit)来计算,此时波特率为2500bps。这就表明大于2500波特率的时候,无论连续发送什么数据,灯都是不会闪烁的。
好了,确定灯目前处于一个常亮状态了,那么现在的问题是为什么灯亮度会不略有变化,做一个测试,发送连续十六进制,会发现这个十六进制数中的为0的bit越多,灯就越亮。说道这里,那就是 PWM 呼吸灯一个原理啦。实际上都是较快频率控制LED亮灭,值得注意的是不少人认为是亮灭太快,导致肉眼观察不出,这个说法有点牵强,我以前也是跟着这个想法走,实际上 LED 根本没有不停亮灭,根据我前面说的LED点亮的间隔可以得知,所以灯一直是亮的,亮度发声变化是由于LED两端的电压差发生了变化。以PWM举例,高频率的周期变化的0和1电平,也就是占空比对应到模拟信号上也就成了转换电压,拿5V举例,占空比百分之50,那么实际输出平均电压就是2.5V,但是为什么要平均呢?这就是数字信号和模拟信号的区别了,我们控制的是数字信号,而实际起作用的要转换成模拟信号了。
综上,低频是亮灭效果,因为可以满足led点亮间隔要求,高频就是不同亮度的常亮效果了,原因如上。
简单话题:LED呼吸灯和串口LED指示灯相关推荐
- 使用TIM3和TIM4,驱动外接LED和STM32上已焊接的LED,实现2个 LED呼吸灯的效果
文章目录 一.PWM相关介绍 1.PWM的含义 2.PWM的基本原理 3.PWM的优点及应用范围 4.STM32上的PWM 5.PWM相关寄存器 6.PWM脉冲宽度调制 7.PWM的频率 二.实现呼吸 ...
- STM32输出PWM波形以及实现LED呼吸灯
目录 一.PWM的简介 1.PWM的定义 2.PWM的优点 3.PWM的几种控制方法 (1)等脉宽PWM法 (2)随机PWM (3)SPWM法 4.PWM的主要参数 (1)PWM占空比 (2)PWM的 ...
- STM32F103C8T6核心开发板下,通过TIM3和TIM4输出PWM波形实现2个 LED呼吸灯的效果
使用TIM3和TIM4,分别输出一个PWM波形,驱动一个外接的LED灯以及最小开发板上已焊接的LED(固定接在 PC13 GPIO端口),实现2个 LED呼吸灯的效果 文章目录 使用TIM3和TIM4 ...
- 小熊派gd32f303学习之旅(7)—使用PWM实现LED呼吸灯
小熊派gd32f303学习之旅(7)-使用PWM实现LED呼吸灯 一.前言 通过查看gd32f30x的参考手册,可以知道gd32f303的通用定时器和高级定时器可以硬件生成PWM波,然后我们查看gd3 ...
- 使用STM32输出PWM波形LED呼吸灯的效果
文章目录 前言 一.PWM简介 1.1 关于PWM 1.2 使用步骤 二.使用STM32CUBEMX实现2个 LED呼吸灯的效果 2.1.配置环境 2.2 代码配置 2.3.输出PWM波形 2.4 呼 ...
- STM32输出PWM波形及LED呼吸灯
目录 一.PWM的介绍 1.概述 2.优点 3.主要产生方法 SPWM法 1.等面积法 2.硬件调制法 3.软件生成法 4.PWM电路图 5.PWM基本原理 二.cubemx项目的建立 1.选择芯片S ...
- 嵌入式——使用定时器输出PWM波形,实现 LED呼吸灯的效果
一.实验要求: 使用TIM3和TIM4,分别输出一个PWM波形,PWM的占空比随时间变化,去驱动你外接的一个LED以及最小开发板上已焊接的LED(固定接在 PC13 GPIO端口),实现2个 LED呼 ...
- ESP32 Arduino开发之路(2)— 使用PWM实现LED呼吸灯
ESP32 Arduino开发之路(2)- 使用PWM实现LED呼吸灯 一.前言 在ESP32上有一个LEDC外设模块专用于输出PWM波形,其介绍如下所示: 参考文章:在 ESP32 上使用 LEDC ...
- 利用PWM实现LED呼吸灯
一.实验目的 本实验使用TIM3和TIM4,分别输出一个PWM波形,PWM的占空比随时间变化,去驱动你外接的一个LED以及最小开发板上已焊接的LED(固定接在 PC13 GPIO端口),实现2个 LE ...
最新文章
- React 项目----内联样式style的使用 (12)
- 一些变态的PHP一句话后门收集
- 【转】刨根究底字符编码之二——关键术语解释(下)
- 和渠道商成为真朋友,CDEC大会做对了什么?
- 信息学奥赛一本通 2073:【例2.16 】三角形面积
- Selector#wakeup()
- apache php 整合 linux,apache集成php5.6方法分享
- 通俗易懂的数学建模示例(一)
- Java中类与对象的定义与使用
- CPA、CPS、CPC、CPM推广是什么意思
- python哪个字体好看_Python实现对比不同字体中的同一字符的显示效果
- html调整背景页面的大小,css如何设置背景图片大小
- 模拟扑克牌大小软件_扑克与软件工程
- 实现Torchlight(火炬之光)的背包UI效果
- 【Vue3.0 + Element-plus】el-tree树状结构节点前箭头样式修改
- 没有密码,如何清除PPT的限制编辑?
- 百度沈抖:建设新型基础设施,让中小企业尝到数字化的甜头
- 如何利用 DITA 实现高效的跨部门内容共享?
- 个性化新闻项目之设计和简介
- 袖珍拾遗(转贴来源于流水无声)