应广单片机MCU的LED蜡烛发光案例, PFS154和PMS150C中的一个PWM来控制 LED 的亮度,使用一种算法生成偏向最大亮度的随机数分布

整理编辑:逐高电子技术开发部 / 日期:2025-1-17

在最近评测了低于 0.10 美元的微控制器后,是时候使用 Padauk PFS154 和 PMS150C 进行一些项目了。考虑到我之前对电子和非电子蜡烛的研究,选择这个作为最低成本微控制器的目标似乎是理所当然的。



为了简单起见,我将硬件简化为直接连接到 PA0 和 PA4 GPIO 的 LED。Padauk GPIO 的采购能力相当有限,范围从 3V 时的 4 mA 到 5 V 时的 12 mA。这意味着没有损坏直接连接到引脚而不使用电阻器的 LED 的危险。有限的驱动能力可能是由于设计人员不想在 I/O 驱动晶体管上花费太多 IC 空间。
硬件

该软件基于对闪烁 LED IC 的模拟。我使用 PFS154 和 PMS150C 中的一个 PWM 来控制 LED 的亮度。PWM 值每秒更新 30 次,使用一种算法生成偏向最大亮度的随机数分布。有关详细说明,请参阅我之前的文章。



我引入了一个 IIR 低通滤波器来稍微改善视觉效果。

lowpass = lowpass - (lowpass>>1) + (newval<<7);

如果没有低通滤波器,亮度变化看起来太突然了。我发现使用系数为 0.5 的 IIR 滤波器可以产生最佳效果(“滞后 2”)。较低的截止频率不能很好地再现“闪烁”。您可以在下面看到使用不同 IIR 滤波器设置时亮度变化的痕迹。

PFS154 的 C 代码可以在这里找到。 PMS150C 的汇编程序实现可以在这里找到。
三个 LED 蜡烛,分别带有 PFS154(左)、PMS150C(中)和闪烁 LED(右)

我将这两个版本都安装在廉价电子蜡烛的外壳中。在上面的视频中,您可以看到这两个版本的实际运行情况,并将其与基于烛光闪烁 LED 的蜡烛进行比较。

与专用的烛光闪烁 LED 相比,微控制器版本有什么优势吗?目前还没有,但仍有足够的代码空间来添加其他功能。
尝试将 LED 用作光传感器



当我最初发布这篇文章时,很快就有人建议将 LED 也用作光传感器,以便在黑暗中自动打开 LED 蜡烛。事实上,这将是一个非常好的附加功能。实际上,我从一开始就计划添加它。这就是我将 LED 的两个端子连接到 GPIO 的原因。然而,尽管花了大量时间,但我从未设法让它让我满意地工作。我最初省略了这一集,因为报告故障显然不那么有趣。我将以 Barrys 的建议为线索来总结我的发现。
 


众所周知,LED 也可以充当光电二极管(这里有一篇很好的论文)。当它们反向偏置时,入射光将产生可在端子上测量的光电流。主要的挑战是这种电流非常低,通常在正常室内照明条件下在纳安培范围内。大多数 MCU 不提供任何外围设备来测量电流,尤其是没有这么低的电流。有各种技巧和调整可以解决这个问题,这增加了使用 LED 作为光传感器的吸引力。不幸的是,网络上充斥着没有解释方法论并且经常使用可疑方法的指导。



一种比较可靠的方法是使用内部 LED 电容作为单斜率积分 ADC 中的电流积分器。实际上,这是通过首先将 LED 反向偏置充电至固定电压(例如 VDD)来实现的,让输出浮动,然后监控电荷消失需要多长时间。从 dQ=C*dV 和 dQ=Iphoto*dt 可知 Iphoto=C*dV/dt。因此,LED 中产生的光电流与电压降低到固定阈值所需的时间成反比。

我之前在各种 ATtiny 上成功使用了这种方法。由于 Padauk PFS154 有一个内部模拟比较器,我预计同样的方法也能奏效。我将比较器配置为使用内部电阻分压器作为电压参考,使用 PA4 作为输入。为了测试目的,我将比较器输出路由到 PA0,以便可以从外部对其进行监控。

