• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

51单片机怎么让温度控制灯亮的个数,求思路

有花堪折 2020-12-18 浏览量:948
led时钟旁边有一圈灯,灯里面有光控,如何让温度越高,亮灯的个数越多,温度越低,亮灯的个数越少   求大佬解惑!!
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 把温度进行测量,进行ADC转换,

    把ADC的转换数据,平分成N份,一共有N个灯

    当ADC的转换结果达到某个值时,就点一个灯,再达到某个值时,再点个灯

    • 发布于 2021-01-07
    • 举报
    • 评论 0
    • 1
    • 0

其他答案 数量:6
  • 整个首先将温度读出来。然后根据温度大小用if else分区间判断,在判断的执行语句加上要实现的功能,P1=1378就可以分别亮不同数量的灯
    • 发布于2020-12-22
    • 举报
    • 评论 0
    • 1
    • 0

  • 用18b20就可以实现,单片机读取18b20温度,然后根据读取温度高低去用io驱动led就可以了
    • 发布于2020-12-18
    • 举报
    • 评论 0
    • 0
    • 0

  • 1.首先你要可以读到温度,要有测温电路和测温元件

    2.其次你要你的电路可以单独控制每个灯的个数,可以控制灯的亮灭

    3.最后根据你的逻辑来控制就好了

    • 发布于2020-12-18
    • 举报
    • 评论 0
    • 0
    • 0

  • 1.需要一个温度传感器,实现把温度转换为数值,比如18b20

    2.在单片机中实现根据温度数值去控制多个LED点亮的逻辑和输出控制(可以是直接输出(如果单片机接口富余),也可以是串行输出或者其他控制数据输出,比如3bit),比如分成若干个阀值区间,每到不同区间,输出不同的控制逻辑

    3. 对于直接控制输出,后接相应的驱动放大(需要时)就可以去控制LED啦,对于控制数据输出,后接译码器,再接相应驱动放大去控制LED。

    • 发布于2020-12-19
    • 举报
    • 评论 0
    • 0
    • 0

  • 比较简单的方法是采用温感电阻,再通过数模转换,将数值作为点亮灯的依据。这个直接用电路搭起来就行,不用编程。

    稍微麻烦一点的方法就是找一个能读温度模块,比如AS6212,转换一下,可以比较精确控制灯的个数。

    • 发布于2020-12-19
    • 举报
    • 评论 0
    • 0
    • 0

  • 接温度传感器,获取温度值,根据温度值决定要点亮几个灯
    • 发布于2020-12-22
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

51单片机怎么让温度控制灯亮的个数,求思路