mov a,#(GPCC_COMP_MINUS_VINT_R | GPCC_COMP_PLUS_PA4 | GPCC_COMP_INVERSE | GPCC_COMP_ENABLE)
mov _gpcc,a
 


上面的示波器图像显示了 LED (ch2) 和比较器输出 (ch1) 两端的电压。可以清楚地看到,在初始充电后,LED 上的电压消散,比较器在参考电平(本例中约为 2.5V)处切换。不幸的是,这已经显示出一些问题:从比较器输出到 LED 引脚存在显著的串扰,并且还存在大量噪声。比较器不会在精确的电压下切换,但会引入显著的时序 ji

应广单片机技术资料

  • 台湾应广单片机官网
  • 应广单片机例程
  • 应广单片机编程指南
  • 应广单片机定时器
  • 技术开发工具
  • 应广单片机IDE&仿真器
  • 应广单片机烧录器
  • 代码生成器
网友博客热帖:如果你喜欢使用廉价物美的微控制器,应广单片机(Padauk MCU)系列无疑将是您的最佳选择,它们拥有最强大的架构、包括闪存选项在内的广泛设备、良好的文档以及唯一具有开源工具链的产品线

网友博客热帖:如果你喜欢使用廉价物美的微控制器,应广单片机(Padauk MCU)系列无疑将是您的最佳选择,它们拥有最强大的架构、包括闪存选项在内的广泛设备、良好的文档以及唯一具有开源工具链的产品线


应广单片机PMC-APN021充电 MCU 设计使用需知,适用芯片:PMB180/PMB182/PMB183/YMB1801/YMB1805,为避免 Vbat 电压逆流至 Vcc 引脚进而产生漏电现象

应广单片机PMC-APN021充电 MCU 设计使用需知,适用芯片:PMB180/PMB182/PMB183/YMB1801/YMB1805,为避免 Vbat 电压逆流至 Vcc 引脚进而产生漏电现象


应广科技PMC-APN-017型号单片机提升 IC 在电源插拔测试下的抗干扰能力重要通知,IDE 0.91M1 后的版本将针对.Adjust_IC Macro 做优化调整

应广科技PMC-APN-017型号单片机提升 IC 在电源插拔测试下的抗干扰能力重要通知,IDE 0.91M1 后的版本将针对.Adjust_IC Macro 做优化调整


应该科技单片机PMC-APN006PMC150/153/156/166对抗电源急速波动的重要通知,遇电源急速波动(例如电源 被手动快速开关,或者是因为强烈的电源杂讯)

应该科技单片机PMC-APN006PMC150/153/156/166对抗电源急速波动的重要通知,遇电源急速波动(例如电源 被手动快速开关,或者是因为强烈的电源杂讯)


应广单片机,PMC-APN-017提升IC 在电源插拔测试下的抗干扰能力,IDE 0.91M1 后的版本将针对.Adjust_IC Macro 做优化调整,有助于提升 IC 在小部份特定 应用环境下做电源反复插拔测试时的稳定性及抗干扰能力。

应广单片机,PMC-APN-017提升IC 在电源插拔测试下的抗干扰能力,IDE 0.91M1 后的版本将针对.Adjust_IC Macro 做优化调整,有助于提升 IC 在小部份特定 应用环境下做电源反复插拔测试时的稳定性及抗干扰能力。


应广科技提醒用户在使用PMS134G系列单片机IC时避免常犯的一些错误,IO 作为数字输入时,Vih 与 Vil 的准位,会随着电压与温度变化

应广科技提醒用户在使用PMS134G系列单片机IC时避免常犯的一些错误,IO 作为数字输入时,Vih 与 Vil 的准位,会随着电压与温度变化


应广单片机烧录PMC-APN011半自动烧录机台提高烧录稳定性,应广科技烧录器操作方法说明,烧录器在烧录IC时会进行精确的相关特性校正如 IHRC…等等

应广单片机烧录PMC-APN011半自动烧录机台提高烧录稳定性,应广科技烧录器操作方法说明,烧录器在烧录IC时会进行精确的相关特性校正如 IHRC…等等


网友开发者热议应广单片机(Padauk) PMS150C 成功驱动 300个WS2812B LED,实际上只需修改8Mhz微控制器就可以做很多事情

网友开发者热议应广单片机(Padauk) PMS150C 成功驱动 300个WS2812B LED,实际上只需修改8Mhz微控制器就可以做很多事情


应广科技八核心平行处理单片机 (FPPA) 介绍,有什么优点?相信许多研发人员都有选择 MCU 的痛苦经验, 选这颗 MCU少个UART,选那颗Timer又不够,就算选好了MCU写软体才是真正痛苦

应广科技八核心平行处理单片机 (FPPA) 介绍,有什么优点?相信许多研发人员都有选择 MCU 的痛苦经验, 选这颗 MCU少个UART,选那颗Timer又不够,就算选好了MCU写软体才是真正痛苦


网友热论开发应广单片机,工业级8-bit MTPIO 类型PFC154单片机具体应广的讨论帖子,在分析了READ和WRITE后,发现:PFC154程序字=14位,但使用19位进行读/写。

网友热论开发应广单片机,工业级8-bit MTPIO 类型PFC154单片机具体应广的讨论帖子,在分析了READ和WRITE后,发现:PFC154程序字=14位,但使用19位进行读/写。


模数转换器ADC 如何工作?应广科技官网公布的PMS132/PMS132B8单片机,ADC 装进程的步骤,有 7 个寄存器需要配置

模数转换器ADC 如何工作?应广科技官网公布的PMS132/PMS132B8单片机,ADC 装进程的步骤,有 7 个寄存器需要配置


应广单片机烧录方法,PMS133/PMS134 的烧录脚为 PA3,PA4,PA5,PA6,VDD,GND 这 6 只引脚,随着烧录器版本的不同,每种封装形式烧录方法也不尽相同

应广单片机烧录方法,PMS133/PMS134 的烧录脚为 PA3,PA4,PA5,PA6,VDD,GND 这 6 只引脚,随着烧录器版本的不同,每种封装形式烧录方法也不尽相同


应广单片机YFS1224 系列12bit ADC 型 MTP MCU 带 2K-bit EEPROM,包含两个部分:PFS122B MCU,2Kbit EEPROM,是一款 12bit ADC 类型的 MTP MCU

应广单片机YFS1224 系列12bit ADC 型 MTP MCU 带 2K-bit EEPROM,包含两个部分:PFS122B MCU,2Kbit EEPROM,是一款 12bit ADC 类型的 MTP MCU


应广单片机PMB180 8 位 OTP 型单片机带充电,IC充电器使用与设定,PMB180 的充电器做电性量测V1 电压波形:(CC Mode, R1 = 10Kohm, C1 = 1uF)

应广单片机PMB180 8 位 OTP 型单片机带充电,IC充电器使用与设定,PMB180 的充电器做电性量测V1 电压波形:(CC Mode, R1 = 10Kohm, C1 = 1uF)


单片机选型指南,项目开发如可购买单片机,这里分享干货让你少找弯路,选择微控制器(MCU)的10个步骤,推荐几款常用的单片机

单片机选型指南,项目开发如可购买单片机,这里分享干货让你少找弯路,选择微控制器(MCU)的10个步骤,推荐几款常用的单片机


开发实力

专业资深的软硬件开发工程师团队,熟悉行业客户产品硬件技术平台解决方案

全球渠道

为客户提供高性价比的产品和服务,满足客户及时快速的电子生产制造需求

品质保证

专业的测试保证团队,保证每批方案的稳定性,兼容性,和抗干扰性

售后服务

专业的技术服务团队,24小时为客户提供各种软硬件的技术支持和售后服务

服务热线

0755-88364040
18902464556

义隆代理

烧录开发

技术支持

申请样品

扫描微信二维码